本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 OTLP 端点发送OpenTelemetry 日志(日志)
OpenTelemetry 日志端点 (/v1/logs) 接受 JSON 或 Protobuf 编码的 OpenTelemetry 协议 (OTLP) 日志数据。有关 OTLP 端点的详细信息,包括配置和使用情况,请参阅使用发送指标和 CloudWatch 跟 OpenTelemetry踪。
如果您使用的是不记名令牌身份验证,请先完成中的设置步骤,设置不记名令牌身份验证然后再继续。
请求格式
方法:
POST内容类型:或
application/jsonapplication/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 响应中,用于指示客户端何时应重试。