View a markdown version of this page

Amazon CloudWatch 代理 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon CloudWatch 代理

CloudWatch 代理基于 OpenTelemetry Collector 构建,因此您可以使用它来接收 OpenTelemetry 数据并将其发送到 CloudWatch OTLP 端点。对于大多数客户而言,这是向 CloudWatch 发送遥测数据的推荐方式,因为单个代理还可以支持 CloudWatch Application Signals 和 CloudWatch Enhanced Container Insights 等精选体验。

目前,要通过代理发送 OpenTelemetry 数据,需要以 YAML 格式提供 OpenTelemetry 收集器配置,并将其附加到代理自身的配置中。使用 CloudWatch 代理配置文件启动代理,然后附加 OpenTelemetry YAML 文件:

/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -c file:/tmp/agent.json -s /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a append-config -c file:/tmp/otel.yaml -s

代理会在启动时合并这两个配置,并记录已解析的配置。为避免与代理自动创建的管道发生合并冲突,请在 OpenTelemetry YAML 中为每个组件和管道名称添加自定义后缀(例如 otlphttp/cwagent)。

支持的 OpenTelemetry 组件

以下 OpenTelemetry 组件可供您在附加的 YAML 配置中进行配置。请使用此处显示的组件类型名称作为 YAML 中的键。

组件类型 可用组件

接收器

otlp, prometheus, statsd, collectd, jmx, hostmetrics, filelog, tcplog, udplog, jaeger, zipkin, kafka, kubeletstats

处理器

batch, memory_limiter, filter, attributes, resource, resourcedetection, metricstransform, transform, cumulativetodelta, deltatocumulative, deltatorate, groupbyattrs, groupbytrace, k8sattributes, metricsgeneration, metricstarttime, probabilistic_sampler, span, tail_sampling

导出器

otlphttp, awsemf, awscloudwatchlogs, awsxray, prometheusremotewrite, debug

扩展程序

sigv4auth, headers_setter, file_storage, health_check, pprof, zpages

CloudWatch 代理仅支持向 Amazon 目的地写入遥测数据。

配置示例

以下示例使用 otlphttp 导出器和 sigv4auth 扩展,将每个信号发送到相应的 CloudWatch OTLP 端点。每个组件和管道名称都使用 /cwagent 后缀,以避免与代理自动创建的管道发生冲突。将 region 替换为 Amazon 区域。

Metrics

receivers: otlp/cwagent: protocols: http: endpoint: 0.0.0.0:4318 processors: batch/cwagent: {} exporters: otlphttp/cwagent: metrics_endpoint: https://monitoring.region.amazonaws.com/v1/metrics auth: authenticator: sigv4auth/cwagent extensions: sigv4auth/cwagent: region: "region" service: "monitoring" service: extensions: [sigv4auth/cwagent] pipelines: metrics/cwagent: receivers: [otlp/cwagent] processors: [batch/cwagent] exporters: [otlphttp/cwagent]

日志

receivers: otlp/cwagent: protocols: http: endpoint: 0.0.0.0:4318 exporters: otlphttp/cwagent: logs_endpoint: https://logs.region.amazonaws.com/v1/logs headers: x-aws-log-group: my-log-group x-aws-log-stream: default auth: authenticator: sigv4auth/cwagent extensions: sigv4auth/cwagent: region: "region" service: "logs" service: extensions: [sigv4auth/cwagent] pipelines: logs/cwagent: receivers: [otlp/cwagent] exporters: [otlphttp/cwagent]

跟踪

receivers: otlp/cwagent: protocols: http: endpoint: 0.0.0.0:4318 exporters: otlphttp/cwagent: traces_endpoint: https://xray.region.amazonaws.com/v1/traces auth: authenticator: sigv4auth/cwagent extensions: sigv4auth/cwagent: region: "region" service: "xray" service: extensions: [sigv4auth/cwagent] pipelines: traces/cwagent: receivers: [otlp/cwagent] exporters: [otlphttp/cwagent]
注意

在向 OTLP 跟踪数据端点发送跟踪数据之前,请确保启用 Transaction Search。