- はじめに
- 大きな流れ
- Slack api で bot の作成
- Slack ワークスペースで通知先チャンネルの設定
- Zabbix のメディアタイプ設定
- Zabbix のアクション設定で上記のメディアタイプを指定
はじめに
以前 Zabbix から Slack へアラート通知する設定をしてから時間がたっていたことで、Slack の api ページが若干表示が変更になっていたことと、前回の設定のメモがあまりにもいまいちだったので再設定を兼ねて設定方法をメモしました。
大きな流れ
- Slack の api 機能で bot を作成
- Slack ワークスペースで通知先チャンネルの設定
- Zabbix のメディアタイプ設定
- この時 slack で作成した bot の情報をパラメータとして設定
- Zabbix のアクション設定で上記のメディアタイプを指定
Slack api で bot の作成
以下の URL にアクセス
表示された画面で Your apps
を選択
表示された画面で Create New App
ボタンを選択
表示された画面で From Scratch
を選択
表示された画面で以下の情報を入力・選択して Create App
ボタンを押す
- App Name
- App の名前。任意でOK。
- Pick a workspace to develop your app in:
- App を使用する workspace を選択する。
以下の画面に遷移したら OAuth & Permission
を選択
遷移した画面で中断まで画面をスクロールし、Scopes 内の Add an OAuth Scope
ボタンを押す
表示された選択肢から chat:write
を選択
chat:write
が追加されたことを確認する
画面を上部にスクロールし、OAuth Tokens for Your Workspace 内の Install to Workspace
ボタンを押す
アクセス許可の画面が表示されるので 許可する
を選択
画面が戻ってくると OAuth Tokens for Your Workspace 内の Bot User OAuth Token
に Token が表示されているのでメモっておく
Slack ワークスペースで通知先チャンネルの設定
Slack ワークスペースの App に、先ほど作成した bot の Slack Notification from Zabbix
が表示されていることを確認
次に Zabbix からの通知を受け取りチャンネルを作成する
ここでは #zabbix_alert
として作成
チャンネルを選択して右クリック → チャンネル詳細を表示する
を選択する
表示された画面で インテグレーション
を選択し App 内の アプリを追加する
を選択する
表示された画面で、前項で作成した bot Slack Notification from Zabbix
の 追加
ボタンを押す
Zabbix のメディアタイプ設定
Zabbix にログインして 管理 → メディアタイプを選択し、その中の Slack を選択
オリジナルの設定は残しておきたいので、画面最下部に移動して 複製
を選択
複製したメディアタイプで以下の項目の設定を更新して保存する
項目 | 設定内容 | 設定例 |
---|---|---|
名前 | 任意 | Slack_Zabbix_Alert |
bot_token | Slack api で生成された Bot User OAuth Token | - |
zabbix_url | 自身の Zabbix サーバーの URL | http://192.168.1.1/zabbix |
次にテスト実行してみる。
この際以下を変更して テスト
ボタンを押す。
- channel:zabbix_alert
- event_id:1
- event_nseverity:0
- event_source:0
Slack 側で受信できたことを確認
Zabbix のアクション設定で上記のメディアタイプを指定
管理 → ユーザー で通知を実施するユーザーを選択
メディア を選択して以下のように設定
設定 → アクション で Slack に通知したいアクション設定に対して、先ほど作成したユーザーのメディアを選択して設定する