问题描述
我在 ECS Fargate 上运行我的核心业务服务。我添加了“datadog-agent”作为 sidecar 容器,将 ECS fargate 上运行的服务的指标发送到 datadog。
但是,问题是我没有从 ECS 容器中获取有关 Datadog 本身的任何指标。
以下是我用于 datadog-agent 的环境变量:
- DD_API_KEY
- DD_PROXY_HTTP
- DD_PROXY_HTTPS
- DD_PROXY_NO_PROXY
- DD_SITE
- ECS_FARGATE
我使用这些代理环境变量是因为我必须通过 Squid 代理服务器传递指标。我已经检查了一切可能但仍然收到以下错误:
2021-04-30 14:30:33 UTC |核心 |错误 | (pkg/forwarder/worker.go:174 处理中) |端点错误太多 'https://app.datadoghq.us/api/v1/check_run?api_key= { "DD_API_KEY": "*******************************xxxx" } ': 稍后重试
2021-04-30 14:30:29 UTC |核心 |错误 | (pkg/collector/runner/runner.go:292 工作中) |运行检查时出错 领事: [ { "message": "400 客户端错误:对 url 的错误请求:http://xx.xx.xx.xx:8500/v1/status/leader",
如何在 Datadog 上成功获取指标?我尝试了不同的方法并研究了很多,但没有运气。
解决方法
您分享的第一条错误消息显示代理无法向 Datadog 平台发送有效负载。
显示的第二个错误是 ECS 代理连接到 consul 实例以检查其状态的错误 - 这是一个不同的问题。
您能否举例说明 DD_PROXY_NO_PROXY
中传递的值?
根据您的描述,Datadog 代理旨在通过 Squid 代理进行出站呼叫 - 而代理配置可能会阻止出站呼叫。
此处更详细地记录了代理配置详细信息:https://docs.datadoghq.com/agent/proxy/?tab=agentv6v7