Splunk Observability Cloud で Node.js のトレースデータをログに接続する

Node.js ロギングライブラリを構成して、Splunk Distribution of OpenTelemetry JS によって自動的に提供されるトレース属性を含めることができます。トレースメタデータを使ってトレースをログイベントと関連付け、Splunk Observability Cloud で Node.js アプリケーションログを調査します。

Node.js ロギングライブラリを構成して、Splunk Distribution of OpenTelemetry JS によって自動的に提供されるトレース属性を含めることができます。トレースメタデータを使ってトレースをログイベントと関連付け、Splunk Observability Cloud で Node.js アプリケーションログを調査します。

サポートされているロギング・ライブラリ

Splunk Distribution of OpenTelemetry JS は、以下のロギングライブラリを自動的にサポートします:

  • Bunyan

  • Pino

  • Winston

ログ注入を有効にする

ログ注入は、サポートされているライブラリに対してすでに有効になっています。フォーマットされたログにトレースデータを挿入するには、各ライブラリのドキュメントを参照してください。

ログ文にトレースメタデータを含める

Splunk Distribution of OpenTelemetry JS は、ロギングライブラリに以下の属性を提供します:

  • トレース情報: trace_idspan_idtrace_flags

  • リソース属性: service.nameservice.version、および service.environment として deployment.environment

各ログメッセージの形式は、ライブラリによって異なります。次に、Pino を使用してフォーマットされたログメッセージの例を示します。

{"level":30,"time":1979374615686,"pid":728570,"hostname":"my_host","trace_id":"f8e261432221096329baf5e62090d856","span_id":"3235afe76b55fe51","trace_flags":"01","url":"/lkasd","msg":"request handler"}

ログエクスポート用の Filelog レシーバを設定する

サポートされているロギングライブラリ(Bunyan、Pino、Winston など)を使用してログに span_id 属性と trace_id 属性を追加した後、これらのログを Splunk Observability Cloud バックエンドに転送するように OpenTelemetry Collector で Filelog レシーバを設定する必要があります。

詳細については、Filelog レシーバの公式ドキュメントを参照してください。