はじめに
この記事はDatadog Advend Calender 2022 13日目の記事です。
自分が好きなSaaS No.1, 2である、DatadogとSlackの連携方法と、連携して出来ることについて書いてみます。
自分は現在、DatadogのSales EngineerとしてDatadogの技術観点の打ち合わせをさせていただいています。
その中で「Slackに通知できますか?」「プライベートチャネルにも飛ばせますか?」
といったご質問をいただくことが多いため、あらためて記事にしてみました。
なお、どちらもできます!
なにができる
まず、なにができるかについて簡単にお伝えしたいと思います。
主な機能は下記です。
- グラフ付きアラート通知
- メトリックスグラフの表示
- インシデント管理
- Workflow連携
これらの機能を活用することで、Slackでメトリックスグラフを見ながら状況確認を行い、そのままコミュニケーションが出来るのが、非常に魅力的だと感じています。
例えば、CPUの閾値アラートが上がった際、「スパイク?」「定常的に高かった?」といったことが通知と合わせて視覚的に分かるイメージです。
設定
続いて実際の設定についてみていきたいと思います。
Datadog公式ガイドの"セットアップ">"インストール"に記載の通りに設定いただく形とはなるのですが、せっかく記事にするので少し詳細に書いておこうと思います。
やることは単純で、Slackのワークスペースと連携→Slackの個別チャネルと連携、です。
流し読みいただき、実際の設定で詰まった際に活用いただけたらと思います。
では、それぞれ見ていきたいと思います。
Slack ワークスペースとの連携方法
DatadogのIntegrationsからSlackを選択し、"Connect Slack Account"を押して、アカウントを連携します。
使用方法に記載の下記コマンドで、連携したいSlackのチャネル上でDatadog(ユーザー)をInviteします。
/invite @Datadog
続いてDatadogのorgと連携します。
/datadog accounts
*なお、/datadogは下記のように/ddで短縮可能です。
/dd accounts
Slack上で下記のようなポップアップが表示されるので、初めてDatadogと連携する場合には、「Done」を押して完了です。
連携させたいDatadog Orgが一つの場合は、次の"Slackチャネルとの連携方法"に進んでください。
2つ目以降のDatadog Orgと連携させたい場合には、下記のように新規で連携したいOrgをプルダウンから選択し、"Connect"を押してください。
リダイレクトされたDatadogページのConeected Workspacesに、連携したSlackのWorkspaceが表示されていれば成功です。
Slackのポップアップ画面は「Done」で終了してください。
Slackチャネルとの連携方法
DatadogのUI上で、Integrations > Slack > Add Channelを押します。
*こちらは前述の"Slackワークスペースとの連携"が完了していることが前提となります
実際の見え方
ここからは、設定をすると実際にどのように見えるのか、具体的に見ていきたいと思います。
項目は下記です。
- グラフ付きアラート通知
- メトリックスグラフの表示
- インシデント管理
- Workflow連携
グラフ付きアラート通知
検知したメトリックスについて自動でスクリーンショット付きで通知してくれます。
スクリーンショットだけでなく、サービスの状況をまとめたDashboardのリンクや、対応手順のリンクも貼ることが可能です。
こんな感じの通知が飛ばせます。
また、アラートを簡単にミュートできる操作感も魅力の一つです。
上記スクリーンショットの一番下にあるボタンからアラート通知を任意の期間ミュートすることが可能です。
これにより、障害対応中に対応中アラート通知がガンガン飛ぶことを防ぎ、作業に集中することや不要な通知による不要な関係者の巻き込みを防ぐことが可能となります。
メトリックスグラフの表示
Slack上で、
/datadog dashboard
もしくは
/dd dashboard
を実行します。
ポップアップが表示されるので、表示させたいメトリックスグラフを選択することで、Slack上で確認することが可能となります。
Slackでインシデントの更新
ミュート同様に、受け取ったアラートからボタンクリックでインシデントを起票することが可能です。
その際、手動で入力が必要なのはSeverityのみです。また、全ての項目は後から編集が可能です。
Incidentを作成すると、Datadog上でインシデントチケットと、Slack上にインシデント対応専用のChannelが作成されます。
やり取りの一部だけをインシデントのTimelineに載せたり、インシデントのTaskに追加したりすることが可能です。
この機能により、つい障害対応優先で後回しになってしまうインシデントの"入力"や"管理"の手間を最小化し、管理のために後から対応ログをまとめるといった作業が不要となります。
Workflow連携
最後にWorkflow連携です。
まだベータ版の機能ではありますが、2022年10月のDatadog Dash でアナウンスされた
Workflow Automationを活用することで、Slackとの連携の幅が今後も広がっていく見込みです。
Workflow Automationは、スケジュール機能やリトライ機能、AWS Lambdaの関数実行など、様々な機能をWorkflowで定義して実行させる機能で、処理の中にSlackへの通知を追加できます。
より詳細についてはこちらの公式ガイドとブログを参照ください。
さいごに
以上が、DatadogとSlackの連携方法と連携してできる主な機能紹介となります。
ご興味を持っていただけた場合には、ぜひ無料トライアルでお試しください!
無料トライアルや本記事の内容についてご相談がある場合には、本記事のコメントか、Twitter(@Taka2noda)でお声がけください。
また、DatadogとSlackを組み合わせてインシデント管理をする現状と導入後のイメージについて簡単にまとめた資料が下記となります。
1年前ほど前、Datadog入社前に整理した資料とはなりますが、もしよろしければ併せてご確認ください。
以上です。ありがとうございました。