traceparent、tracestate、baggage ヘッダーを検査します。トレース ID とサンプリングを確認し、不正な値を検出して、ルートまたは子コンテキストをローカルで生成します。
ブラウザ内でローカルに実行トレースヘッダーと baggage ヘッダーは、サービスや顧客のコンテキストを公開する可能性があります。チケットにコピーする前に値を確認してください。
traceparent の値またはヘッダーブロックを貼り付けると、含まれる W3C トレースコンテキストを読み取ります。トレース ID、親スパン ID、サンプリングフラグ、tracestate の各要素、baggage の各エントリです。値は実行中のサービスではなく、W3C の Trace Context および Baggage 仕様の形式規則に照らして確認します。
同じパネルから伝播ヘッダーを書き戻せます。「子コンテキストを生成」はトレース ID を保ったまま新しい親スパン ID を発行し、「ルートコンテキストを生成」は新しいトレースを開始します。どちらも元の tracestate と baggage の行を維持します。すべてブラウザー内で動作し、貼り付けたヘッダーは送信されません。生成したブロックは curl やログ、不具合報告にそのまま使えます。
traceparent はハイフンで区切られた 4 つのフィールドです。2 桁の小文字 16 進バージョン、32 桁のトレース ID、16 桁の親スパン ID、2 桁のフラグです。バージョン ff は予約済みとして拒否し、バージョン 00 は 4 フィールドちょうどでなければなりません。それより新しいバージョンは追加フィールドを許容し、前方互換として受け入れます。ID はどちらも小文字 16 進で、すべて 0 であってはなりません。サンプリング状態はフラグの最下位ビットで、01 がサンプリングあり、00 がなしです。
traceparent 行が 2 つあるブロックは拒否します。仕様はちょうど 1 つを要求するためです。ヘッダー名は大文字小文字を区別せずに照合するので Traceparent: も traceparent: と同じに扱いますが、値は厳密に照合します。大文字の ID、31 桁のトレース ID、欠けたフィールド、余分な接尾辞は、それぞれ壊れたフィールドを示す理由とともに失敗します。
tracestate は key=value をカンマで並べたリストです。キーは W3C の文法(acme のような小文字のシンプルキー、または tenant@system 形式)に従う必要があり、リストは最大 32 件です。表には各エントリを表示し、壊れた組、重複したキー、上限を超えたリストを指摘します。値そのものはベンダーのデータであり、解釈せずそのまま表示します。
baggage のエントリは HTTP トークン形式のキーを使い、値の後ろにセミコロンでメタデータを付けられます。有効なトークンでないキーは指摘し、キーまたは値に secret、token、password、email、authorization、cookie、session、user を含むエントリはキーワードで強調します。これは共有前の確認を促す注意であり、セキュリティスキャンではありません。値が本当に機密かは判断できず、baggage の値はパーセントデコードせずそのまま表示します。
「子コンテキストを生成」はまず入力を読み直し、トレース ID を維持して新しい親スパン ID をランダムに作り、フラグ・tracestate・baggage を引き継ぎます。下流のサービスが受け取るヘッダー一式です。「ルートコンテキストを生成」は新しいトレース ID と親スパン ID をランダムに作り、サンプリングフラグを立てます。新しいトレースの開始時に使うヘッダー一式です。
これは W3C ヘッダーの検査ツールであり、トレースバックエンドではありません。トレース ID がコレクターに存在するかは分からず、B3、Zipkin、Jaeger、ベンダー独自の伝播形式は解析しません。入力がブラウザーの外に出ることはなく、読み込み後はオフラインでも動作し、ヘッダーをサーバーへ送信することもありません。