## Memo - [[2020__IWQoS__Localizing Failure Root Causes in a Microservice through Causality Inference]] - [[RCAToolBox]]での実装 - [RCAToolbox/monitor\_rank\_rca\_model.py at fcd658df449a83ae4100ce148df7a6e8ca7a22d1 · XLab-Tongji/RCAToolbox · GitHub](https://github.com/XLab-Tongji/RCAToolbox/blob/fcd658df449a83ae4100ce148df7a6e8ca7a22d1/rca_model/monitor_rank_rca_model.py#L4) - メトリクスとして[[RED]]を用いている。 - アルゴリズム - Weighted and Personalized [[PageRank]] - 式 (8) $\pi_{PPV} = \alpha \pi{PPV}P + (1-\alpha)u$ でpreference vector $u$は$S_i$と同じであり、$S_i$はフロントエンドノードと$V_i$の類似度を示す。遷移確率行列$P$は各エッジのstrengthである式(6)から計算される。 - Personalization -> $S_i$、エッジのweight -> $P$ ## Abstract 大規模なWebサイトは、サービス指向のアーキテクチャで構築されるのが主流です。ここでは、サービスは特定のタスクに特化され、複数のマシン上で実行され、ユーザーのリクエストに応えるために互いに通信する。あるサービスの指標の異常な変化が、この通信中に他のサービスに伝搬し、結果的にリクエストの全体的な劣化を引き起こす可能性があります。このような劣化は収益に影響を与えるため、正しい機能を維持することが最も重要であり、異常の根本原因をできるだけ早く見つけることが重要です。これは、与えられたサービスに対して多数のメトリクスやセンサーが存在し、最新のウェブサイトは通常、複数のデータセンターの数千台のマシンで動作する数百のサービスから構成されているため、困難なことです。 この論文では、このようなサービス指向アーキテクチャにおける異常の根本原因を見つけるために必要な時間、ドメイン知識、人間の労力を削減できるアルゴリズムである MonitorRank を紹介します。異常が発生した場合、MonitorRank は、監視チームが調査できるように、考えられる根本原因のランク順リストを提供します。MonitorRank は、各センサの履歴と現在の時系列メトリックを入力として、センサ間で生成されたコール グラフを使用して、ランキングのための教師なしモデルを構築します。最大級のオンライン・ソーシャル・ネットワークである LinkedIn の実際の生産停止データを使った実験では、根本原因を見つける際の平均平均精度が、ベースラインや現在の最先端手法に比べて 26% から 51% 向上することが示されました。 [[2013__PER__Root Cause Detection in a Service-Oriented Architecture__translations]]