OTLP 엔드포인트를 사용하여 로그 전송(OpenTelemetry Logs) - Amazon CloudWatch Logs

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

OTLP 엔드포인트를 사용하여 로그 전송(OpenTelemetry Logs)

OpenTelemetry Logs 엔드포인트(/v1/logs)는 JSON 또는 Protobuf 인코딩의 OpenTelemetry Protocol(OTLP) 로그 데이터를 수락합니다. 구성 및 사용량을 포함하여 OTLP 엔드포인트에 대한 자세한 내용은 OpenTelemetry를 사용하여 CloudWatch로 지표 및 추적 전송을 참조하세요.

보유자 토큰 인증을 사용하는 경우 계속하기 보유자 토큰 인증 설정 전에의 설정 단계를 완료합니다.

요청 형식

  • 메서드: POST

  • Content-Type: application/json 또는 application/x-protobuf

  • 로그 그룹: x-aws-log-group 헤더만(쿼리 파라미터는 지원되지 않음)

  • 로그 스트림: x-aws-log-stream 헤더

요청 예제

curl -X POST "https://logs.<region>.amazonaws.com/v1/logs" \ -H "Authorization: Bearer ACWL<token>" \ -H "Content-Type: application/json" \ -H "x-aws-log-group: MyLogGroup" \ -H "x-aws-log-stream: MyLogStream" \ -d '{ "resourceLogs": [ { "resource": { "attributes": [ { "key": "service.name", "value": { "stringValue": "my-service" } } ] }, "scopeLogs": [ { "scope": { "name": "my-library", "version": "1.0.0" }, "logRecords": [ { "timeUnixNano": "1741900000000000000", "severityNumber": 9, "severityText": "INFO", "body": { "stringValue": "User logged in successfully" }, "attributes": [ { "key": "user.id", "value": { "stringValue": "12345" } } ] } ] } ] } ] }'

응답

성공(모든 이벤트 수락됨):

HTTP 200 OK {}

부분 성공(일부 이벤트가 거부됨):

{ "partialSuccess": { "rejectedLogRecords": 5, "errorMessage": "{\"tooOldLogEventCount\": 3, \"tooNewLogEventCount\": 1, \"expiredLogEventCount\": 1}" } }

요청 Content-Type이 인 경우 application/x-protobuf응답은 필드가 동일한 직렬화된 ExportLogsServiceResponse protobuf 메시지로 반환됩니다.

OTLP 관련 동작

다음 동작은 OTLP 엔드포인트에 고유하며 다른 HTTP 수집 엔드포인트에는 없습니다.

  • Retry-After 헤더 - 클라이언트가 언제 재시도해야 하는지를 나타내는 503 및 429 응답에 포함됩니다.