# Automatic Metric Screening for Service Diagnosis
**著者**: [[Yu Chen (Baidu)]]
**所属**: [[Baidu]]
**会議**: SREcon18 Americas(Santa Clara, CA, 2018-03-29 14:50–15:10)
**公式ページ**: https://www.usenix.org/conference/srecon18americas/presentation/chen
**原本**: `.raw/slides/srecon18americas_slides_chen/srecon18americas_slides_chen.pdf`
---
## 概要
このスライドは、サービス障害時にオンコールエンジニアが多数のメトリクスを調べる負荷を、自動メトリクススクリーニングで減らす方法を説明する。依存グラフ上で上流から下流へモジュールを調べる診断作業を前提にしつつ、ゴールデンメトリクスを手動設定せず、全モジュール・全メトリクスから異常なインスタンス群とメトリクス群を推薦する。後続の FluxRank 論文([[@2019__ISSRE__FluxRank - A Widely-Deployable Framework to Automatically Localizing Root Cause Machines for Software Service Failure Mitigation]])と同じ問題系に属するが、本発表は SRE 実務者向けに「診断時間削減」と「手動設定削減」を中心に整理している。
## 主要メッセージ
- サービス障害診断では、ユーザーから見た PV 喪失などの症状を起点にコールグラフを取得し、上流から下流へモジュールを確認し、特定メトリクスを見て根本原因モジュールを決める。この手順は人間の知識・経験に依存し、サービス規模が大きくなるほど退屈で誤りやすい。(p.2–4)
- 半自動方式では、継続的に変わるコールグラフの同期、障害種別ごとのゴールデンメトリクス設定、データセンターごとの複数コールグラフ管理がボトルネックになる。(p.6)
- 自動メトリクススクリーニングはゴールデンメトリクスに依存せず、全モジュール・全メトリクスを調べ、異常メトリクスを持つインスタンス群を読みやすい推薦として返す。(p.7)
- 評価では Linux 標準システム性能指標を使い、70 件の履歴ケース中 60 件で根本原因ダイジェストを top 1 に順位付けした。人間の診断時間は 6〜152 分(平均 35 分)で、アルゴリズム実行時間は 6 分以下である。(p.14)
## 視覚的に重要な図表
**p.8 スクリーニング処理フロー**
![[_attachments/srecon18americas_slides_chen/page-008.png]]
メトリクスを異常度測定し、インスタンス単位にまとめ、クラスタリングでダイジェストを作り、ランキングして推薦する流れを示す。
**p.11 KDE による異常度測定**
![[_attachments/srecon18americas_slides_chen/page-011.png]]
過去データからカーネル密度推定で分布を作り、上振れ/下振れ確率の対数で複数メトリクスの異常度を結合する。
**p.12 クラスタリング**
![[_attachments/srecon18americas_slides_chen/page-012.png]]
同一モジュール×データセンター内のインスタンスを DBSCAN でクラスタリングし、ダイジェストを「インスタンス集合 + 異常メトリクス集合」として作る。
**p.13 ダイジェスト順位付け**
![[_attachments/srecon18americas_slides_chen/page-013.png]]
インスタンス比率、異常メトリクス数、異常度を特徴量として、ダイジェストを順位付けする。
**p.14 オフライン評価結果**
![[_attachments/srecon18americas_slides_chen/page-014.png]]
70 件の履歴ケースに対し 60 件で根本原因ダイジェストが top 1 になり、手動診断平均 35 分に対し実行時間 6 分以下と示す。
## 概念・実体への接続
- [[Fault Localization]]: 本発表は、根本原因を直接説明するよりも、緩和のために見るべきモジュール・インスタンス・メトリクスの候補を上位に出す障害箇所特定である。
- [[RCA入力選別]] / [[特徴量削減]]: 全メトリクスから、調査すべき異常メトリクス集合とインスタンス集合へ圧縮する。LLM 以前の統計的な入力選別として読める。
- [[異常検知]]: 障害前 60 分と障害後 5 分の条件付き確率を KDE で比較し、単点確率の上振れ/下振れを異常度にする。
- [[Yu Chen (Baidu)]]: SREcon17 Asia のアラート疲労対策、SREcon18 Americas のメトリクススクリーニング、ISSRE 2019 の FluxRank 共著が一連の Baidu SRE/AIOps 実践としてつながる。
## 限界・不確実点
- 音声は保存されたが、transcript は生成できなかった。口頭説明・質疑は未反映である。
- p.13 の表に載るメトリクス例は読めるが、完全なランキングモデルの詳細はスライドだけでは不足する。後続の FluxRank 論文が詳細根拠になる。
- スライドでは 70 件中 60 件 top 1 と示す一方、後続論文では 70 件中 55 件 top 1 など評価設定が異なる。評価データや定義の差は本スライドだけでは確定できない。