当社では、Prometheus、Alertmanager、Grafana を組み合わせて HPC コンピューティング クラスターを監視しています。当社のマシンでは、SWAP メモリが基本的に限界までいっぱいになるなどの現象が頻繁に発生しており、info
Grafana アラート ダッシュボードで対応するレベルのアラートを確認することは便利ですが、対応する電子メールは送信したくないと考えています。
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 に引き続き表示されます。
他の誰かが同じ質問に遭遇した場合に備えて、ここに残しておきます。