我想在某些指标的变化率发生剧烈变化时设置警报。 (就像二阶导数)。
这是一个好方法吗?
alert if sum(rate(some_metrics[1m])) - sum(rate(some_metrics[1h])) > threshold
我建议评估相对变化而不是绝对变化 - 在这种情况下,单个查询可用于针对变化率差异很大的指标发出警报,而无需调整阈值。
例如,以下查询可用于在最后一分钟
m
( abs(rate(m[1m]) - rate(m[1h])) / rate(m[1h]) ) > 0.5
abs()函数用于处理上一分钟增长率下降超过50%的情况,以及飙升超过50%的情况。