ドキュメント
a プロジェクト

トレース

opentelemetry-go を使用して、OpenTelemetryトレース機能との統合を有効にします。

有効にすると、既存のトレースコンテキストを伝播させたり、新しいコンテキストを初期化したりします。

伝播プロトコルとしてgRPCを使用し、W3C tracecontextbaggageを伝播媒体として使用します。

トレース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
	}
}