ウェブサイトがダウンしたときに Slack アラートを設定する方法
Slack は 2026 年のほとんどのエンジニアリングチームのデフォルトアラートチャネルです。セットアップ自体に 10 分かかります。正しく設定する(チャネルが実際のインシデント時に役立ち、静かな週に無視できるように)には、もう少し思考が必要です。このガイドでは、実用的なセットアップ、アラートスパムを防ぐルーティングルール、そしてチャネルを何年も快適に保つための細かな工夫をカバーしています。
10 分間のセットアップ
標準的なパターンではSlackのIncoming Webhooksを使用します。アラート用の専用チャネル(通常は#alertsまたは#ops-alerts)を作成し、Incoming Webhookアプリを追加して、そのチャネルを指定し、生成されたURLを監視ツールの新しいSlack通知チャネルに貼り付けます。
ほとんどのアップタイム監視ツールは、監視対象の名前、失敗の理由、該当する場合はステータスコード、およびダッシュボードへのリンクを含む形式化されたメッセージを送信します。統合をテストする前に意図的な失敗でテストしてください。意図的に壊されたURLを指した監視は、実行できる最も安価なエンドツーエンドテストです。
アラートスパムを防ぐ4つのルーティングルール
1四半期に1つのアラートを受け取るチャネルは人々に注視させます。1週間に50のアラートを受け取るチャネルは人々をミュートさせます。4つのルーティングルールはアラートとシグナルの比率を正直に保ちます。
- チャネルへのページング前に、少なくとも3つの連続する失敗のしきい値アラートを設定。1つ逃したチェックはノイズです。3つ連続がシグナルです。
- 復旧メッセージを失敗と同じチャネルで送信。解決されたインシデントには終了メッセージが必要です。チャネルが永遠に赤く見えないようにするためです。
- 本番環境とステージング環境で別々のチャネルを使用。ステージングアラートは#ops-staging-alertsへ、本番環境アラートは#ops-prod-alertsへ送信します。相互汚染は両方のシグナルを殺します。
- 最優先度サービスのモニターごとのルーティング。顧客向けチェックアウトモニターは、より重いオンコール対応が必要な別の#ops-incidentsチャネルへ。
実際に役に立つメッセージ形式
監視ツールからのデフォルトSlackメッセージは通常十分です。改善は1つか2つのカスタム追加から始まり、実際のインシデント時に活躍します。
ランブックリンクがあれば含めてください。アラートメッセージの下部にインシデント対応ランブックへのリンクを追加することで、午前3時にオンコール対応エンジニアの時間を90秒節約できます。モニターが最近フラップしている場合は、前回赤くなった時刻のタイムスタンプを含めてください。繰り返しインシデントはポストモーテム中の診断に非常に価値があります。
Slackでは不十分な場合
Slackはチャットチャネルであり、ページングシステムではありません。3つの障害モードはSlackにアラートを追加しても解決されません。
- 夜間インシデント - Slackを誰も見ていないときに発生。営業時間外のカバレッジのために、ページングツール(PagerDuty、Opsgenie、Better Stack On-Call)がSlackチャネルに上乗せされる必要があります。
- モバイル通知の喪失。Slackモバイルアプリは、低信号期間中に通知をバッファリングできます。重大なアラートにはSlackを完全にバイパスする別のチャネルが必要です。
- チャネルミュートまたはフォーカスモード。SlackのDND設定はアラートをサイレンスします。ページングツールはDNDを無視します。
チャネルを有用に保つ衛生管理
3つの小さな習慣が、6ヶ月経った後もSlackアラートチャネルを快適に保ちます。
ランブックメッセージをチャネルの上部に固定します。アラートが調査中の場合は親指を立てた絵文字でリアクションして、他の読者に対応中であることを知らせます。四半期ごとにアラートボリュームを見直し、シグナルより多くノイズを出しているモニターを削除します。毎四半期にクリーンアップされるチャネルは、数年間有用です。
30分で始められるセットアップ
#ops-alerts と #ops-incidents を別々のチャネルとして作成します。各チャネルに Slack Incoming Webhook を追加します。監視ツールを設定して、3 回連続の失敗しきい値で DOWN イベントを #ops-alerts に送信します。最優先度の顧客向け監視対象を代わりに #ops-incidents に送信します。UP リカバリメッセージを両方に追加します。実行ブックメッセージをピン留めします。意図的に破損した監視対象でテストします。所要時間: 30 分。価値: 今後のすべてのインシデントは Slack でクリーンでスキャン可能な履歴を持ちます。
関連記事
モニタリングツールから署名付きウェブフックアラートを設定する方法
モニタリングツールからウェブフックアラートを受信し、HMACシグネチャを検証し、PagerDutyまたは独自のシステムと統合する方法。
How to Write an Incident Response Runbook (With Templates)
A practical structure for incident runbooks that on-call engineers actually use, with copy-able templates for the three common incident types.