トレース
opentelemetry-go
を使用して、OpenTelemetryトレース機能との統合を有効にします。
有効にすると、既存のトレースコンテキストを伝播させたり、新しいコンテキストを初期化したりします。
伝播プロトコルとしてgRPCを使用し、W3C tracecontextとbaggageを伝播媒体として使用します。
トレースIDはアクセスログに標準の traceID
フィールドとして追加されます。
構文
tracing {
[span <span_name>]
}
-
<span_name>はスパン名です。スパンの命名ガイドラインを参照してください。
プレースホルダーはスパン名で使用できます。トレースはできるだけ早く発生するため、リクエストプレースホルダーのみ使用でき、レスポンスプレースホルダーは使用できないことに注意してください。
設定
環境変数
OpenTelemetry環境変数仕様で定義された環境変数を使用して設定できます。
エクスポーターの設定の詳細については、仕様を参照してください。
たとえば
export OTEL_EXPORTER_OTLP_HEADERS="myAuthHeader=myToken,anotherHeader=value"
export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://my-otlp-endpoint:55680
例
以下はCaddyfileの例です。
example.com {
handle /api* {
tracing {
span api
}
reverse_proxy localhost:8081
}
handle {
tracing {
span app
}
reverse_proxy localhost:8080
}
}