我每天多次运行构建脚本。我的感觉是我和我的同事花了相当多的时间等待这个脚本执行。现在我想知道:我们每天花多少时间等待脚本执行?。尽管我真的希望每天都有数据(例如&#34;上周一我们花了X分钟等待脚本执行,周二......)< / p>
为了找到答案,我用推送网关旋转了普罗米修斯。在构建脚本中,我向推送网关添加了一个REST调用,该调用发布了用机器名称标记的度量标准(类型:counter
)和样本数据执行脚本所用的时间。
正在收集数据,但我意识到我收集的数据不足以回答我的问题,我需要将我推送的指标(即:当前运行已用时间)累积到以前的数据。 Looking at the documentation,我觉得这不会通过推送网关支持:
Pushgateway显然不是聚合器或分布式计数器,而是指标缓存
我的问题是:
答案 0 :(得分:0)
通常,Pushgateway确实不是分布式计数器,但是...
正确看待Pushgateway的方法,恕我直言,就像“还有另一个抓取端点”。 这意味着,它不会汇总您推送的指标,而只会“按原样”保存它们。 但是您实际上并不需要对其进行汇总-Prometheus将抓取来自PushGateway的数据,并且所有数据都将在Prometheus中可用。
之后-您可以直接在Prometheus上使用PromQL或利用Grafana来对Prometheus进行任何查询。
注意:有关Pushgateway的讨论很多,使用它也有不利之处。通常有guideline "non-goals" recommendation可以将Pushgateway用作“ 最后一个选项”-建议即使在工作中也要公开/ metrics路由。
P.S。如果您认为您确实需要汇总指标,可以看看同一篇文章中提到的Weavework's aggregation gateway。但是,再次-我认为这不是您想要的。