使用Prometheus计数器跟踪事件

时间:2017-07-26 09:52:37

标签: monitoring prometheus

将普罗米修斯用于每秒钟的工作效果非常好,我在rateirate取得了巨大的成功。我不知道如何绘制很少发生的事情,这是一件大事。

所以我有一个计数器,我正在递增称为job_failed。每当发生这种情况时,它就会显示在我的即时矢量中。如果我直接绘制它,它总是会上升,我看到图中有一个凹凸,但这并没有给我足够明确的迹象表明作业失败了。所以我想让它成为零图中的尖峰。

如果我做了rate(job_failed[15s])我得到了我的尖峰 - 但它是每秒秒数,所以它的值是0.1,尽管我想要的变化是1。 我试过increase(job_failed[1m]),但这也没有正确加起来,偶尔给我留下2.18等值。

有没有办法只看到一个尖峰?这似乎是一件相当琐碎的事情,但我无法弄明白。

2 个答案:

答案 0 :(得分:1)

Prometheus更适合高音量而不是低音量事件,因为我们保持平均准确性的低音量伪像出现。

因此,例如{15}在15秒内增加1的rate(job_failed[15s])为1/15 = 0.066 / s。舍入可以使该节目为0.1。

https://www.youtube.com/watch?v=67Ulrq6DxwA详细介绍了这一切是如何运作的。

简短版本就是您现在正在做的事情。

答案 1 :(得分:-1)

对于类似的要求,我使用delta函数,并根据要求配置阈值。

https://prometheus.io/docs/querying/functions/#delta