Prometheus Promotheus-用于获取事件增加百分比的查询

Prometheus Promotheus-用于获取事件增加百分比的查询,prometheus,Prometheus,我有一个带有路径和状态代码的请求柱状图……如果错误在过去一个小时内比前一个小时增加了20%,我如何发出警报 一个公制样本: {instance="someIp",instance_hostname="someHost",job="someAppName",le="+Inf",method="GET",path="somePath",status_code="500"} 我应该依赖于速率函数吗?比如: rate(http_request_duration_seconds{job="somePr

我有一个带有路径和状态代码的请求柱状图……如果错误在过去一个小时内比前一个小时增加了20%,我如何发出警报

一个公制样本:

{instance="someIp",instance_hostname="someHost",job="someAppName",le="+Inf",method="GET",path="somePath",status_code="500"} 
我应该依赖于速率函数吗?比如:

rate(http_request_duration_seconds{job="someProject", status_code="500"}[60m])

取过去一小时的错误率与前一小时的错误率之比:

(
  rate(http_request_duration_seconds_count{status_code="500"}[1h])
    /
  rate(http_request_duration_seconds_count{status_code="500"}[1h] offset 1h)
)
  >
1.2
这将检查绝对错误数是否增加。如果要检查错误的相对数量是否有所增加(例如,过去一小时内有10%的请求失败,而前一小时有5%的请求失败),则需要将错误率除以总请求率,然后再与1小时前的相同情况进行比较


或者,您可能希望将两者结合起来,如果相对错误数增加了X%,并且绝对错误数超过某个噪声阈值,则发出警报(这样,如果您在过去一小时内收到两个请求,其中一个请求失败,则不会触发此警报)。

感谢Alin,它确实有效。这是我制作的一个应用程序的第二部分,没有普罗米修斯的经验,但看起来你可以用它做很多事情。