Datadog を使って Slack のユーザーグループのメンションで通知する方法
背景
アラートの通知先を Slack にしている方は多いのではないでしょうか. Datadog のようなモニタリングツールを使うと簡単に Slack 通知が出来ますが,何でもかんでも連携してしまって大事なアラートが埋もれてしまったといった経験をした方もいるのかなと思います.
そもそも論としては必要なアラートのみ Slack に通知するといったことが出来れば良いのですが,それが何らかの理由によって出来ない(今すぐには出来ない)といった方向けに Slack のユーザーグループのメンションを付けて通知する方法を Datadog を例にして紹介します.
Slack のユーザグループとは
多くの場合、ユーザーグループは連絡を一度に受け取る必要があるワークスペースのメンバーで構成されています。たとえば @マネージャーなど、ワークスペースの他のメンバーをメンションするのと同じ方法で、グループ固有の名前をメンションすることができます。
ユーザグループを作成することで1個のメンションで複数の人にメンション通知を行うことが出来ます.なのでユーザグループは部署やチーム単位で作成しているところが多い気がします.
Datadog の通知先にユーザグループを追加する方法
まずはユーザグループを Slack 上で作成します.上記のドキュメントに記載されている通り,ユーザグループはデフォルトだとワークスペースのオーナーと管理者でしか作成できる権限を持っていないので注意してください.
ユーザグループを作成したらグループ ID を取得してください.現在の Slack の GUI 上では以下の手順で確認することが出来ます.
※補足: ここが躓きポイントでした.最初グループ ID は API 経由でないと取得できないものと勘違いしており試行錯誤していましたが,上記方法で簡単に取得することができました.
グループ ID を確認できたら Datadog の MESSAGE の欄に以下の情報を記述してください.
@slack-チャンネル名
<!subteam^グループID>
※予め Datadog と Slack の連携をしておいてください.
テスト通知を行うと以下のようにユーザグループのメンションが付いて Slack に投稿されるようになります.
Discussion
Faxebookみたいにユーザーグループ検索はできないのですか。