普罗米修斯对3个目标中的单个目标发出警报



我正在使用prometheus获取特定度量(即verify__count(的警报。我有3个目标在运行,目前规则如下。

expr: absent(verify__count) > 0

我面临的问题是,只有当所有3个目标都被击落时,才会发出警报。

我想将其保留为严重警报,并添加一个其他警报规则,该规则会在1或2个目标关闭时通知我(以及目标名称(。

我一直在想,每个目标都要遵循这样的思路。

expr: absent(verify_count) == 0 and absent((verify_count{instance="instance1:8080"}))

但有人建议我不要在3个实例中使用缺席和重写此警报。

非常感谢您的帮助。

absent()函数用于检查任何实例上是否存在度量。以下是一个查询,用于检查哪些实例缺少特定的度量:

up{job="foo"} == 1 unless on(job, instance) verify_count

它的工作原理如下:

  1. up{job="foo"} == 1列出foo刮取作业的运行实例
  2. unless从正在运行的实例列表中删除那些具有完全相同(job, instance)标签的verify_count度量的实例

剩下的是没有相应verify_count度量的实例,换句话说,就是没有该度量的实例。

最新更新