## Memo ## Memo with LLM ## Abstract 最近のクラウドベースのアプリケーションのモニタリングとデバッグは、1つのAPIコールでさえ、相互に依存する多くの分散マイクロサービスを含む可能性があるため、困難である。 このような複雑なシステムに対して[[Observability|オブザーバビリティ]]を提供するために、分散トレースフレームワークはマイクロサービスのコールツリー全体のリクエストフローを追跡します。しかし、このようなソリューションでは、分散アプリケーションのすべてのコンポーネントにインスツルメンテーションを行い、トレースヘッダを追加し、伝播させる必要があるため、採用が遅れています。 この論文では、アプリケーションのインスツルメンテーションなしにリクエストをトレースできるかどうかを調査する。 この目的のために、我々はTraceWeaverを開発した。TraceWeaverは本番環境(例えば、タイムスタンプ)とテスト環境(例えば、コールグラフ)から容易に入手可能な情報を組み込み、有用な高精度でリクエストトレースを再構築するシステムである。 TraceWeaver の核となる再構築アルゴリズムは、リクエスト-レスポンスのタイムスタンプを使用して、マッピングリクエストの探索空間を効果的に刈り込み、統計的タイミング解析技術を適用してトレースを再構築します。 (1)ベンチマークマイクロサービスアプリケーションと(2)プロダクションマイクロサービスデータセットを用いた評価により、TraceWeaverは〜90%の高精度を達成し、複数のユースケース(遅いサービスの発見やA/Bテストなど)に有意義に適用できることが実証されています。