Cloudflare Agents: エージェントトレーシングは欠けていた可観測性レイヤー
CloudflareがWorkers向けエージェントトレーシングを発表。エージェントセッション全体でモデル呼び出し、ツール実行、トークン使用量の可視性を開発者に提供する。

Cloudflareは、開発者プラットフォーム上でAIエージェントの構成要素を静かに組み立ててきた。AI Gatewayによるモデルアクセス、Durable Objectsによる永続ランタイム、Workflowsによるオーケストレーション、サンドボックス実行、そしてR2によるストレージだ。今日、これらをCloudflare Agentsという単一の旗印の下に統合し、最初の具体的な機能としてエージェントトレーシングを提供する。
エージェントトレーシングは、従来のアプリケーションテレメトリでは捉えられない可観測性レイヤーだ。エージェントはHTTP 200を返しても失敗することがある。間違ったツールを選んだり、サブエージェントに古いコンテキストを渡したり、リトライループでトークンを消費したりする。標準のWorkersトレーシングはすでにインフラストラクチャスパン(fetch呼び出し、KV読み取り、D1クエリ)を計測しているが、それらを引き起こしたエージェント操作は表示されない。エージェントトレーシングは、エージェント呼び出し、モデル呼び出し、ツール実行、承認イベント、サポートされているサブエージェント呼び出しのスパンを既存のWorkersデータに追加することで、このギャップを埋める。
ダッシュボードには専用のAgentsビューが追加され、観測されたエージェント、トレース、セッション、トークン使用量が一覧表示される。調査方法は2つある。セッションのリプレイか、トレースの表示だ。Messagesタブは、ターンごとの完全な会話を再構築する。システム指示、ユーザーメッセージ、モデルの思考、引数と結果を含むツール呼び出し、最終応答。これは記録されたデータのリプレイであり、再実行ではないため、不正なツール引数を検出したり、以前のターンが後の結果にどのように影響したかを確認したりできる。ペイロード記録はオプションで、機密データが関わる場合はオフにできる。
Tracesタブは実行のウォーターフォールを表示し、エージェント操作をCloudflareインフラストラクチャに接続する。例では、Travel_Plannerエージェントがitinerary_builderサブエージェントに委任し、それがモデルを呼び出し、ツールを実行し、D1にアクセスし、KVに書き込む。すべてが単一のビューで表示される。親の呼び出しは2.72分、サブエージェントは1.83分、モデル呼び出しは所要時間とトークン使用量を示し、ツール実行はミリ秒単位で測定される。これこそがエージェントのデバッグを実現可能にする粒度だ。
セットアップは簡単だ。wrangler.jsoncでトレーシングを有効にし、ハーネス固有の統合を使用する。ThinkとFlueはトレーシング統合を通じてテレメトリを出力し、AI SDKはCloudflareのwrapAISDK()アダプタでラップされ、カスタムハーネスはOpenTelemetryのGenerative AIセマンティック規約に従うカスタムスパンAPIを使用する。長期的な目標は、Workers内でOpenTelemetry APIを直接サポートし、Cloudflare固有のアダプタなしで準拠したツールキットがそのまま動作するようにすることだ。
トレースはOTLP互換の任意のプロバイダーにエクスポートできるため、テレメトリがロックインされることはない。また、トレースは構造化されているため、評価、分析、トークン使用量レポートのフィードバックループとしても機能する。問題が発生したときに検査するだけでなく、エージェントの品質、パフォーマンス、コストを継続的に改善する手段となる。
エージェントはHTTP 200を返しても失敗することがある。間違ったツールを選んだり、サブエージェントに古いコンテキストを渡したり、リトライループでトークンを消費したりする。