根据严重性禁用 Prometheus Alertmanager 的电子邮件

根据严重性禁用 Prometheus Alertmanager 的电子邮件

我们正在使用 Prometheus、Alertmanager 和 Grafana 的组合来监控 HPC 计算集群。在我们的机器上,SWAP 内存填满到极限之类的事情经常发生,虽然info在 Grafana Alerts 仪表板中查看相应级别的警报很有用,但我们最好不要发送相应的电子邮件。

有没有办法静音/禁用所有infoalertmanager.yml配置文件中具有严重性的警报电子邮件?

所有警报的定义都与此类似(根据https://awesome-prometheus-alerts.grep.to/rules.html):

  - alert: HostSwapIsFillingUp
    expr: (1 - (node_memory_SwapFree_bytes / node_memory_SwapTotal_bytes)) * 100 > 95
    for: 60m
    labels:
      severity: info
    annotations:
      summary: Host swap is filling up (instance {{ $labels.instance }})
      description: "Swap is filling up (>95%)\n  VALUE = {{ $value }}"

文件中的相应部分alertmanager.yml内容如下

  routes:
    - match:
        severity: 'warning'
      repeat_interval: 24h
      continue: true
    - match:
        severity: 'info'
      repeat_interval: 24h
      continue: true
      receiver: dropped

receivers:
  - name: 'admin-mails'
    email_configs:
      - to: 'admins@DOMAIN'
  - name: 'dropped'
    email_configs:
      - to: 'admins@DOMAIN'

是否有可能确保info级别警报永远不会引发电子邮件,同时仍让它们“触发”,以便 Grafana 显示它们?

答案1

经过反复尝试后,下面的方法似乎可以解决问题:

  routes:
    - match:
        severity: 'warning'
      repeat_interval: 24h
      continue: true
    - match:
        severity: 'info'
      repeat_interval: 24h
      continue: true
      receiver: dropped

receivers:
  - name: 'admin-mails'
    email_configs:
      - to: 'admins@DOMAIN'
  - name: 'dropped'

因此,我们的想法是简单地取消配置接收器。这样,就不会再生成任何电子邮件,但警报仍会显示在 Grafana 中。

我将把这个留在这里以防其他人遇到同样的问题。

相关内容