Nova Uptime
ガイドslack-integrationalertsincident-response

アップタイムモニタリングとSlackを連携する方法:リアルタイムアラート完全ガイド

Slackでウェブサイトダウンのアラートを10分でセットアップ。インシデントを#alertsチャンネルに集約し、対応時間を30分から60秒へ短縮。 — Nova Uptimeはアップタイム、SSL、メール健全性、リンク変更を1つのダッシュボードで監視します。

SN
Sumit Nova Uptime
2026年2月24日 · 15 min read
Share:

なぜSlackアラートはメールよりも優れているのか#

メールアラートは届きます……いずれは。プロモーションフォルダに入っているかもしれません。30分後に届くかもしれません。会議中で2時間メールをチェックできないかもしれません。

Slackアラートはチームに即座に届きます。通知がポップアップし、スマートフォンが振動し、すでにコラボレーションしているチャンネルでチームが確認できます。

クリティカルなインフラ障害において、この1分の差は非常に大きな意味を持ちます。

実例: 本番APIが午後2時00分にダウンしたとします。

  • メールアラート: 2時00分に送信、受信トレイ満杯のため2時15分に到着、確認は2時45分
  • Slackアラート: 2時00分に送信、2時00分に通知ポップアップ、チームは2時02分に対応
  • 差: インシデント対応が43分早い

SaaS企業にとって、この43分の差は失われた取引と顧客信頼で$30,000以上のコストになる可能性があります。

Slack連携のセットアップ:完全ガイド#

ステップ1:アラート用Slackチャンネルを作成#

まず、モニタリングアラート専用のチャンネルを作成します。#generalや#engineeringは使わないでください。アラートが埋もれてしまいます。

Slackで:

  1. チャンネル一覧の横にある「+」をクリック
  2. チャンネル作成: #alerts(または#incident-alerts、#monitoringなど)
  3. 説明: 「ウェブサイト監視からの自動アラート」
  4. パブリックに設定(誰でも参加可能に)
  5. チャンネルの目的を説明するピン留めメッセージを投稿

ステップ2:モニタリングツールでSlack連携を設定#

Nova Uptimeの場合:#

  1. go.novauptime.comにログイン
  2. Settings → Integrationsへ移動
  3. 「Connect Slack」をクリック
  4. 「Authorize」をクリック(Slackへリダイレクト)
  5. ワークスペースを選択
  6. チャンネルを選択(#alerts)
  7. 「Allow」をクリック
  8. Nova Uptimeへ戻り認証完了が確認できます

その他のツール(Pingdom、Better Stack、UptimeRobot)の場合:#

ほとんどのツールは類似のフローです:

  1. Settings → Integrations
  2. 「Slack」を探す
  3. 「Add to Slack」をクリック
  4. 認証
  5. チャンネルを選択
  6. 確定

ステップ3:アラートの重要度とルーティングを設定#

すべてのアラートを#alertsに送るべきではありません。一部は#critical-incidentsへ、他は#ops-teamへ送るべきです。

Nova Uptimeで:

  1. ドメイン設定へ移動
  2. 「Slack Notifications」を探す
  3. 重要度レベルを設定:
    • Critical: #alerts + オンコール担当者へ@メンション
    • Warning: #alertsのみ
    • Info: #ops-internalのみ
  4. 保存

設定例:

本番Eコマースサイト (critical) → #alerts + オンコールへSMS
APIサーバー (critical) → #alerts + オンコールへSMS
社内Wiki (info) → #ops-internal
マーケティングサイト (warning) → #alertsのみ

ステップ4:アラートメッセージをカスタマイズ#

デフォルトのアラートは汎用的です。コンテキストとアクション項目が必要です。

Nova Uptimeで:

  1. ドメイン設定 → Slack Message Template
  2. メッセージをカスタマイズ:
🚨 {service_name} がダウンしています
ステータス: {status_code}
継続時間: {duration}
直近3回のチェック: {recent_checks}

考えられる原因:
{auto_diagnosis}

次のステップ:
1. 確認: ssh app-server-1 && systemctl status nginx
2. CloudWatchメトリクスでCPU/メモリスパイクを確認
3. 5分以内に解決しなければ {oncall_engineer} を呼び出す

インシデントへのSlackリンク: {dashboard_link}
  1. テンプレートを保存

これは次のメッセージよりも100倍有用です:

チェック失敗

ステップ5:連携をテスト#

Slackアラートに依存する前に、必ずテストしてください:

テスト方法1:手動アラート

  1. ほとんどのツールには「Send Test Alert」ボタンがあります
  2. クリック
  3. Slackに通知が表示されるか確認
  4. メッセージが読みやすく、すべての詳細が含まれているか確認

テスト方法2:実テスト

  1. 一時的にウェブサーバーを停止
  2. アラートを60秒待つ
  3. Slack通知が発火するか確認
  4. サーバーを再起動
  5. 「復旧」通知が発火するか確認

確認すべき項目:

  • ✓ 通知が正しいチャンネルに表示される
  • ✓ メッセージが読みやすく、サービス名が含まれる
  • ✓ メッセージにステータス/継続時間情報が含まれる
  • ✓ メッセージにアクション項目が含まれる
  • ✓ 復旧通知も送信される(障害だけでなく)
  • ✓ 設定した@メンションが機能する

ステップ6:アラートのスレッド化を設定#

複数のサービスが障害になった場合、Slackのスレッドを使うとアラートが整理され、チャンネルが氾濫しません。

Slackで:

  1. チャンネル設定へ移動
  2. 「Threading preferences」を探す
  3. 設定: 「Always use threads for replies」
  4. メッセージは線形リストではなくスレッドで整理されます

結果:

#alerts チャンネル
├─ 午後2時00分: ウェブサイトダウン (スレッド: 3返信)
│  ├─ ステータス更新: 調査中
│  ├─ ステータス更新: 根本原因特定
│  └─ ステータス更新: 修正完了
├─ 午後2時15分: APIが遅い (スレッド: 2返信)
│  ├─ ステータス更新: インスタンスをスケールアップ
│  └─ ステータス更新: 解決
└─ 午後2時30分: メール配信劣化 (スレッド: 1返信)

15個の別々のメッセージよりずっとすっきりしています。

高度なSlack連携パターン#

パターン1:クリティカルインシデントへの@メンション#

クリティカルインシデントの場合、自動的にオンコール担当者へ@メンションします。

セットアップ:

  1. オンコールスケジュールを作成(GoogleカレンダーまたはPagerDutyを使用)
  2. モニタリングツール: オンコールスケジュールにリンク
  3. クリティカルインシデント発生時、ツールが「現在誰がオンコールか?」を問い合わせ
  4. Slackメッセージを送信: 「@alice あなたのウェブサイトがダウンしています」

これにより、チェックされていない可能性のあるチャンネルに埋もれることなく、メッセージが適切な人へ即座に届きます。

実装:

  • Better Stack: PagerDutyスケジュールと連携
  • Nova Uptime: オンコールメンション付きSlack連携(Pro+)
  • UptimeRobot: Zapierまたはカスタムウェブフックが必要

パターン2:エスカレーションラダー#

異なるアラートタイプには異なる対応が必要です:

Tier 1: Critical (即座に呼び出し)

送信先: #alerts + @on-call-engineer
形式: 🚨 {service} ダウン
メンション: あり、エンジニアを名前でタグ

Tier 2: Warning (この1時間以内に調査)

送信先: #alertsのみ
形式: ⚠️ {service} 劣化
メンション: なし、チームが対応者を判断

Tier 3: Info (定例ミーティングで確認)

送信先: #ops-internalのみ
形式: ℹ️ {metric} 傾向あり
メンション: なし

Slackチャンネル設定:

#alerts → Tier 1用 (全員参加)
#ops-internal → Tier 2/3用 (運用チームのみ)
#monitoring → サマリーレポート用 (経営層)

パターン3:インシデントステータス用カスタムリアクション#

スレッドを散らかさずにインシデントステータスを追跡するために、Slackの絵文字リアクションを使用します:

  • 🚨 = アラート発生(デフォルト)
  • 🔍 = 誰かが調査中
  • 🔧 = インシデント修正中
  • ✅ = 解決
  • 📋 = ポストモーテム予定

エンジニアは元のアラートメッセージにリアクションしてステータスを示すことができます:

午後2時00分: ウェブサイトダウン 🚨 → 🔍 → 🔧 → ✅
1つのメッセージでインシデントの進捗が分かる

パターン4:インシデント追跡との連携#

クリティカルアラート発生時に、JiraチケットまたはIncident.ioインシデントを自動作成します。

ワークフロー:

Nova Uptimeでアラート発生
→ Slack #alertsへ送信
→ Slackワークフロー起動
→ Jiraチケット自動作成
→ スレッドにJiraリンク投稿
→ チームはアラートと追跡チケットの両方を保持

セットアップ方法(Slack Workflows):

  1. #alertsチャンネル設定へ
  2. ワークフロー追加: 「アラートメッセージ投稿時」
  3. アクション: 「Jiraイシュー作成」
  4. フィールドマッピング: アラートタイトル → Jiraタイトル、アラート詳細 → 説明
  5. JiraリンクをSlackに返信

パターン5:日次/週次アラートダイジェスト#

日中に#alertsで50件のアラートを受け取る代わりに、サマリーを取得します。

セットアップ:

  1. モニタリングツール → Integrations → Slack
  2. 「Daily Digest」を有効化
  3. 時間: 平日午後5時
  4. チャンネル: #monitoring-digest

ダイジェスト例:

📊 アラートサマリー — 2026年2月20日

クリティカルインシデント: 1件
├─ ウェブサイトダウン (午後2時00分-2時05分) - 解決済み

警告: 3件
├─ API応答時間遅延 (複数回)
├─ メール配信劣化 (2回)
└─ データベース接続スパイク (1回)

情報: 12件 (ドメイン期限切れ、更新など)

チームパフォーマンス:
- 平均MTTR (平均復旧時間): 4分
- 誤報率: 2%
- ページ応答時間: 平均1.2秒

これにより、アラートノイズでチームを圧倒することなく、経営層に可視性を提供できます。

よくあるSlack連携の間違い#

間違い1:すべてのアラートを#generalに送る#

問題: #generalにはすでに1日500件のメッセージがあります。アラートが即座に埋もれます。

解決策: 専用の#alertsチャンネルを作成。チームの主要なインシデント対応チャンネルにします。

間違い2:連携をテストしない#

問題: 数週間前にSlack連携を設定。最初のリアルインシデント発生時、連携が壊れていてアラートが発火しません。

解決策: 月次でテスト。意図的にアラートをトリガーし、Slack通知が届くか確認します。

間違い3:アラートメッセージが曖昧すぎる#

問題: Slack通知: 「チェック失敗」

  • チームは何が失敗したか分からない
  • チームは何をすべきか分からない
  • 詳細を得るためにダッシュボードへのクリックが必要

解決策: Slackメッセージにすべての詳細を含める:

  • サービス名
  • ステータスコード
  • 継続時間
  • アクション項目
  • ダッシュボードへのリンク

間違い4:アラートが多すぎる#

問題: 1日50件のSlackアラート → アラートを無視し始める → リアルインシデントを見逃す

解決策: アラートしきい値を使用。複数の確認を要求。クリティカルアラートのみSlackへ送信。

間違い5:アラートはあるがフォローアッププロセスがない#

問題: アラート発生、チーム対応、インシデント解決。誰も何が起きたかドキュメント化しない。

解決策: ポストインシデントルーティンを作成:

  1. インシデント解決
  2. 誰かがスレッドに投稿: 「明日午後2時にポストモーテム」
  3. ポストモーテム実施
  4. 根本原因と防止策をrunbookに追加
  5. アラートチューニングへフィードバック

Slackアラート対応ワークフロー#

よく調整されたチームの対応例:

T+0:00 — アラート発生#

🚨 ウェブサイトダウン
ステータス: HTTP 503
継続時間: 30秒
最終チェック: 午後2時00分15秒

CPU: 95%
メモリ: 87%
アクティブ接続: 2,400

➜ app-server-1へSSH
➜ 確認: top | grep node

T+0:30 — 初動対応#

Aliceが🔍絵文字でリアクション(調査中)

Alice: 「いま確認中… nodeプロセスがクラッシュしたようです」

T+1:00 — 根本原因特定#

Aliceが🔧絵文字でリアクション(修正中)

Alice: 「v3.2.1のメモリリーク。v3.2.0へロールバック中」

T+2:00 — 解決#

Aliceが✅絵文字でリアクション(解決)

Alice: 「サイト復旧。MTTR: 2分」

T+24:00 — ポストモーテム#

Alice: 「ポストモーテム: nodeイベントリスナーのメモリリーク。
次回リリースで修正。PR: github.com/...
メモリ>85%のアラートを追加」

このワークフローは以下の場合にのみ可能です:

  1. アラートがSlackで発生(チームに即座に届く)
  2. アラートにコンテキストが含まれる(CPU、メモリ、ステータスコード)
  3. チームが何をすべきか知っている(アラート内のアクション項目)
  4. チームが学びをドキュメント化(再発防止)

Slack連携の成功を測定する#

1ヶ月後、以下を追跡します:

  1. アラート検出速度: 障害からSlack通知までの時間

    • 目標: 60秒未満
  2. チーム対応速度: 通知から対応までの時間

    • 目標: クリティカルで5分未満
  3. MTTR (平均復旧時間): アラートから解決までの時間

    • 目標: クリティカルで10分未満
  4. 誤報率: 実際の問題がないアラートの割合

    • 目標: 5%未満
  5. アラート信頼度: チームへ調査: 「モニタリングアラートを信頼していますか?」

    • 目標: 90%以上のYES

いずれかのメトリクスがずれている場合、調整します:

  • 通知が遅い? ウェブフック配信を確認
  • 対応が遅い? クリティカルに@メンションが必要かも
  • 誤報率が高い? しきい値を厳しく
  • 信頼度が低い? メッセージが曖昧すぎる

まとめ:Slack連携チェックリスト#

  • ✅ #alertsチャンネルを作成
  • ✅ モニタリングツールをSlackへ接続
  • ✅ 重要度ルーティングを設定 (critical → @メンション、info → #ops-internal)
  • ✅ コンテキストとアクション付きでアラートメッセージをカスタマイズ
  • ✅ 連携をテスト (手動でアラートをトリガー、Slackメッセージを確認)
  • ✅ ステータス追跡用の絵文字リアクションを設定
  • ✅ ポストインシデントドキュメント化ルーティンを作成
  • ✅ MTTRと誤報メトリクスを追跡
  • ✅ 月次の連携ヘルスチェック
  • ✅ 各アラートタイプ向けのrunbookをドキュメント化

今日から始める

今日、アップタイムモニタリングをSlackと連携しましょう。10分で完了し、インシデント対応時間を大幅に節約できます。

Nova Uptimeを使う場合、Settings → Integrationsへアクセスし、「Connect Slack」をクリックしてください。1分間隔チェックで10個のドメインアラートが無料でご利用いただけます。クレジットカード不要です。

インフラ障害発生時、チームは5つの異なるダッシュボードを確認する必要はありません。何が問題で、どう対処すべきかを正確に伝える、1つのSlack通知が必要なのです。

Monitor Your Website Before It Goes Down

Get uptime monitoring, SSL tracking, domain expiry alerts, and email health checks. Free plan — no credit card required.

Start Monitoring Free

関連記事