根據嚴重性禁用 Prometheus Alertmanager 的電子郵件

根據嚴重性禁用 Prometheus Alertmanager 的電子郵件

我們正在使用 Prometheus、Alertmanager 和 Grafana 的組合來監控 HPC 計算群集。在我們的機器上,諸如 SWAP 內存填滿基本上達到限制之類的情況經常發生,雖然在 Grafana 警報儀表板中查看相應級別的警報很有用info,但我們最好不要發送相應的電子郵件。

有沒有辦法靜音/停用所有設定檔info中具有嚴重性的警報電子郵件alertmanager.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 中。

我將把這個留在這裡,以防其他人遇到同樣的問題。

相關內容