JavaScriptのゼロコード計装

ソースコードの変更なしでアプリケーションからテレメトリーをキャプチャする

JavaScriptのゼロコード計装は、コードを変更することなく、任意のNode.jsアプリケーションを計装し、多くの人気のあるライブラリやフレームワークからテレメトリーデータをキャプチャする方法を提供します。

セットアップ

次のコマンドを実行して、適切なパッケージをインストールします。

npm install --save @opentelemetry/api
npm install --save @opentelemetry/auto-instrumentations-node

@opentelemetry/api および @opentelemetry/auto-instrumentations-node パッケージは、API、SDK、および計装ツールをインストールします。

モジュール構成

モジュールは高度に構成可能です。

まず、CLIから環境変数を設定するために env を使用してモジュールを構成するオプションがあります。

env OTEL_TRACES_EXPORTER=otlp OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=your-endpoint \
node --require @opentelemetry/auto-instrumentations-node/register app.js

あるいは、 export を使用して環境変数を設定することもできます。

export OTEL_TRACES_EXPORTER="otlp"
export OTEL_EXPORTER_OTLP_ENDPOINT="your-endpoint"
export OTEL_NODE_RESOURCE_DETECTORS="env,host,os"
export OTEL_SERVICE_NAME="your-service-name"
export NODE_OPTIONS="--require @opentelemetry/auto-instrumentations-node/register"
node app.js

デフォルトでは、すべてのSDKリソース検出器が使用されます。 環境変数 OTEL_NODE_RESOURCE_DETECTORS を使用して、特定の検出器のみを有効にしたり、完全に無効にしたりできます

構成オプションのすべての範囲を確認するには、モジュール構成を参照してください。

サポートされているライブラリとフレームワーク

人気のあるNode.jsライブラリの多くが自動計装されています。 完全なリストについては、サポートされている計装をご覧ください。

トラブルシューティング

OTEL_LOG_LEVEL 環境変数を以下のいずれかに設定して、ログレベルを設定できます。

  • none
  • error
  • warn
  • info
  • debug
  • verbose
  • all

デフォルトのレベルは info です。


ゼロコード計装の構成

Node.jsのゼロコード計装を構成する方法を学びます