요청을 수신할 때 서비스 메시에서 감사 로그를 생성하는 애플리케이션 (Envoy 사이드카)의 로그 형식은 다음과 같습니다.
JSON 표현
{
"bytes_sent": string,
"x_forwarded_for": string,
"severity_text": string,
"observed_time_unix_nano": integer,
"user_agent": string,
"x_request_id": string,
"start_time": string,
"upstream_local_address": string,
"connection_termination_details": string,
"severity_number": integer,
"resource": {
object
},
"x_envoy_upstream_service_time": string,
"response_code_details": string,
"upstream_host": string,
"duration": string,
"upstream_cluster": string,
"upstream_transport_failure_reason": string,
"authority": string,
"username": string,
"protocol": string,
"route_name": string,
"requested_server_name": string,
"method": string,
"time_unix_nano": integer,
"bytes_received": string,
"path": string,
"response_flags": string,
"x_goog_api_client": string,
"body": {
object
},
"downstream_local_address": string,
"downstream_remote_address": string,
"response_code": string
}
필드 | |
---|---|
bytes_sent |
본문에서 전송된 바이트입니다. WebSocket 연결의 경우 응답 헤더에서 전송된 바이트도 포함됩니다. 예를 들면 |
x_forwarded_for |
클라이언트에서 서버로의 요청이 방문한 IP 주소입니다. 예를 들면 |
severity_text |
로그 항목의 심각도 수준에 관한 정보입니다. 빈 값일 수 있습니다. |
observed_time_unix_nano |
로그 항목 수집의 UNIX 에포크 시간(나노초)입니다. 예를 들면 |
user_agent |
웹 콘텐츠를 가져오고, 렌더링하고, 최종 사용자와의 상호작용을 지원하는 소프트웨어의 이름입니다. 웹 기술을 사용하여 구현된 사용자 인터페이스를 의미하기도 합니다. 예를 들면 |
x_request_id |
단일 요청의 고유 ID입니다. 예를 들면 |
start_time |
요청의 시작 시간(밀리초까지)입니다. 예를 들면 |
upstream_local_address |
업스트림 연결의 로컬 주소입니다. IP 주소인 경우 주소와 포트가 포함됩니다. 예를 들면 |
connection_termination_details |
Envoy가 연결을 종료한 이유에 관한 추가 정보입니다. 빈 값일 수 있습니다. |
severity_number |
로그 항목의 심각도 수준입니다. 예를 들면 |
resource |
로그 항목을 생성한 Envoy 리소스의 속성입니다. 이러한 속성은 객체의 키-값 쌍에 있습니다. 예를 들면 다음과 같습니다. { "log_name": string, "cluster_name": string, "node_name": string, "zone_name": string } |
x_envoy_upstream_service_time |
업스트림 호스트가 요청을 처리하는 데 걸린 시간(밀리초)입니다. 예를 들면 |
response_code_details |
응답 코드에 관한 추가 정보입니다(예: 누가 설정했는지(업스트림 또는 Envoy) 및 이유). 예를 들면 |
upstream_host |
업스트림 호스트의 URL입니다. 예를 들면 |
duration |
시작 시간부터 마지막 바이트가 출력될 때까지의 요청의 총 시간(밀리초)입니다. 예를 들면 |
upstream_cluster |
업스트림 호스트가 속한 클러스터입니다. 예를 들면 |
upstream_transport_failure_reason |
전송 소켓으로 인해 업스트림 연결이 실패하면 전송 소켓에서 실패 이유를 제공합니다. 이 필드의 형식은 구성된 업스트림 전송 소켓에 따라 달라집니다. 예를 들면 |
authority |
타겟 URI의 호스트 및 포트 정보입니다. 예를 들면 |
username |
요청을 시작한 사용자 ID입니다. 예를 들면 |
protocol |
요청의 프로토콜 유형입니다. 예를 들면 |
route_name |
경로의 이름입니다. 예를 들면 |
requested_server_name |
서버 이름 표시 (SNI)를 위해 SSL 연결 소켓에 설정된 값입니다. 예를 들면 |
method |
메서드 이름입니다. 예를 들면 |
time_unix_nano |
로그 항목 수집의 UNIX 에포크 시간(나노초)입니다. 예를 들면 |
bytes_received |
본문에서 수신된 바이트입니다. 예를 들면 |
path |
HTTP 요청의 경로입니다. 예를 들면 |
response_flags |
응답 또는 연결에 관한 추가 세부정보(있는 경우) 예를 들면 |
x_goog_api_client |
API 클라이언트 식별자입니다. 빈 값일 수 있습니다. |
body |
요청 본문입니다. 빈 값일 수 있습니다. |
downstream_local_address |
다운스트림 연결의 로컬 주소입니다. IP 주소인 경우 주소와 포트가 포함됩니다. 예를 들면 |
downstream_remote_address |
다운스트림 연결의 원격 주소입니다. IP 주소인 경우 주소와 포트가 포함됩니다. 예를 들면 |
response_code |
HTTP 응답 코드입니다. 가능한 값은 다음과 같습니다.
|