Splunk Observability Cloud 用の Python エージェントを設定する
Splunk Distribution of OpenTelemetry Python のエージェントを設定することで、トレースとログの関連付けや、エクスポーターの有効化など、ほとんどのインストルメンテーションニーズに対応できます。
Splunk Distribution of OpenTelemetry Python の Python エージェントを、インストルメンテーションのニーズに合わせて設定することができます。ほとんどの場合、基本設定を調整するだけで開始するには十分です。
以下のセクションでは、OpenTelemetry Python の Splunk ディストリビューション独自の新機能を有効にするオプションを含め、Python エージェントを設定するために利用可能なすべての設定について説明します。
一般設定
以下の設定は、OpenTelemetry Python の Splunk ディストリビューション固有のものです:
|
環境変数 |
説明 |
|---|---|
|
|
エクスポータがデータを Splunk Observability Cloud に直接送信するための Splunk 認証トークン。デフォルトでは設定されていません。Splunk Observability Cloud の取り込みエンドポイントにデータを送信する必要がある場合を除き、必要ありません。「Splunk Observability Cloud を使用して認証トークンを作成および管理する」を参照してください。 |
|
|
HTTP レスポンスヘッダーへのサーバートレース情報の追加を有効にします。詳細については、「サーバートレース情報」を参照してください。デフォルト値は |
|
|
メトリクスコレクションを有効にします。デフォルト値は |
|
|
組織のレルムの名前(us0 など)。レルムを設定すると、テレメトリは Splunk Distribution of OpenTelemetry Collector をバイパスして、Splunk Observability Cloud のインジェストエンドポイントに直接送信されます。 |
トレース設定
以下の設定は、トレースの制限と属性を制御します:
|
環境変数 |
説明 |
|---|---|
|
|
トレーサの作成と自動インストルメンテーションを有効にします。デフォルト値は |
|
|
インストルメンテーションしているサービスまたはアプリケーションの名前。 |
|
|
報告されたスパンごとに追加されるリソース属性のカンマ区切りリスト。たとえば、 |
|
|
スパンごとの属性の最大数。デフォルト値は [無制限] です。 |
|
|
イベントあたりの属性の最大数。デフォルト値は [無制限] です。 |
|
|
リンクごとの属性の最大数。デフォルト値は [無制限] です。 |
|
|
スパンあたりの最大イベント数。デフォルト値は [無制限] です。 |
|
|
スパンあたりの最大リンク数。デフォルト値は |
|
|
属性値の文字列の最大長。上限より大きい値は切り捨てられます。デフォルト値は |
エクスポーターの設定
以下の設定は、トレースエクスポーターとそのエンドポイントをコントロールします:
|
環境変数 |
説明 |
|---|---|
|
|
使用するエクスポータを追跡します。複数のカンマ区切り値を設定できます( |
|
|
使用するメトリクスエクスポータ。デフォルト値は |
|
|
2 回のエクスポートの開始間隔(ミリ秒単位)。デフォルト値は |
|
OTEL_METRIC_EXPORT_TIMEOUT |
データのエクスポートに許容される最大時間(ミリ秒単位)。デフォルト値は |
|
OTEL_EXPORTER_OTLP_ENDPOINT |
OTLP エンドポイント。デフォルト値は |
|
OTEL_EXPORTER_OTLP_METRICS_ENDPOINT |
OTLP エンドポイント。デフォルト値は |
Collector をバイパスして Splunk Observability Cloud に直接データを送信するには、「Splunk Observability Cloud にデータを直接送信する」を参照してください。
プロパゲータの構成
以下の設定はトレース伝搬をコントロールします:
|
環境変数 |
説明 |
|---|---|
|
|
使用するプロパゲータのカンマ区切りリスト。デフォルト値は |
SignalFx Python Tracing Libraryとの後方互換性のために、b3multiトレースプロパゲータを使用してください:
- Linux
-
SHELL
export OTEL_PROPAGATORS=b3multi - Windows PowerShell
-
SHELL
$env:OTEL_PROPAGATORS=b3multi
AlwaysOn Profiling の Python 設定
以下の設定は、Python エージェントの AlwaysOn Profiling 機能を制御します:
|
環境変数 |
説明 |
|---|---|
|
|
AlwaysOn Profiling を有効化します。デフォルト値は |
|
|
プロファイラログのコレクタエンドポイント。デフォルトでは、 |
|
|
コールスタックサンプリングの頻度(ミリ秒単位)。デフォルト値は |
|
SPLUNK_PROFILER_INCLUDE_INTERNAL_STACKS |
内部プロファイラのスレッドからのスタックトレースを含めるかどうかを決定します。デフォルト値は |
サーバートレース情報
モバイルおよびウェブアプリケーションからの Real User Monitoring(RUM)リクエストとサーバートレースデータを接続するために、トレース レスポンス ヘッダーがデフォルトで有効になっています。インストルメンテーションは、HTTP レスポンスに以下のレスポンスヘッダーを追加します。
Access-Control-Expose-Headers: Server-Timing
Server-Timing: traceparent;desc="00-<serverTraceId>-<serverSpanId>-01"
Server-Timing ヘッダーには traceId と spanId パラメータが traceparent 形式で含まれます。詳しくは、W3C Web サイトの Server-Timing と traceparent のドキュメントを参照してください。
SPLUNK_TRACE_RESPONSE_HEADER_ENABLED を false に設定します。
コード内でPythonエージェントを設定する
環境変数を設定できない場合、または実行時に splunk-py-trace を使用して設定値を設定できない場合は、コードで設定を定義します。
「Splunk Observability Cloud 用の Python アプリケーションを手動でインストルメンテーションする」を参照してください。