普罗米修斯报警-请求百分比,而不是绝对



我正试图为Prometheus监控系统编写一个查询,该查询将计算以presto结尾的节点总数。Worker,然后它将计算其中有多少是不可用的,如果超过10%是不健康的,它将触发警报。

我写了一些东西,但它不工作,需要在我的查询下面进行一点调整:

count by(presto_failuredetector_HeartbeatFailureDetector_ActiveCount) (up{instance=~"[A-Za-z.]+[A-Za-z.-]+(presto.)+(worker)"}) < 0.9

你可以得到你想要的:

sum(up{instance=~"[A-Za-z.]+[A-Za-z.-]+(presto.)+(worker)"})
/
count(up{instance=~"[A-Za-z.]+[A-Za-z.-]+(presto.)+(worker)"})
> 0.9

这有效,因为up暴露1为健康目标,0为不健康目标。所以sum(up)等于count(up == 1)

最新更新