[[2022__ESEC-FSE__Actionable and Interpretable Fault Localization for Recurring Failures in Online Service Systems]] ![[Pasted image 20220909222239.png]] > 5.1.1 研究データ 本研究では,4 つのデータセット(A, B, C, D)を用い,合計 601 個の障害を含む.特に,16 件の障害は複数の根本原因があり,したがって複数の故障の単位がある.A, B, C は実機、D はオープンソースのベンチマークシステムである。これらの統計量を表 2 に示す。すべてのデータセットにおいて、FDG の定義は§2 のプロセスに従う。学習用の障害を得るために、各データセットを学習セット(40%)、検証セット(20%)、テストセット(40%)に分割する。すべての実験結果はテストセットのみで計算されている。 > A, B, D のグランドトゥルースは、障害注入の場所と種類によって決定される。AとBでは、エンジニアが10種類の障害を投入した。1)コンテナ、物理サーバ(Bのみ)、ミドルウェア(Bのみ)のCPU枯渇、2)物理サーバのパケットロス・遅延、3)データベースセッションの制限(Aのみ)、停止(Aのみ)、4)JVM/Tomcatの空きメモリ不足(Bのみ)、5)ディスクI/O枯渇(Bのみ)です。Dについては、4ノードのKubernetesクラスタに[[TrainTicket]] [62]を導入しています。Train-Ticketは、64のサービスを含む最大のオープンソースマイクロサービスベンチマークの1つです。既存の研究[42] ([[2020__ISSRE__Unsupervised Detection of Microservice Trace Anomalies through Service-Level Deep Bayesian Networks|TraceAnomaly]]), 59 [[2021__WWW__MicroRank―End-to-End Latency Issue Localization with Extended Spectrum Analysis in Microservice Environments|MicroRank]]に従い、[[Chaos Mesh]][4]を用いてランダムな位置で8種類の障害注入を行いました。ポッド/ノードへの CPU/メモリ負荷,ポッド障害,ポッドへのパケット破損/損失/遅延である.D の配備と障害注入の詳細は,我々のレプリケーションパッケージ [1] に記載されている. > Cについては,数ヶ月間にわたる99件の実障害をsysC上で収集し,そのグランドトゥルース障害ユニットに技術者のラベルをつけた.他の 3 つと異なり、sysC は典型的なオンラインサービスシステムではなく、コンポーネントが 1 つしかない。そのため,C の各障害クラスは 1 つの障害単位しか含まない.C の障害単位の定義は,経験豊富な技術者によって確認されている.sysC の FDG では、メトリックス間の因果関係の事前診断知識を仮定していないため、すべての障害ユニットは仮想頂点にのみ接続される(メトリックスは存在しない)。 https://github.com/lizeyan/train-ticket はDを作成するためのスクリプト。