警报缺少序列/数据

时间:2018-10-15 10:48:55

标签: grafana prometheus

我试图了解如何在不再取消该指标时让Grafana提醒我。

我在此示例中使用的指标是mongodb_instance_uptime_seconds。当实例发生故障时,不再生成度量标准,从而导致Prometheus中缺少该度量标准。目前,警报在when last() query(A, 1m, now) < 600上触发。如您所见,目标是在正常运行时间少于5分钟时发出警报。这意味着我想提醒重启和停止,但是当一个实例发生故障时,Grafana不会发出警报,因为实际上last()值不存在,并且当实例发生故障5分钟以上时,甚至没有任何报告。

关于前进的任何线索吗?

1 个答案:

答案 0 :(得分:1)

通常用于确定实例是否被成功抓取的度量标准为up。它由所有抓取作业自动生成,因此,如果要为任何已关闭的抓取端点发出警报,只需使用查询up == 0,该查询将显示上次抓取未成功的所有端点。如果您只想为此特定端点发出警报,请使用标签up{instance="mongodb.foo.com",job="mongo"} == 0

如果您对使用Alertmanager代替Grafana感兴趣,则规则如下:

groups: - name: General rules: - alert: Endpoint_Down expr: up == 0 for: 5m labels: severity: critical annotations: summary: "Exporter is down: {{ $labels.instance }}" description: "The endpoint {{ $labels.instance }} is not able to be scraped by Prometheus."