[[2022__ICSE__DeepTraLog - Trace-Log Combined Microservice Anomaly Detection through Graph-based Deep Learning]] > 4.1.1 ベンチマークシステムとデータセット 我々の研究は、[[TrainTicket]] [42, 44]の最新リリースV0.2.0上で実施されています。これは,電車のチケット予約のための中規模なオープンソースのマイクロサービスシステムであり,マイクロサービスアーキテクチャ,インフラストラクチャ,AIOps(Artificial Intelligence for IT Operation)に関する研究 [20, 41, 43] で広く利用されているものです.このサービスには,Java,JavaScript,Pythonなどの異なる言語で記述された45のサービスがあり,同期REST呼び出しと非同期メッセージングで通信しています. ![[Pasted image 20220912142129.png|400]] > TrainTicketは、産業用マイクロサービスシステムから様々な種類の故障ケースを複製し、異なる故障ブランチで故障ケースを提供します。TrainTicketの最新リリースでは、表1に示すように、異なるタイプの14の互換性のある故障事例を提供しています。各故障ケースは、異なるサービスにおける複数の故障インスタンスを含む可能性があります。故障の種類には、以下のものがあります[43] ([[2019__ESEC-FSE__Latent Error Prediction and Fault Localization for Microservice Applications by Learning from System Trace Logs|MEPFL]]) - 非同期相互作用 - 非同期サービス呼び出しの欠落または不適切な調整によって引き起こされる故障。 - マルチインスタンス - 実行時に同じサービスの複数のインスタンスが存在すること に関連する故障。 - 構成 - サービスおよび/または環境の不適切または一貫性のない構成によって引き起こされる故障。 サービスや環境(例:コンテナや仮想マシン)の構成が不適切または一貫性がないために発生する障害。 テナーや仮想マシンなど)の不適切または一貫性のない構成に起因するフォールト。 - モノリシック - 個々のサービスの内部実装に起因する障害で、アプリケーションがモノリシックモードでデプロイされている場合でも障害が発生する可能性があります。 > このように、TrainTicketの正常なバージョンと、故障のケースの分岐に対応する14の故障のバージョンが存在することができます。各仮想マシンは16コアの3.0GHz CPUと32GB RAMを搭載しています。Pythonを使用して、自動テストケースを実行することができる実行コントローラを実装しています。各バージョンでは、実行コントローラーを使用して、自動化されたテストケースを実行することで、ユーザーのリクエストをシミュレートしています。トレースとログを収集する分散トレーシングフレームワークとして[[Apache SkyWalking]] [33]を使用し、収集したトレースとログを保存するためにElasticSearch [8]を使用しています。 > 得られたデータセットには、132,485 個のトレースと 7,705,050 個のログメッセージが含まれています。トレースのうち,23,334 件(17.6%)は,異なるサービスに存在する 14 の故障ケースのうち 73 の故障による異常なトレースである.このデータセットは実験研究全体を通じて使用される.このデータセットは、我々のレプリケーションパッケージ[5]で利用可能である。