我们正在设置 aws cloudwatch exporter(https://github.com/prometheus/cloudwatch_exporter) 将 cloudwatch 指标导出到我们的 prometheus 服务器。阅读文档时,我看到了有关 aws cloudwatch 指标收敛的说明:
“据观察,CloudWatch 有时需要几分钟才能收敛报告的值。默认的 delay_seconds 将导致请求至少 10 分钟前的数据以缓解这种情况。”
但是,我在 aws 上找不到任何关于指标收敛是什么或需要多长时间才能实现的文档。收敛到底是什么,多久才能安全地将 aws cloudwatch 的指标抓取到 prometheus 中?
答案1
我没有找到任何官方的 AWS 文档这样说,但这是事实,至少对于 ELB/ALB 来说是这样,这是我观察到的。
这 ”指标的收敛“意味着 AWS 资源可能需要最多 10 分钟才能将数据报告回 CloudWatch。
例如,ALB 可能需要最多 2 分钟才能报告所有请求数。因此,如果您SUM
在RequestCount
某个 ALB 的最后一分钟请求 CloudWatch API,它可能会返回 500(假设)。但如果您再次请求,它会返回 1200(假设),因为并非所有指标都会立即报告给 CloudWatch。
参见此问题:https://github.com/ivx/yet-another-cloudwatch-exporter/issues/35
如果你正在使用cloudwatch_exporter密切关注导出器进行的 API 调用,因为它可能会产生巨额账单,并且 AWS 可能会因您发送过多的 API 调用而阻止您的帐户。
另一个 CloudWatch 导出器解决了以上两个问题。
值得一读:https://sysdig.com/blog/improving-prometheus-cloudwatch-exporter/