You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

替换Datadog Java Agent为OpenTelemetry后指标无法流向Datadog后端

问题分析与解决方案

1. 解决日志导出404警告

你的Datadog Agent已禁用OTLP日志接收(otlp.logs.enabled: false),但OpenTelemetry Java Agent仍在尝试发送日志,直接触发了404错误。需完全禁用OpenTelemetry的日志导出功能:

在环境变量中添加:

OTEL_LOGS_EXPORTER=none

同时可删除冗余的OTEL_EXPORTER_OTLP_LOGS_ENDPOINT配置,因已禁用日志导出。

2. 优化OpenTelemetry指标导出配置

当前配置存在冗余端点定义,OTEL_EXPORTER_OTLP_ENDPOINT作为所有信号的默认端点,同时单独指定了OTEL_EXPORTER_OTLP_METRICS_ENDPOINT,虽不冲突但可简化。另外需确保指标导出器正确启用:

调整后的环境变量配置:

OTEL_EXPORTER_OTLP_ENDPOINT=http://<datadog agent ip>:4318/v1/{signal}
OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf
OTEL_SERVICE_NAME=supply
OTEL_LOGS_EXPORTER=none
OTEL_TRACES_EXPORTER=none  # 若不需要追踪可禁用
OTEL_METRICS_EXPORTER=otlp  # 显式指定指标导出器为OTLP

3. 验证Datadog Agent的指标接收

确认Datadog Agent的OTLP HTTP接收器已正确启用(otlp.receiver.protocols.http.enabled: true),同时检查Agent是否有权限将指标发送至Datadog后端。可在Agent节点执行以下命令验证端点连通性:

curl -X POST http://<datadog agent ip>:4318/v1/metrics -H "Content-Type: application/x-protobuf" --data-binary '<任意protobuf格式数据>'

返回200或202状态码则说明接收器工作正常。

4. 检查Datadog UI的指标过滤规则

确认Datadog UI未设置过滤规则排除supply服务的指标。可在Metrics Explorer中直接搜索supply相关指标(如process.runtime.jvm.memory.used这类默认JVM指标),排查是否存在结果。

5. 排查OpenTelemetry Agent的指标发送日志

添加以下环境变量开启详细日志,排查指标发送是否存在异常:

OTEL_METRICS_EXPORT_INTERVAL=10000  # 缩短导出间隔便于测试
OTEL_LOG_LEVEL=debug

查看服务Pod日志中关于指标导出的记录,确认是否有成功发送的日志信息。


内容的提问来源于stack exchange,提问作者royatirek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 23:32:15