トレース

TRACE
読み: トレース

読み: トレース

トレースとは分散処理の追跡技術

トレースとは、分散システムにおいてリクエストが複数のサービスを横断する処理経路を追跡・記録する技術のこと。マイクロサービスアーキテクチャの普及に伴い不可欠になった運用技術であり、AIパイプラインのデバッグやパフォーマンス改善においても重要な役割を果たしている。

かんたんに言うと

宅配便の追跡番号のようなもの。荷物がどの倉庫を通り、どの配送車に載り、いつ届いたかを一連の流れとして把握できる。システムの世界では、ユーザーのリクエストがどのサーバーを通過し、どこで時間がかかったかを可視化する技術にあたる。

ログやメトリクスでは追えないリクエスト全体像をトレースで可視化する

システムの可観測性を構成する要素は3つある。ログ、メトリクス、トレース。この3つをまとめてオブザーバビリティの3本柱と呼ぶ。
ログは個々のイベントを時系列で記録する。「何が起きたか」を知るには有効だが、複数サービスにまたがるリクエストの全体像を追うのは難しい。
メトリクスはCPU使用率やレスポンスタイムの推移といった数値の集計である。異常の検知には向いているが、「なぜ遅いのか」の原因特定には弱い。
トレースは1つのリクエストがシステム内をどのように流れたかを、スパンと呼ばれる処理単位で記録する。各スパンの開始時刻と所要時間がわかるため、ボトルネックの特定に直結する。3つは補完関係にあり、どれか1つだけでは全体像は見えない。

OpenTelemetryが標準になるまでの経緯

かつてトレーシングの実装はベンダーごとにバラバラだった。ZipkinはZipkinの形式、JaegerはJaegerの形式。計測ライブラリを差し替えるたびにコードの修正が必要になる。
この混乱を収束させたのがOpenTelemetryである。CNCFの傘下で開発されたオープンソースプロジェクトで、トレース、メトリクス、ログの収集を統一的なAPIで提供する。2019年にOpenTracingとOpenCensusが統合されて誕生した。
現在はDatadog、New Relic、Grafana Tempoといった主要なAPMツールがOpenTelemetryのデータ形式に対応している。計測ライブラリをOpenTelemetryに統一しておけば、バックエンドのAPMツールを後から自由に切り替えられる。

AIパイプラインにおけるトレースの実践

RAGパイプラインを運用していると、「回答が遅い」「回答が的外れ」といった問題が日常的に発生する。原因の切り分けにトレースが効く。
ユーザーの質問を受けてから回答を返すまでの間に、エンベディング生成、ベクトル検索、リランキング、LLM推論といった複数のステップが走っている。どのステップに何ミリ秒かかっているかをトレースで可視化すれば、ベクトル検索が遅いのかLLMの推論が遅いのかが一目でわかる。
LangSmithやLangfuseはLLMアプリケーション専用のトレーシングツールとして登場した。プロンプトの内容、トークン消費量、モデルの応答時間をスパン単位で記録する。従来のAPMツールでは追跡が難しかったLLM固有の挙動を可視化できる点が評価されている。

導入時に押さえておくべき設計判断

トレースはすべてのリクエストを記録するとデータ量が膨大になる。本番環境ではサンプリングレートを設定し、全体の10%や1%だけを記録するのが一般的である。
ただし、エラーが発生したリクエストやレイテンシが閾値を超えたリクエストは優先的に記録する設計にしないと、肝心な情報が抜け落ちる。テールサンプリングと呼ばれるこの手法は、OpenTelemetry Collectorの設定で実現できる。
もうひとつ見落としがちなのがコスト。トレースデータをSaaSのAPMサービスに送ると、データ量に応じた従量課金が発生する。大規模なシステムでは月額が跳ね上がるため、保存期間やサンプリング率の調整がコスト管理の鍵になる。

当社の見解

当社はツール選定において実用性を第一方針にしている。カタログスペックやベンチマークスコアではなく、実務で1週間使い倒して初めて判断する。フレームワークを増やすほど管理コストが増える経験もした。フックを増やしすぎてAIが情報過多でパニックになったこともある。足し算だけでなく、引き算の判断が選定の質を決める。検証せずに導入したツールは、ほぼ例外なく3か月以内に使わなくなった。

同じ失敗を二度としないAIエージェント

今のAIは、聞けば何でも答えてくれます。
でも、セッションが切れた瞬間に前回の失敗を忘れます。

当社が開発しているAIは、過去の経緯を念頭に置いて、
聞かれる前に「それは前回うまくいきませんでした」と声をかけます。
人間にも同じ失敗をさせず、AI自身も繰り返しません。

古参の社員が横にいるように、黙っていても気づいてくれる。
それが、当社が考える本当のAI社員です。

相談する