12.3. 감사 로그 필터링
				jq 또는 다른 JSON 구문 분석 툴을 사용하여 API 서버 감사 로그를 필터링할 수 있습니다.
			
설정된 감사 로그 정책에 의해 API 서버 감사 로그에 기록되는 정보의 양을 제어할 수 있습니다.
				다음 절차에서는 jq를 사용하여 컨트롤 플레인 노드node-1.example.com에서 감사 로그를 필터링하는 예를 제공합니다. jq를 사용하는 방법에 대한 자세한 내요ㅇ은 jq 설명서를 참조하십시오.
			
사전 요구 사항
- 
						
cluster-admin역할의 사용자로 클러스터에 액세스할 수 있어야 합니다. - 
						
jq를 설치했습니다. 
프로세스
사용자가 OpenShift API 서버 감사 로그를 필터링합니다.
oc adm node-logs node-1.example.com \ --path=openshift-apiserver/audit.log \ | jq 'select(.user.username == "myusername")'
$ oc adm node-logs node-1.example.com \ --path=openshift-apiserver/audit.log \ | jq 'select(.user.username == "myusername")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 사용자 에이전트가 OpenShift API 서버 감사 로그를 필터링합니다.
oc adm node-logs node-1.example.com \ --path=openshift-apiserver/audit.log \ | jq 'select(.userAgent == "cluster-version-operator/v0.0.0 (linux/amd64) kubernetes/$Format")'
$ oc adm node-logs node-1.example.com \ --path=openshift-apiserver/audit.log \ | jq 'select(.userAgent == "cluster-version-operator/v0.0.0 (linux/amd64) kubernetes/$Format")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 특정 API 버전 별로 Kubernetes API 서버 감사 로그를 필터링하고 사용자 에이전트만 출력합니다.
oc adm node-logs node-1.example.com \ --path=kube-apiserver/audit.log \ | jq 'select(.requestURI | startswith("/apis/apiextensions.k8s.io/v1beta1")) | .userAgent'$ oc adm node-logs node-1.example.com \ --path=kube-apiserver/audit.log \ | jq 'select(.requestURI | startswith("/apis/apiextensions.k8s.io/v1beta1")) | .userAgent'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 동사 제외하여 OpenShift OAuth API 서버 감사 로그를 필터링합니다.
oc adm node-logs node-1.example.com \ --path=oauth-apiserver/audit.log \ | jq 'select(.verb != "get")'
$ oc adm node-logs node-1.example.com \ --path=oauth-apiserver/audit.log \ | jq 'select(.verb != "get")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 사용자 이름을 식별했지만 오류로 인해 실패한 이벤트별로 OpenShift OAuth 서버 감사 로그를 필터링합니다.
oc adm node-logs node-1.example.com \ --path=oauth-server/audit.log \ | jq 'select(.annotations["authentication.openshift.io/username"] != null and .annotations["authentication.openshift.io/decision"] == "error")'
$ oc adm node-logs node-1.example.com \ --path=oauth-server/audit.log \ | jq 'select(.annotations["authentication.openshift.io/username"] != null and .annotations["authentication.openshift.io/decision"] == "error")'Copy to Clipboard Copied! Toggle word wrap Toggle overflow