我正在使用 Prometheus、cAdvisor 和 Prometheus Alertmanager 监控多个容器。我想要的是在容器由于某种原因停机时收到警报。问题是如果容器死亡,则 cAdvisor 不会收集任何指标。任何查询都返回“无数据”,因为该查询没有匹配项。
最佳答案
看看普罗米修斯函数 缺席()
例子:absent(nonexistent{job="myjob"}) => {job="myjob"}
absent(nonexistent{job="myjob",instance=~".*"}) => {job="myjob"}
absent(sum(nonexistent{job="myjob"})) => {}
这是警报的示例:
ALERT kibana_absent
IF absent(container_cpu_usage_seconds_total{com_docker_compose_service="kibana"})
FOR 5s
LABELS {
severity="page"
}
ANNOTATIONS {
SUMMARY= "Instance {{$labels.instance}} down",
DESCRIPTION= "Instance= {{$labels.instance}}, Service/Job ={{$labels.job}} is down for more than 5 sec."
}
关于prometheus - docker 容器停止时发出警报,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47045801/