Mistake #47 : Log Noise

オオカミ少年の
サイレン

「警告!」「警告!」「警告!」。Slackに響き渡る通知音。
しかし、誰も反応しません。「あー、いつものやつだから無視でいいよ」。
そんな日常が続くある日、本当の「致命的なエラー」が届きます。
もちろん、誰も気づきません。

📢 騒音レベル診断
  • Slackのアラート用チャンネルを「ミュート」にしている
  • `[Warning] Disk usage 80%` が常に出続けて半年になる
  • エラーメールが1日100通以上届くフォルダがある
  • 障害発生時、「どのアラートを見ればいいか」で毎回迷う
⚠️ 警告:あなたの監視システムは「騒音発生装置」です。
意味のないアラートは、エンジニアの注意力を削ぐ「攻撃」と同じです。

01. 埋もれる真実

Alert-Bot 10:01
[WARN] CPU usage 82% (normal spike)
Alert-Bot 10:02
[WARN] Memory usage 75%
Alert-Bot 10:03
[CRITICAL] Database Connection Failed!!
Alert-Bot 10:04
[WARN] CPU usage 81%
Alert-Bot 10:05
[INFO] Hourly backup started

上記のようなチャンネルを、毎日真剣に見続けることは不可能です。
人間は、頻繁に発生する無視可能な刺激に対して「順化(慣れ)」を起こします。
その結果、本当に重要な `[CRITICAL]` 通知が、無害な `[WARN]` や `[INFO]` の濁流に飲み込まれます。
「オオカミが来た!」と嘘をつき続けた少年と同じ結末が、システム運用でも起こるのです。

「誰も見ないログ」を出力するな。
「誰も動かないアラート」を飛ばすな。

02. アクション可能なものだけ通知せよ

アラートの鉄則は、「受け取った人が、今すぐ何か行動を起こす必要があるか?」です。
「ディスク容量が80%になった(でも来週増設予定だから放置でOK)」なら、通知すべきではありません。
「夜中に叩き起こされてでも対応すべき事態」だけをスマホに通知し、
「明日確認すればいいこと」はレポートにまとめる。
この選別(トリアージ)こそが、SRE(サイト信頼性エンジニアリング)の第一歩です。

03. ログレベルの徹底管理

開発段階から `console.log` や `logger.error` を乱用しない教育が必要です。
一時的な通信エラーで `Full Stacktrace` を吐き出すのはやめましょう。
ログは「ラブレター」です。読み手(未来の自分や運用担当)を想って書くものです。
ノイズを減らし、シグナルを研ぎ澄ませることで、異常検知の初動は何倍も速くなります。

執筆:SRE / Observabilityチーム

「監視」ではなく「可観測性(Observability)」を追求するプロ集団。
システムの健康状態を正確に可視化し、予兆検知を実現する。