求和该值在普罗米修斯查询语言中的秒数

Sum the number of seconds the value has been in prometheus query language

我将指标数据从 telegraf 拉到 prometheus,并使用 prometheus 指标构建了一个仪表板。我试图找到给我停机百分比的查询。我使用的公式是 停机时间百分比 =(状态的秒数 success/Total 一天中的秒数)*100

我的指标数据如下所示, 查询:test_jobevent_status{logname="123_abc",instance="job123"} 输出:0-成功或 1-失败

所以,停机时间百分比是秒数 test_jobevent_status 是 2。我们的抓取间隔是 15 秒。因此,考虑这 15 秒内任何一秒的最后状态是可以的。

有人可以帮我写一个查询来找出当 jobevent 的状态处于失败状态时的秒数(或分钟数)的总和吗?

FWIW、summarize、sumSeries 和 group 有助于在石墨中做同样的事情。但不确定在普罗米修斯中获得相同内容应该有什么帮助。

尝试以下查询:

100-100*avg_over_time(test_jobevent_status{logname="123_abc",instance="job123"}[1d])