Community研究&データ分析github.com

サイレント障害検出器

エラーモニタリングでは捉えられない無言障害を検出します。例外もクラッシュもなく、単にプロセスが沈黙した場合を発見します。

サイレント障害検出器 とは?

このスキルは、プロセスが例外やクラッシュを起こさずに単に「沈黙」する障害(サイレント障害)を検出します。ログ、ハートビート、cronジョブ、エージェントループ、データフィードなど、定期的なタイムスタンプストリームを監視し、期待される間隔(expected_interval_sec)に乗数(multiplier、デフォルト3.0)をかけた閾値よりも最後のシグナルが古い場合にSILENT状態と判定します。主なユースケースは、日次健全性チェックに組み込むための決定的で再現可能なチェックを提供することです。動作はシンプルで、入力として現在時刻、タイムスタンプ配列、期待間隔を受け取り、JSON出力としてステータス(healthy/silent)と詳細理由を返します。既知の制限として、105ケースのラベル付きデータセットで83.8%の精度(TPR 81.8%、TNR 86.0%)であり、誤りはすべて閾値付近の「グレーゾーン」(2~4倍)に集中します。実際に沈黙したストリームに対しては1ウィンドウの検出遅延が発生する可能性があり、バースト的な周期を持つストリームでは一時的な遅延による誤報が発生する可能性があります。マルチプライヤを調整することで、検出レイテンシと誤報率のトレードオフを制御できます。

対応~Claude Code~Codex CLI~Cursor
npx skills add alidoesAi/alidoesai-skills

Installed? Explore more 研究&データ分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

サイレント障害検出器 は何をしますか?

エラーモニタリングでは見えない障害を捉えます。プロセスが沈黙した状態を検出します。例外もクラッシュもなく、単に発信を停止し、数日後に気づくようなケースです。

使用するタイミング

  • 定期的なタイムスタンプストリーム(ロガー、ハートビート、cronジョブ、エージェントループ、データフィードなど)があり、期待される周期が分かっている場合、その停止を検知したいとき。
  • 検証可能で決定的なチェックを日次健全性スイープに組み込みたいとき。

動作方法(1つの調整パラメータ)

最新のシグナルが expected_interval_sec * multiplier(デフォルト multiplier = 3.0 → 約3回の欠落)よりも古い場合にSILENTと判定します。空のストリームはSILENTです。multiplierは検出レイテンシ(低いほど実際の停止を早く捉える)と、バースト的な周期における誤報(高いほど寛容)のトレードオフです。expected_interval_sec にはストリームの典型的な間隔を設定します。周期がバースト的である場合は、p95間隔近くに設定し、その旨を明記してください。

実行方法

echo '{"now": 1750000000, "expected_interval_sec": 60,
       "timestamps": [1749999940, 1749999990]}' > input.json
python3 detector.py input.json     # exit 0 = 正常, exit 1 = 沈黙(アラート対象)

またはインポート: from detector import detect; detect(now, timestamps, expected_interval_sec, multiplier=3.0)

出力

{ "status": "silent", "reason": "last signal 19880s old vs threshold 180s",
  "last_age_sec": 19880, "threshold_sec": 180.0 }

既知の制限(主張ではなく測定値 — BENCHMARK.md参照)

105ケースのラベル付きデータセットで**83.8%の精度(TPR 81.8% / TNR 86.0%)**を達成。すべての誤りは閾値付近の2~4倍の「グレーゾーン」に集中しており、明確なケースは100%正解です。 2つの正直な障害モードがあります。(1) 生存しているがたまたま3倍を超えて遅延したストリームによる誤報。(2) ちょうど停止したストリームに対する1ウィンドウの検出レイテンシ。multiplierを調整して、レイテンシと誤報率の好みに合わせてください。評価は再現可能です — 自分で再実行して数値を確認できます。

関連スキル