감사 로그 소스 |
|
감사 대상 작업 |
모니터링 인스턴스의 사용자 인터페이스를 사용하여 PromQL 쿼리 실행
감사 로그 소스 |
프록시 서버 |
로그 유형 |
데이터 영역 |
감사 정보가 포함된 로그 항목의 필드 | ||
---|---|---|
감사 메타데이터 | 감사 필드 이름 | 값 |
사용자 또는 서비스 ID | user |
예를 들면 다음과 같습니다. "user":{ "identity":"fop-cluster-admin@example.com", "issuer":"https://ais-core.org-1.zone1.google.gdch.test" } |
대상 (API를 호출하는 필드 및 값) |
resource |
예를 들면 다음과 같습니다.
|
작업 (실행된 작업을 포함하는 필드) |
action |
가능한 값은 다음과 같습니다.
|
이벤트 타임스탬프 |
time
|
예를 들면 다음과 같습니다.
|
작업 소스 |
|
예를 들면 다음과 같습니다. "sourceIPs":[ "10.253.166.214", "127.0.0.6" ], "_gdch_service_name":"grafana" |
결과 | response |
예를 들면 다음과 같습니다.
|
기타 필드 | description |
description 값에는 전체 쿼리가 포함됩니다. 자세한 내용은 로그 예시를 참고하세요. |
예시 로그
{
"resource":"/infra-obs/grafana/api/ds/query",
"response":"Successful: 200 OK",
"_gdch_service_tenant":"infra-obs",
"sourceIPs":[
"10.253.166.214",
"127.0.0.6"
],
"_gdch_namespace":"infra-obs-obs-system",
"userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:107.0) Gecko/20100101 Firefox/107.0",
"time":"2022-12-05T14:39:15.713354008Z",
"auditID":"6bba5ff1-97d9-4bf8-92af-4f63049448cf",
"numBytesSent":1821,
"action":"QUERY",
"_gdch_service_name":"grafana",
"numBytesReceived":2827,
"description":"{
\"queries\":[{
\"refId\":\"A\",
\"expr\":\"{container=\\\"grafana-proxy-server\\\"},
\"queryType\":\"range\",
\"datasource\":{\"uid\":\"P982945308D3682D1\",\"type\":\"loki\"},
\"key\":\"Q-c63373da-dec2-49c3-aa6c-4e5ba07ec8de-0\",
\"editorMode\":\"builder\",
\"maxLines\":1000,
\"legendFormat\":\"\",
\"datasourceId\":2,
\"intervalMs\":1000,
\"maxDataPoints\":2493
}],
\"range\":{
\"from\":\"2022-12-05T13:39:15.461Z\",
\"to\":\"2022-12-05T14:39:15.461Z\",
\"raw\":{\"from\":\"now-1h\",\"to\":\"now\"}
},
\"from\":\"1670247555461\",
\"to\":\"1670251155461\"
}",
"user":{
"identity":"fop-cluster-admin@example.com",
"issuer":"https://ais-core.org-1.zone1.google.gdch.test"
},
"_gdch_cluster":"org-1-admin",
"_gdch_fluentbit_pod":"anthos-audit-logs-forwarder-whltm"
}
HTTP API를 사용하여 PromQL 쿼리 실행
감사 로그 소스 |
프록시 서버 |
로그 유형 |
데이터 영역 |
감사 정보가 포함된 로그 항목의 필드 | ||
---|---|---|
감사 메타데이터 | 감사 필드 이름 | 값 |
사용자 또는 서비스 ID | user |
예를 들면 다음과 같습니다. "user":{ "issuer":"https://ais-core.org-1.zone1.google.gdch.test", "identity":"fop-cluster-admin@example.com" } |
대상 (API를 호출하는 필드 및 값) |
resource |
예를 들면 다음과 같습니다.
|
작업 (실행된 작업을 포함하는 필드) |
action |
가능한 값은 다음과 같습니다.
|
이벤트 타임스탬프 |
time
|
예를 들면 다음과 같습니다.
|
작업 소스 |
|
예를 들면 다음과 같습니다. "sourceIPs":[ "10.200.0.1", "127.0.0.6" ], "_gdch_service_name":"cortex" |
결과 | response |
예를 들면 다음과 같습니다.
|
기타 필드 | 해당 없음 | 해당 없음 |
예시 로그
{
"user":{
"issuer":"https://ais-core.org-1.zone1.google.gdch.test",
"identity":"fop-cluster-admin@example.com"
},
"_gdch_service_tenant":"infra-obs",
"_gdch_service_name":"cortex",
"resource":"/alertmanager/api/v2/alerts/groups?silenced=false&inhibited=false&active=true",
"time":"2022-12-05T18:20:50.616925009Z",
"action":"READ",
"numBytesReceived":2376,
"sourceIPs":[
"10.200.0.1",
"127.0.0.6"
],
"_gdch_namespace":"obs-system",
"userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:107.0) Gecko/20100101 Firefox/107.0",
"numBytesSent":173,
"auditID":"8451a7b3-77f9-4878-9308-641b55a83865",
"response":"Successful: 200 OK",
"_gdch_cluster":"org-1-admin",
"_gdch_fluentbit_pod":"anthos-audit-logs-forwarder-2wqxp"
}
대시보드 CRUD 작업 실행
감사 로그 소스 | |
로그 유형 |
제어 영역 |
감사 정보가 포함된 로그 항목의 필드 | ||
---|---|---|
감사 메타데이터 | 감사 필드 이름 | 값 |
사용자 또는 서비스 ID | user |
예를 들면 다음과 같습니다. "user":{ "extra":{ "authentication.kubernetes.io/pod-name":["fleet-admin-controller-875778d98-dnkj2"], "authentication.kubernetes.io/pod-uid":["caa4df7a-ae04-458e-a616-1c6893ce6e46"] }, "username":"system:serviceaccount:gpc-system:fleet-admin-controller", "groups":[ "system:serviceaccounts", "system:serviceaccounts:gpc-system", "system:authenticated" ], "uid":"0b93d757-e3be-440a-b18a-4a2b524de156" } |
대상 (API를 호출하는 필드 및 값) |
|
예를 들면 다음과 같습니다. "requestURI":"/apis/observability.gdc.goog/v1/namespaces/alice-obs-system/dashboards", "objectRef":{ "apiVersion":"v1", "apiGroup":"observability.gdc.goog", "resource":"dashboards", "namespace":"alice-obs-system" } |
작업 (실행된 작업을 포함하는 필드) |
verb |
가능한 값은 다음과 같습니다.
|
이벤트 타임스탬프 |
requestReceivedTimestamp
|
예를 들면 다음과 같습니다.
|
작업 소스 |
|
예를 들면 다음과 같습니다. "sourceIPs":["10.253.166.100"], "_gdch_service_name":"apiserver" |
결과 | responseStatus |
예를 들면 다음과 같습니다. "responseStatus":{ "code":201, "metadata":{} } |
기타 필드 | 해당 없음 | 해당 없음 |
예시 로그
{
"user":{
"extra":{
"authentication.kubernetes.io/pod-name":["fleet-admin-controller-875778d98-dnkj2"],
"authentication.kubernetes.io/pod-uid":["caa4df7a-ae04-458e-a616-1c6893ce6e46"]
},
"username":"system:serviceaccount:gpc-system:fleet-admin-controller",
"groups":[
"system:serviceaccounts",
"system:serviceaccounts:gpc-system",
"system:authenticated"
],
"uid":"0b93d757-e3be-440a-b18a-4a2b524de156"
},
"kind":"Event",
"_gdch_fluentbit_pod":"anthos-audit-logs-forwarder-2wqxp",
"apiVersion":"audit.k8s.io/v1",
"_gdch_cluster":"org-1-admin",
"level":"Metadata",
"stageTimestamp":"2022-12-05T15:36:24.980257Z",
"auditID":"a060d80a-4a47-4490-a859-5d3ccff36d3d",
"requestReceivedTimestamp":"2022-12-05T15:36:24.980257Z",
"userAgent":"fleet-admin-cm/v0.0.0 (linux/amd64) kubernetes/$Format",
"stage":"RequestReceived",
"requestURI":"/apis/observability.gdc.goog/v1/namespaces/alice-obs-system/dashboards",
"objectRef":{
"apiVersion":"v1",
"apiGroup":"observability.gdc.goog",
"resource":"dashboards",
"namespace":"alice-obs-system"
},
"verb":"create",
"sourceIPs":["10.253.166.100"],
"_gdch_service_name":"apiserver"
}
알림 CRUD 작업 실행
감사 로그 소스 | |
로그 유형 |
제어 영역 |
감사 정보가 포함된 로그 항목의 필드 | ||
---|---|---|
감사 메타데이터 | 감사 필드 이름 | 값 |
사용자 또는 서비스 ID | user |
예를 들면 다음과 같습니다. "user":{ "username":"kubernetes-admin", "groups":[ "system:masters", "system:authenticated" ] } |
대상 (API를 호출하는 필드 및 값) |
|
예를 들면 다음과 같습니다. "requestURI":"/apis/monitoring.gdc.goog/v1/namespaces/alice/monitoringrules?fieldManager=kubectl-client-side-apply&fieldValidation=Strict", "objectRef":{ "apiVersion":"v1", "apiGroup":"monitoring.gdc.goog", "name":"obs-test-alert-sequel", "namespace":"alice", "resource":"monitoringrules" } |
작업 (실행된 작업을 포함하는 필드) |
verb |
가능한 값은 다음과 같습니다.
|
이벤트 타임스탬프 |
requestReceivedTimestamp
|
예를 들면 다음과 같습니다.
|
작업 소스 |
|
예를 들면 다음과 같습니다. "sourceIPs":["10.200.0.6"], "_gdch_service_name":"apiserver" |
결과 | responseStatus |
예를 들면 다음과 같습니다. "responseStatus":{ "code":201, "metadata":{} } |
기타 필드 | 해당 없음 | 해당 없음 |
예시 로그
{
"level":"Metadata",
"sourceIPs":[
"10.200.0.6"
],
"auditID":"753c3370-d3a5-4717-b84e-00fd56883fc4",
"requestURI":"/apis/monitoring.gdc.goog/v1/namespaces/alice/monitoringrules?fieldManager=kubectl-client-side-apply&fieldValidation=Strict",
"apiVersion":"audit.k8s.io/v1",
"_gdch_fluentbit_pod":"anthos-audit-logs-forwarder-fgkth",
"user":{
"username":"kubernetes-admin",
"groups":[
"system:masters",
"system:authenticated"
]
},
"userAgent":"kubectl/v1.25.4 (linux/amd64) kubernetes/872a965",
"verb":"create",
"stage":"ResponseComplete",
"stageTimestamp":"2022-12-05T16:28:50.636050Z",
"_gdch_cluster":"org-1-admin",
"objectRef":{
"apiVersion":"v1",
"apiGroup":"monitoring.gdc.goog",
"name":"obs-test-alert-sequel",
"namespace":"alice",
"resource":"monitoringrules"
},
"responseStatus":{
"code":201,
"metadata":{}
},
"kind":"Event",
"annotations":{
"authorization.k8s.io/reason":"",
"authorization.k8s.io/decision":"allow"
},
"requestReceivedTimestamp":"2022-12-05T16:28:50.619659Z",
"_gdch_service_name":"apiserver"
}