トレーシングは、Workers アプリケーションと接続先サービスを通るリクエストのライフサイクルをエンドツーエンドで可視化します。パフォーマンスのボトルネックの特定、問題のデバッグ、複雑なリクエストフローの理解に役立ちます。トレーシングでは次のような問いに答えられます。
- 長時間かかるリクエストの原因は何か。
- Worker からのサブリクエストにはどれくらい時間がかかるか。
- KV Namespace や R2 バケットへの呼び出しにはどれくらい時間がかかるか。
Cloudflare Workers はトレーシング計装を 標準で 提供します。コード変更も SDK も不要です。Worker でトレーシングを有効にすると、Cloudflare は次のテレメトリデータを自動収集します。
- Fetch 呼び出し — すべての外向き HTTP リクエストについて、タイミング、ステータスコード、リクエストメタデータを取得します。外部依存がアプリケーションのパフォーマンスにどう影響するかをすぐに特定できます。
- Binding 呼び出し — KV の読み書き、R2 オブジェクトストレージ操作、Durable Object 呼び出しなど、さまざまな Worker バインディングとのやりとりです。
- RPC 呼び出し — Workers と Durable Objects 間の呼び出しです。呼び出し側のセッション span と、個々のメソッド呼び出し span を含みます。
- Handler 呼び出し — 各 Worker 呼び出しの完全なライフサイクルです。fetch ハンドラー、scheduled ハンドラー、queue ハンドラー などのトリガーを含みます。
計装される操作の一覧は、spans と attributes のドキュメント を参照してください。
アプリケーション固有のロジックをトレースする、独自の span も作成できます。カスタム span は組み込み計装と自動で入れ子になり、プラットフォーム操作と独自コードの両方をエンドツーエンドで可視化します。
詳細は カスタム span を参照してください。
Wrangler 設定ファイル で observability.traces.enabled = true を設定してトレーシングを構成できます。
{
"observability": {
"traces": {
"enabled": true,
// optional sampling rate (recommended for high-traffic workloads)
"head_sampling_rate": 0.05
}
}
}[observability.traces]
enabled = true
head_sampling_rate = 0.05Workers トレーシングは OpenTelemetry(OTel)標準 ↗ に従います。Honeycomb、Grafana Cloud、Axiom などの一般的な可観測性プラットフォームと互換であり、開発作業は不要です。可観測性プロバイダーに OpenTelemetry エンドポイントがあれば、トレース(とログ)をエクスポートできます。
persist: false を設定すると、Cloudflare ダッシュボードに保存せずに送信先へトレースをエクスポートできます。サードパーティの可観測性プロバイダーを唯一のトレース送信先にできます。
Workers からの OpenTelemetry データのエクスポートについては こちら を参照してください。
サンプリングを使うと、Cloudflare Worker への着信リクエストの一部をトレースできます。量とコストを管理しつつ、アプリケーションへの有意義な洞察を得られます。
有効なサンプリング範囲は 0 から 1 です。0 は 100 回の呼び出しのうち 0 回がトレースされ、1 はすべてのリクエストがトレースされ、0.05 のような数値は 100 リクエストのうち 5 回がトレースされます。
サンプリングレートを指定していない場合、デフォルトは 1 で、リクエストの 100% がトレースされます。
{
"observability": {
"traces": {
"enabled": true,
// set tracing sampling rate to 5%
"head_sampling_rate": 0.05
},
"logs": {
"enabled": true,
// set logging sampling rate to 60%
"head_sampling_rate": 0.6
}
}
}[observability.traces]
enabled = true
head_sampling_rate = 0.05
[observability.logs]
enabled = true
head_sampling_rate = 0.6ログに head_sampling_rate を設定している場合、トレース用に別のレートも作れます。
サンプリングは head-based ↗ です。トレースされないリクエストにはトレーシングのオーバーヘッドは発生しません。
Workers トレーシングは、初期ベータ期間中は現在 無料 です。トレースの収集、保存、Cloudflare ダッシュボードでの閲覧を含む、すべてのトレーシング機能が対象です。
2026 年 10 月 1 日から、トレーシングは Workers Free、Paid、Enterprise プランの利用量の一部として課金されます。トレース内の各 span は 1 件の可観測性イベントを表し、Workers logs と同じ月次クォータと料金を共有します。
| イベント(トレース span またはログイベント) | 保持期間 | |
|---|---|---|
| Workers Free | 1 日あたり 200,000 件 | 3 日 |
| Workers Paid | 月あたり 2,000 万件込み + 追加 100 万イベントあたり $0.60 | 7 日 |