[[research/tsifter/TSifter]] + Fault Localizationの性能の改善案を次に列挙する。
- [x] フェーズごとの正解定義が必要
- フェーズ1は最低限必要なメトリクス 最大公約数的
- フェーズ2 最小公倍数的
- [x] [[Prometheus]] exporterメトリクスを除外する
- [ ] 代表メトリクスとして異常度最大のメトリクスを選ぶオプション
- [x] [[Sock Shop]]で[[2020__IPCCC__FluxInfer―Automatic Diagnosis of Performance Anomaly for Online Database System|FluxInfer]]を試す
- [ ] [[TrainTicket]]で[[2021__ISSRE__Identifying Root-Cause Metrics for Incident Diagnosis in Online Service Systems|PatternMatcher]]を試す
- [ ] 障害検知箇所から変化点検知して、遠いほど重みを大きくする
- [[SLI]]の変化点よりも後ろの変化は除外する 重みを小さくする
- [x] [[TSifterのクラスタリングで最大のクラスタに故障箇所があると仮定]]
- [x] ピアソンで最大クラスタを選んだあとに、さらに[[Shape-based distance|SBD]]でクラスタリング+代表メトリクス
- [ ] 階層的な局在化:FluxInferのスコアランクからマイクロサービス単位で特定 -> ロール単位特定 -> メトリクス特定
- マイクロサービス単位で特定
- 全体無向グラフ + Pagerankをつくって、サービスメトリクスのスコアを比較 -> うまくいかない
- サービスメトリクスのみでWUDG+PageRank
- コンテナメトリクスもあわせて、WUDG+PageRank+ランクの偏りをみる -> うまくいなかった
- サービスごとのPageRankのスコア平均を比較し、最大のサービスを選択する
- [[2020__IWQoS__Localizing Failure Root Causes in a Microservice through Causality Inference|MicroCause]]を使う
- サービス特定後
- 当該サービス内の全メトリクスで、無向グラフ+PageRank
- 同等のことをPatternMatcherでやる
- [x] 同一のシーケンスをもつ時系列をひとつだけ残して削除
- [x] WUDG(ネットワーク依存のみ有向グラフ) + PageRank
- [ ] [[ピアソン相関係数]] VS SBD-horizontal revert
- [ ] FluxInferに異常度を加味したい アウトプットのrankに異常度をかける
- [x] pagrank score x -log 異常度 (0 <= x <= 1)
- [x] Personalized PageRank
- 異常度をPersonalizationに設定 -> メトリクスtop-kは劣化、コンテナtop-kは向上 top-3 0.67
- [ ] FluxInferにエッジ方向づけ
- [ ] FluxInferで[[G2検定]]を試す
- top-2で0.6になった
- 非負整数を保証するために、monotonic interpolation (Pchip)を使う -> 両側は保証できない
- なぜか最初から負数のデータ点がある -> interpolationしたあとで負数を0に置換
- そもそも、G2検定の実装を間違えていた。入力に時系列そのものではなく頻度表をわたさないといけない。
- [x] ランキング化するときにサービスメトリクスを除外する -> わずかにスコアがあがった
- [ ] [[2021__CLOUD__Causal Modeling based Fault Localization in Cloud Systems using Golden Signals|Aggarwal+, CLOUD2021]]に触発された手法を試す
- SLIメトリクスとサービスメトリクスとの間で、因果グラフを構築する
- PCアルゴリズム + fisher-z検定によるCITEST + PageRank
- SLIメトリクスと他の全メトリクスとの間で、因果グラフを構築する
- PCアルゴリズム + fisher-z検定によるCITEST + PageRank
- [ ] PCアルゴリズムを再度
- [ ] 最大のグラフを取得して、SLIメトリクスとの因果は別途構築する
- 今でも最大のサブグラフを取得している?
- [x] [[NOTEARS]]を試す
- 実行時間が遅い
- [ ] PatternMatcherのスコアと依存グラフを組み合わせて、Personalized PageRank
- [ ] 入力データのメトリクスを手動で絞り込む
- コンテナメトリクスも基本のみ
- ミドルウェアメトリクスを選択