首页 > 解决方案 > Prometheus 警报管理器 - CPU 高不警报

问题描述

我配置了 prometheus 警报管理器,但是当我的一台服务器的 CPU 达到 99% 的使用率时,他没有发出警报。这是警报:

- alert: HostHighCpuLoad
  expr: avg(irate(node_cpu_seconds_total{mode="idle"}[1m]) * 100) < 30
  for: 1m
  labels:
    severity: warning
  annotations:
    summary: "High usage on {{ $labels.instance }}"
    description: "{{ $labels.instance }} has a average CPU idle (current value: {{ $value }}s)"

它看起来像我的表达方式,取我所有服务器的全球平均值,但我需要为每台服务器监控这个度量。

有人已经遇到这个问题了吗?

标签: prometheusprometheus-alertmanager

解决方案


是的,它正在考虑所有实例的平均值。将表达式更改为:

avg by (instance) (irate(node_cpu_seconds_total{mode="idle"}[1m]) * 100) < 30

推荐阅读