par*_*man 5 prometheus prometheus-pushgateway
我每天多次运行构建脚本。我的感觉是我和我的同事花了相当多的时间等待这个脚本的执行。现在我想知道:我们每天花多少时间等待脚本执行?。我可以对总体平均值感到满意,即使我真的很想获得每日数据(例如“上周一我们花了 X 分钟等待脚本执行,周二......)
为了找到答案,我用推送网关启动了 Prometheus。在构建脚本中,我向推送网关添加了一个 REST 调用,该调用发布counter标有机器名称的指标(类型:)以及执行脚本所用时间的示例数据。
正在收集数据,但我意识到我收集的数据不足以回答我的问题,我需要将我推送的指标(即:当前运行经过的时间)累积到以前的数据。查看文档,我感觉推送网关不支持此功能:
Pushgateway 显然不是聚合器或分布式计数器,而是指标缓存
我的问题是:
总的来说,Pushgateway确实不是一个分布式计数器,但是……
恕我直言,看待 Pushgateway 的正确方式就像“又一个抓取端点”。这意味着,它不会聚合您推送的指标,而只会“按原样”保存它们。但实际上您不需要聚合它 - Prometheus 将从PushGateway 中抓取数据,并且您的所有数据都将在 Prometheus 中可用。
之后 - 您可以通过 Prometheus 运行任何您想要的查询 - 直接从 Prometheus 使用 PromQL,或利用 Grafana。
注意:有很多关于 Pushgateway 的讨论,使用它有其缺点。有一般指南“非目标”建议使用 Pushgateway 作为“最后一个选项” - 建议改为公开 /metrics 路由,即使在工作中也是如此。
PS 如果您认为确实需要聚合指标,您可以查看同一篇文章中提到的Weavework 聚合网关。但再一次 - 我认为这不是你正在寻找的。
| 归档时间: |
|
| 查看次数: |
2156 次 |
| 最近记录: |