

# OTLP 端点
<a name="CloudWatch-OTLPEndpoint"></a>

OpenTelemetry 协议（OTLP）是一种专为 OpenTelemetry 设计的通用遥测数据传输协议。CloudWatch OpenTelemetry 端点是 HTTP 1.1 端点。您需要配置 OpenTelemetry 收集器才能开始向 CloudWatch 发送开放的遥测数据。有关更多信息，请参阅 [开始使用](CloudWatch-OTLPGettingStarted.md)。

## 日志端点
<a name="CloudWatch-LogsEndpoint"></a>

日志端点遵循模式 `https://logs.AWS 区域.amazonaws.com/v1/logs`。例如，对于 `US West (Oregon) (us-west-2) Region`，端点为 `https://logs.us-west-2.amazonaws.com/v1/logs`。您可以使用上述端点将日志转发到现有 `LogGroup` 和 `LogStream`。有关设置 `LogGroup` 摄取日志数据的更多信息，请参阅 [Amazon CloudWatch Logs concepts](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogsConcepts.html)。

在调用 CloudWatch Logs OpenTelemetry 端点时，必须通过将 `x-aws-log-group` 和 `x-aws-log-stream` HTTP 标头分别设置为 `LogGroup` 和 `LogStream` 名称来配置 `LogGroup` 和 `LogStream`。有关更多信息，请参阅 [开始使用](CloudWatch-OTLPGettingStarted.md)。端点使用签名 4 身份验证对调用者进行身份验证。有关更多信息，请参阅[适用于 API 请求的 AWS 签名版本 4](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html)。

当日志事件大小超过 1 MB 时，CloudWatch Logs 会自动从最大字段开始截断，最多可截断 10 个字段。每个字段会根据需要被截断，使事件总大小尽可能接近 1 MB。超出的部分将存储为大型日志对象（LLO），同时会添加 LLO 引用系统字段。您也可以通过设置 `x-aws-truncatable-fields ` HTTP 标头，自行指定需要截断的字段路径。使用 `GetLogObject` API 可以检索 LLO 并将其流式返回。有关更多信息，请参阅 [GetLogObject](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetLogObject.html)。目前，美国东部（弗吉尼亚州北部）、美国西部（俄勒冈州）、欧洲地区（法兰克福）、亚太地区（悉尼）、亚太地区（孟买）、美国东部（俄亥俄州）、欧洲地区（爱尔兰）、亚太地区（东京）和亚太地区（新加坡）支持处理大于 1 MB 的日志事件，同时也可使用 LLO 相关功能。

## 指标端点
<a name="CloudWatch-MetricsEndpoint"></a>

指标端点遵循模式 `https://monitoring.AWS Region.amazonaws.com/v1/metrics`。例如，对于美国西部（俄勒冈州）（us-west-2）区域，端点为 `https://monitoring.us-west-2.amazonaws.com/v1/metrics`。

您需要配置 OpenTelemetry Collector 才能开始向 CloudWatch 发送跟踪数据。端点使用签名 4 身份验证对调用者进行身份验证。有关更多信息，请参阅[适用于 API 请求的 AWS 签名版本 4](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html)。

## 跟踪端点
<a name="CloudWatch-TracesEndpoint"></a>

跟踪端点遵循模式 `https://xray.AWS Region.amazonaws.com/v1/traces`。例如，对于美国西部（俄勒冈州）（us-west-2）区域，端点为 `https://xray.us-west-2.amazonaws.com/v1/traces`。

您需要配置 OpenTelemetry 收集器才能开始向 CloudWatch 发送跟踪。端点使用签名 4 身份验证对调用者进行身份验证。有关更多信息，请参阅[适用于 API 请求的 AWS 签名版本 4](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html)。

## RUM 端点
<a name="CloudWatch-RUMEndpoint"></a>

RUM 端点遵循模式 `https://dataplane.rum.{AWS Region}.amazonaws.com/v1/rum`。例如，若为美国西部（俄勒冈州）区域，则端点为 `https://dataplane.rum.us-west-2.amazonaws.com/v1/rum`。该端点负责处理 CloudWatch RUM 应用程序的*客户端遥测数据*（仅包含带 `eventName` 的跟踪数据和日志记录）。

使用本端点时，您需创建基于移动平台（Android/iOS）的 [RUM 应用程序监视器](CloudWatch-RUM-get-started-create-app-monitor.md)，并使用生成的代码片段为应用程序进行埋点配置。该代码片段会拉取已配置此端点的 RUM Mobile SDK。您可对这些 SDK 做进一步配置，让 RUM 按照需求收集遥测数据。

本端点同时支持身份验证和非身份验证请求。身份验证请求可采用 AWS 签名版本 4（SigV4）方式认证，也可通过基于资源的策略，允许移动应用程序发起非身份验证访问。

如需了解其 SDK 中定义的身份验证模型相关详情，可参考以下内容：
+ iOS 应用程序：[适用于 OpenTelemetry 的 AWS Distro（ADOT）iOS SDK](https://github.com/aws-observability/aws-otel-swift)。
+ Android 应用程序：[适用于 OpenTelemetry 的 AWS Distro（ADOT）Android SDK](https://github.com/aws-observability/aws-otel-android)。

## 端点限额和限制
<a name="CloudWatch-LimitsandRestrictions"></a>

该表列出了指标、跟踪数据和日志的常见端点限额和限制。


| 限制 | 端点 | 附加信息 | 
| --- | --- | --- | 
|  所需的收集器扩展 |  [sigv4authextension](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/extension/sigv4authextension)  |  要向 OTLP 端点发送指标或跟踪数据，必须使用 sigv4authextension  | 
|  支持的协议 |  HTTP  |  该端点仅支持 HTTP 而不支持 gRPC  | 
|  支持的 OTLP 版本 |  OTLP 1.x  |   | 
|  有效负载格式 |  二进制，json  |  该端点接受使用二进制和 json 格式的请求  | 
|  压缩方法 |  gzip，none  |  该端点仅支持 gzip 和 none 压缩方法  | 

该表列出了跟踪的端点限额和限制。


| 限制 | 跟踪端点 | 附加信息 | 
| --- | --- | --- | 
|  最大未压缩字节数/请求 |  5 MB  |  未压缩有效载荷时，OTLP 端点将拒绝大于 5 MB 的请求。  | 
|  最大事件数/请求 |  1 万个跨度  |  单个批次最多可包含 1 万个跨度。超过此限制将导致 API 调用被拒绝。  | 
|  单一资源和范围大小 |  16 KB  |  每个唯一资源和相应范围的大小不应超过 16 KB。任何资源若超过此限制，将导致整个 API 调用被拒绝。  | 
|  单一跨度的最大尺寸 |  200 KB  |  超过 200 KB 的跨度将被端点拒绝。  | 
|  跨度创建的时间戳 |  未来 2 小时和过去 14 天  |  批次中的跨度都不能超过未来两个小时，也不能超过过去 14 天。  | 
|  事件中的最大时间间隔/请求 |  24 小时  |   | 

该表列出了指标的端点限额和限制。


| 限制 | 指标端点 | 附加信息 | 错误代码 | 
| --- | --- | --- | --- | 
| 最大 TPS | 500 | 每个账户允许的每秒最大请求数量。 | 429 | 
| 最大新序列创建速率 | 1000000 | 10 分钟的时段内可创建的最大新序列数量。此限额仅适用于创建新的指标名称，不适用于为现有指标摄取数据点。 | 429：请求中的所有指标都受到节流；200：请求中的指标受到部分节流 | 
| 最大请求大小 | 1 MB | 未压缩请求的最大大小。 | 400 | 
| 最大数据点计数 | 1000 | 在单个请求中发送的最大数据点数。此数字是 ResourceMetrics、ScopeMetrics 和 Metrics 之间的总和。 | 400 | 
| 最大元数据大小 | 40 KB | 每个数据点的一个序列接受的所有标签和标签值的最大组合大小。 | 400：请求中的所有指标均无效；200：请求中的指标部分无效 | 
| 最大标签计数 | 150 | 每个数据点的 Resource/Scope/Datapoint 属性之间的最大标签数量。 | 400：请求中的所有指标均无效；200：请求中的指标部分无效 | 

该表列出了日志的端点限额和限制。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/CloudWatch-OTLPEndpoint.html)

**注意**  
日志的账户限制在 SDK 和新的日志端点之间共享。