把 Grafana 的 Alert 訊息發到 LINE 群組

文章目錄

Grafana Alerting Notifiers

要使用 Grafana發 alert 的方法有很多, 參考這裡, 目前有 20 種, 常見的 Email, LINE, Teams, Discord, Telegram 都有支援. 比較意外的是, LINE 在 Grafana 是官方直接支援, 反而在 Prometheus 並沒有.

(Prometheus 可參考 https://stackoverflow.com/questions/53372935/how-can-i-config-prometheus-alert-with-line-notify)

前提

這裡假設你已經會用 Grafana 發 Email 通知了, 只是要再多加個 LINE 通知.

LINE Notify 設定

  1. 開一個新的聊天室, 並邀請 LINE Notify 這個帳號進入聊天室

  2. 連線到 這裡, 使用 LINE 的帳號登入

  3. 選擇 發行權杖

  4. 選擇 你要接受訊息的聊天室

  5. 把權杖 token 存下來

Grafana 設定

  1. 建立一個新的 Contact point, 從 Grafana 的 Alert 選單選擇 contact points, 設定好下列欄位:

    • Name: 這裡取名 LINE test 1
    • Contact point type: 這裡選擇 LINE
    • Token: 把前面 LINE 提供的 token 貼上去. 注意, 存檔之後就再也看不到了, 有需要的話請記得備份
    • Disable resolved message: 這個欄位的意思是, 當觸發 alert 的情況消失時, Grafana 預設是會發一個 [OK] 的訊息通知使用者已經恢復正常了, 如果你不需要, 就把他打勾.
  2. 按下 Test, 應該就會收到一個測試訊息, 如下

  3. 測試成功的話, 按下 Save contact point, 就會存檔了.

  4. 當發生 alert 時, 會收到一個 [FIRING:*] LINE 訊息(後面的數字代表 alert 的個數), 如下

  5. 當狀況消失時, 如果你沒有把上面的 Disable resolved message 關掉, 哪也會收到一個 [RESOLVED] 的 LINE 訊息, 如下