Prometheus 为啥不报警?不妨写一篇文章来解决下面两个问题:
-
我的 Prometheus 为啥报警?
-
我的 Prometheus 为啥不报警?
从 for 参数开始
我们首先需要一些背景知识:Prometheus 是如何计算并产生警报的?
看一条简单的警报规则:
- alert: KubeAPILatencyHigh
annotations:
message: The API server has a 99th percentile latency of {
{ $value }} seconds
for {
{ $labels.verb }} {
{ $labels.resource }}.
expr: |
cluster_quantile:apiserver_request_latencies:histogram_quantile{job="apiserver",quantile="0.99",subresource!="log"} > 4
for: 10m
labels:
severity: critical
这条警报的大致含义是,假如 kube-apiserver 的 P99 响应时间大于 4 秒,并持续 10 分钟以上,