【現場で泣かない】インフラ監視の運用設計ガイド|アラート疲れを防ぐ閾値設定の極意

もっち

大手SIerに18年勤務。オンプレ・クラウド計200台規模の大規模インフラ(10システム)を統括する現役のサービスマネージャーです。

レベル別記事一覧

▼▼▼まずはここからチェック!


「深夜2時に緊急アラートで叩き起こされたが、確認したら『いつもの一時的なCPUスパイク』で静観して二度寝した」

「毎日何十通も届く監視メールを、フィルタで未読のまま専用フォルダに流している」

インフラ運用の現場で、こうした「アラート疲れ(Alert Fatigue)」に悩まされてはいないでしょうか。

不要な通知が日常化すると、現場の集中力や体力が削られるだけでなく、本当に危険なクリティカル障害の予兆を見落とす致命的な事故につながります。この「静観するだけの作業」は、SRE(Site Reliability Engineering)が最も避けるべき「トイル(運用上の無駄な労力)」そのものです。

アラート疲れの根本原因は、監視ツールの設定値ミスではなく「監視の運用設計」が曖昧なまま運用を回していることにあります。

Zabbix、Datadog、Prometheus、AWS CloudWatchなどのツールを導入しても、設計思想がなければ通知の山に埋もれてしまいます。

オンプレ・クラウド合わせて200台規模の大規模インフラを統括してきた現場経験から断言できるのは、「優れた監視設計とは、通知が届いた瞬間に担当者の次の一手が確定している状態を作ること」です。

監視項目の選定基準から重要度(Severity)の定義、現場が破綻しないエスカレーションフロー、継続的なチューニング手順まで、実務でそのまま使える監視運用設計の全体像を解説します。

この記事の想定読者

  • 連日の不要な夜間コールや通知対応で疲弊している運用担当者
  • クラウド移行に伴い監視設計や通知基準の見直しを迫られたエンジニア
  • アラートの形骸化や重要障害の見落としを防ぎたいチームリーダー

この記事を読むことでのメリット

  • 不要なアラートを削減し夜間や休日の精神的負担を大幅に軽減できる
  • 「鳴ったら動く」明確な基準ができ重大障害の初動を迅速化できる
  • 属人化を排除した持続可能な監視体制とエスカレーションを構築できる
目次

なぜアラート疲れが起きるのか?監視運用設計で押さえるべき「3つの鉄則」

監視設計で最も意識すべきなのは、メトリクスを収集すること自体ではなく、「異常を検知した人間(または自動復旧スクリプト)が迷わずアクションを起こせる状態(Actionable)を担保すること」です。

破綻しない監視体制を築くために、設計の根底に据えるべき「3つの鉄則」を押さえましょう。

  • 原則1:アクション不要な通知は絶対に飛ばさない(オオカミ少年化の防止)「とりあえず知らせておく」通知は現場の危機感を麻痺させます。人間が何かしらの判断・調査・復旧作業を行わない通知は、チャットやメールに発報せず「ログ記録(Info)」に留めます。
  • 原則2:検知と対応責任(担当チーム)を1対1で紐付けるアプリ起因のエラー通知がインフラチームに届いても、調査できずに放置されます。「誰が対応すべきアラートなのか」を明確にし、通知先チャンネルをチーム単位で分離します。
  • 原則3:監視は「作って終わり」ではなく定期チューニングするアクセスの増加や新規リリースによって、正常値のベースラインは日々変化します。定期的に「不要だったアラート」を棚卸しするサイクルを設計段階から組み込みます。

監視設計の4階層モデル|外形監視からリソース・死活監視の項目一覧

「何を監視すべきか」を網羅的かつ過不足なく整理するために、システムを以下の4階層(レイヤー)に分解して設計します。

階層監視種別主な監視項目・手法目的・検知内容主なツール例
L1: 外形・サービス外形監視 / シナリオ監視HTTPステータス、レスポンス速度、SSL証明書期限エンドユーザー視点でサービスが正常に利用可能かDatadog, Pingdom, CloudWatch Synthetics
L2: アプリ・ミドルプロセス監視 / ログ監視Web/DBプロセス死活、Error/Fatalログ、コネクション数アプリケーションが意図通りにリクエストを処理しているかNew Relic, Fluentd, OpenTelemetry
L3: OS・リソースリソース監視 / メトリクスCPU使用率、メモリ枯渇、ディスク使用率、Disk I/Oサーバ資源の逼迫、将来のキャパシティ不足の予兆検知Zabbix, Prometheus, CloudWatch
L4: ハード・NW死活監視 / 機器監視ICMP Ping、Port死活、SNMPトラップ、ハード障害物理基盤・ネットワーク導通・ハードウェア健全性の担保Zabbix, SNMP監視

ブラックボックス監視とホワイトボックス監視の役割分担

  • ブラックボックス監視(L1): 外側から「ユーザーに影響が出ているか」を検知します。深夜に即時対応が必要なアラートの多くはここに該当します。
  • ホワイトボックス監視(L2〜L4): サーバ内部から「なぜ異常が起きているのか(原因)」を特定・予兆検知します。日中のキャパシティ管理やトラブルシューティングに活用します。

アラート重要度(Severity)と通知設計マトリクス

すべてのアラートを同じ温度感で通知すると現場がパンクします。重要度(Severity)を4段階に定義し、通知手段と目標初動時間を厳格に分けます。

重要度定義・影響範囲主な通知手段一次対応の目安具体例
Emergency (緊急)サービス全停止、重大なデータ破損・セキュリティインシデント自動架電 (PagerDuty/Opsgenie) / 電話即時(24h/365d)DBクラスタ全断、主要エンドポイント死活断
Critical (重大)冗長系の片肺運転、一部機能停止、急激なリソース枯渇チャットメンション (@channel) + SMS15〜30分以内Webサーバ1台ダウン、ディスク使用率90%超
Warning (警告)業務影響なし、将来的な障害の予兆、一時的なスパイクチャット(通常チャンネル通知) / メール日中帯・翌営業日ディスク使用率80%超、夜間バッチの一時遅延
Info (情報)定常作業の完了通知、デプロイログ、監査ログダッシュボード / ログ基盤蓄積対応不要(記録のみ)日次バックアップ完了、デプロイ成功通知

💡 アラートの目標初動時間は「SLA」から逆算する

「Emergencyは即時、Criticalは30分以内」といった重要度基準を現場の感覚だけで決めると、ビジネス側の要求とのギャップが生じます。

特にクラウドとオンプレミスが混在する環境では、どこまでを自社責任として稼働率を保証するかの「責任分界点」が重要になります。監視の基準となるSLA・SLOの策定手順については、以下の記事で詳しく解説しています。

障害対応が破綻しない監視運用フロー|Runbook連携とフラッピング対策

アラートが発報された後の「人間の動き」を設計しておかなければ、どれだけ高機能な監視ツールを入れても障害対応はスムーズに進みません。

一次切り分け手順(Runbook)のリンク化

アラート通知を受け取った担当者が「まず何をすればいいか」で迷わないよう、通知メッセージ内に該当アラートの「対応手順書(Runbook)直リンク」を必ず含めます。

【通知メッセージのフォーマット例(Slack/Teams)】
🔴 [Critical] Web-Server-01: CPU使用率が90%を超過しました (継続時間: 5分)
--------------------------------------------------
・発生日時: 2026-08-26 02:15:00 JST
・対象ホスト: web-prod-01 (192.168.10.15)
・現状値: 94.2% (閾値: 90.0%)
・一次切り分け手順: https://wiki.example.com/runbook/cpu-spike
・推奨アクション: 
  1. `top -c` で高負荷プロセスを特定
  2. 対象プロセスがゾンビ状態の場合は再起動手順を実施
・エスカレーション先: インフラ運用一次チーム / アプリ開発A班
--------------------------------------------------

アラート通知を受け取った担当者が迷わず一次切り分けを進められるよう、Runbookには「原因ログを瞬時に抽出するコマンド」を明記しておくことが重要です。

障害発生時に数GBの巨大ログからエラーを数秒で特定する基本コマンドの手順は、以下にまとめています。

計画メンテナンス時の「アラート抑止(サイレント)ルール」

深夜リリースや定期バックアップのタイミングでアラートが鳴り響くと、他の重大な異常を見落とす原因になります。作業開始前に監視ツール側で該当ホストの通知を一時停止(ミュート・メンテナンスモード)するフローを標準化します。

フラッピング(検知と復旧の繰り返し)の防止

CPU使用率やメモリ使用率が閾値(80%)を行き来するたびに通知が連発する「フラッピング」を防ぐため、以下の2つの設定を基本とします。

  • 遅延評価(Duration): 「3回連続で閾値を超えた場合(例:3分間継続)」にのみ発報する。
  • ヒステリシス(復旧閾値): 発報閾値が80%の場合、復旧通知は70%を下回った時点で行う(バタつきを防止)。

💡 監視設計から「インフラ運用設計全体」へステップアップしたい方へ

適切な監視体制が整っても、「バックアップ運用の設計」「パッチ適用の段取り」「障害連絡体制」など、システム運用全体の設計が抜けていると現場の疲弊は防げません。

  • 監視項目・通知ルールの網羅性チェック
  • バックアップ・リストア運用の要件定義
  • 障害エスカレーションと責任分界点

現場で泣かないための運用設計項目を漏れなく確認したい方は、以下のチェックリストもあわせてご活用ください。

アラート疲れを撲滅する「定期見直し(棚卸し)サイクル」

システムリリース当初に設定した閾値は、アクセスの増加やアプリの改修によって必ず実態とズレが生じます。監視設計を形骸化させないために、月1回の「アラート棚卸しミーティング」をルーティン化します。

棚卸しで実行する3つのステップ

  1. 月間発報数ワースト5の特定月間で最も多く鳴ったアラートを抽出し、その大半が「静観」で済んでいた場合は、閾値の緩和または監視項目の削除を行います。
  2. 「静観」判断されたアラートの格下げ発報しても誰も手を動かさなかった通知は、実質的にWarningではなくInfoです。チャット通知を即座に停止し、ダッシュボード確認のみに切り替えます。
  3. キャパシティ予測と閾値の連動データ増加ペースに合わせて、ディスク監視の閾値を「パーセンテージ(80%)」から「残容量(残り50GB、または枯渇予測日まであと14日)」へと変更し、計画的な増設対応にシフトします。

💡 リソース監視で最も誤解されやすい「メモリ閾値」の罠

OSのリソース監視でよくある失敗が「メモリ使用率80%」で一律にアラートを飛ばしてしまう設定です。Linux/Windowsのメモリ管理(キャッシュ機構やページング)を理解していないと、無害なアラートで疲弊します。

現場で本当に設定すべき「意味のあるメモリ監視の閾値」については、以下の実践解説をご覧ください。

まとめ:監視設計の完成度は「通知が鳴らない平穏さ」で決まる

監視運用のゴールは「たくさんの通知を素早く捌くこと」ではありません。「本当に危険なときだけ通知が鳴り、鳴ったときには迷わず対処できる状態」を作ることです。

  • アクション不要なアラートはすべて捨てる
  • 4階層モデルで監視の死角と重複をなくす
  • 重要度(Severity)に合わせて通知手段を使い分ける
  • 通知メッセージに対応手順(Runbook)を直結させる
  • 月1回の棚卸しで「静観アラート」を徹底的に間引く

まずは直近1ヶ月で「鳴ったけれど何もしなかったアラート」を1つ特定し、通知条件をチューニングすることから始めてみてください。その小さな1歩の積み重ねが、深夜障害に怯えない強いインフラ基盤と、自走できる運用チームを作ります。


障害検知・切り分けの後は「迅速な状況報告」が不可欠です。

アラートを検知して一次対応を行った後は、マネージャーや関係部門へ「何が起きていて、いつ復旧見込みなのか」を簡潔に伝えなければ現場の混乱は収まりません。

障害発生時に上長が本当に求めている報告の型については、以下の記事を参考にしてください。

🎁【無料】実務で役立つテンプレート・まとめシートを配布中!

記事内で紹介した実務で即使える設計書テンプレートのサンプルや、便利なまとめシートなどを専用ページにて配布しています。

X(@infra_mocchi)の固定ポストから認証キー(合言葉)を入手し、特典ファイルを無料でダウンロードできます。

※認証キーは、X(@infra_mocchi)の固定ポストにて公開中!

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

レベル別記事一覧

▼▼▼まずはここからチェック!

目次