关于AWS ECS中通过AWS OpenTelemetry Collector Sidecar采集服务原生OpenTelemetry日志至CloudWatch的配置指引咨询
AWS ECS中通过AWS OpenTelemetry Collector Sidecar采集服务原生OpenTelemetry日志至CloudWatch的配置指引咨询
嗨,我完全懂你的困扰!通过ECS控制台默认勾选的「追踪采集」「指标采集」确实只会给侧车配置对应的数据管道,日志部分默认是没开启原生OTLP日志接收的——控制台里的「日志采集」选项确实只是抓容器stdout/stderr,完全满足不了你需要保留日志属性和完整多行结构的需求。不过别担心,AWS OTel Collector是支持原生OTLP日志采集的,只是需要手动自定义配置来开启。
下面是具体的配置步骤:
1. 编写自定义OpenTelemetry Collector配置文件
你需要创建一个包含日志采集管道的YAML配置文件,比如otel-collector-config.yaml,示例如下:
receivers: otlp: protocols: grpc: endpoint: 0.0.0.0:4317 http: endpoint: 0.0.0.0:4318 processors: batch: exporters: # 保留原有的追踪导出到X-Ray awsxray: region: "你的AWS区域" # 保留原有的指标导出到CloudWatch EMF awsemf: region: "你的AWS区域" namespace: "你的服务指标命名空间" # 新增日志导出到CloudWatch awscloudwatchlogs: region: "你的AWS区域" log_group_name: "/ecs/你的服务名称-otel-logs" log_stream_name: "{container_id}" # 允许自动创建日志组(如果不存在) create_log_group: true service: pipelines: traces: receivers: [otlp] processors: [batch] exporters: [awsxray] metrics: receivers: [otlp] processors: [batch] exporters: [awsemf] # 新增日志处理管道 logs: receivers: [otlp] processors: [batch] exporters: [awscloudwatchlogs]
2. 将配置文件部署到ECS
因为你是通过控制台部署的任务,有两种方式加载这个自定义配置:
方式一:S3托管配置
- 把上面的YAML文件上传到你的S3存储桶中,比如
s3://你的存储桶名称/otel-config/otel-collector-config.yaml - 给ECS任务执行角色添加S3读取权限(
s3:GetObject),以及CloudWatch日志写入权限(logs:CreateLogGroup、logs:CreateLogStream、logs:PutLogEvents) - 在ECS任务定义中,找到AWS OTel Collector侧车容器,添加环境变量:
- 键:
AOT_CONFIG_S3_PATH - 值:
s3://你的存储桶名称/otel-config/otel-collector-config.yaml
- 键:
- 把上面的YAML文件上传到你的S3存储桶中,比如
方式二:直接通过环境变量传入配置
如果配置内容不长,可以直接把YAML内容转义后作为环境变量AOT_CONFIG_CONTENT的值传入,但这种方式在配置复杂时容易出错,更推荐用S3托管。
3. 确认服务日志发送配置
确保你的Web服务依然将OpenTelemetry日志发送到侧车的localhost:4317(gRPC协议)或localhost:4318(HTTP协议),和配置文件中接收器的监听端口一致。
关键注意事项
- 任务执行角色的权限一定要配置齐全,否则Collector会无法读取配置或者无法写入CloudWatch日志
- 日志组名称可以根据你的需求自定义,
log_stream_name用{container_id}可以区分不同容器的日志 - 配置生效后,你在CloudWatch日志中看到的每条日志都会包含完整的OpenTelemetry属性(比如
attributes字段),多行日志也会作为单个条目存在,完全保留你服务输出的日志上下文
这样调整后,你的服务原生的OpenTelemetry日志就能正确通过侧车Collector导入CloudWatch啦!
内容来源于stack exchange
相关产品推荐
相关产品推荐

