Splunk Observability Cloud 用の PHP インストルメンテーションを設定する

SignalFx Tracing Library for PHPを設定することで、ほとんどのインストルメンテーションニーズに対応できます。

以下のセクションでは、SignalFx Tracing Library for PHP の設定について説明します。

一般設定

以下の設定を使用して、SignalFx Tracing Library for PHP を設定します:

環境変数

説明

SIGNALFX_SERVICE_NAME

Splunk Observability Cloud のサービス名。デフォルト値は unnamed-php-service です。

SIGNALFX_ENDPOINT_URL

エンドポイントの URL。デフォルト値は http://localhost:9080/v1/trace です。

SIGNALFX_TRACING_ENABLED

トレーサーの自動作成とインストルメンテーションを有効にするかどうか。デフォルト値は true です。

SIGNALFX_TRACE_CLI_ENABLED

cli SAPI のトレーサーの自動作成とインストルメンテーションを有効にするかどうか。詳細については、「Tracing CLI sessions」を参照してください。デフォルト値は false です。

SIGNALFX_TRACE_DEBUG

デバッグロギングを有効にするかどうか。デフォルト値は false です。

SIGNALFX_DISTRIBUTED_TRACING

B3 コンテキスト伝播を有効にするかどうか。デフォルト値は true です。

SIGNALFX_RECORDED_VALUE_MAX_LENGTH

属性値に設定できる最大の長さ。これより大きい値は切り捨てられます。デフォルト値は 1200 です。

SIGNALFX_CAPTURE_ENV_VARS

ルート・スパンにアタッチする環境変数をカンマ区切りで列挙します。

SIGNALFX_CAPTURE_REQUEST_HEADERS

スパンに変換する受信リクエストヘッダーのカンマ区切りリスト。たとえば、User-Agenthttp.request.headers.user_agent としてキャプチャされます。

SIGNALFX_ACCESS_TOKEN

ライブラリがデータを Splunk Observability Cloud に直接送信できるようにする Splunk Observability Cloud 認証トークン。デフォルトでは設定されていません。Splunk Observability Cloud の取り込みエンドポイントにデータを送信する必要がある場合を除き、必要ありません。詳細については、「Splunk Observability Cloud に直接データを送信する」を参照してください。

CLIセッションのトレース

CLI SAPI 機能をトレースするには、SIGNALFX_TRACE_CLI_ENABLED 環境変数を使用して手動で有効にする必要があります。CLI トレースを有効にすると、インストルメンテーションは CLI セッションのライフタイムを追跡するためのルートスパンを自動的に作成します。

export SIGNALFX_TRACE_CLI_ENABLED=true
php artisan migrate:fresh
php myTracedCliScript.php

このSAPIは、システムアクティビティの望ましくないトレースを避けるため、デフォルトでは無効になっています。

サーバートレース情報

モバイルおよびウェブアプリケーションからの Real User Monitoring(RUM)リクエストとサーバートレースデータを接続するために、トレース レスポンス ヘッダーがデフォルトで有効になっています。インストルメンテーションは、HTTP レスポンスに以下のレスポンスヘッダーを追加します。

Access-Control-Expose-Headers: Server-Timing
Server-Timing: traceparent;desc="00-<serverTraceId>-<serverSpanId>-01"

Server-Timing ヘッダーには traceIdspanId パラメータが traceparent 形式で含まれます。詳しくは、W3C Web サイトの Server-Timingtraceparent のドキュメントを参照してください。

注: トレース・レスポンス・ヘッダーを無効にする必要がある場合は、SIGNALFX_TRACE_RESPONSE_HEADER_ENABLEDfalse に設定するか、INI ファイルの signalfx.trace.response_header_enabled オプションを false に設定してください。