问题描述
我们有一个 kubernetes 系统,其中包括处理来自传感器的数千个传入输入的活动。一些传感器可以不时停止报告,因此我们可以对断开连接事件发出警报。当传感器回来时,我们也希望为此获得一个事件。因此,在这些事件(连接和断开连接)之间,特定传感器的状态可以是 OK 或 NOK,我们希望查看当前断开连接的传感器的状态,而无需查看所有发出的事件并每次都找出来。
我们可以使用 Prometheus Alertmanager 做到这一点吗? 如果是,您能否参考实现此目的的可能方法? 如果不是,您处理此要求的默认方式是什么?
解决方法
这必须在 Prometheus 服务器端通过添加自我监控警报来管理,更准确地说是为您的案例添加 PrometheusTargetMissing 警报
- alert: PrometheusTargetMissing
expr: up == 0
for: 0m
labels:
severity: critical
annotations:
summary: Prometheus target missing (instance {{ $labels.instance }})
description: A Prometheus target has disappeared. An exporter might be crashed.\n VALUE = {{ $value }}\n LABELS: {{ $labels }}
参考: https://awesome-prometheus-alerts.grep.to/rules.html#rule-prometheus-self-monitoring-2