我們正在使用 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 中。
我將把這個留在這裡,以防其他人遇到同樣的問題。