Node.jsアプリケーションのAgenticインスツルメンテーション
This product is not supported for your selected
Datadog site. (
).
注: Datadog Node.js SDKはNode.jsランタイムのみをサポートしています。ユーザーのアプリケーションが他のJavascriptランタイムにある場合は、この一連の手順を使用しないでください。
フレームワーク
ユーザーが以下のいずれかのフレームワークでアプリケーションをインスツルメンテーションしている場合は、インスツルメンテーション以降の手順に従う_代わりに_、そのガイドに従ってください。
インスツルメンテーション
- 最新の
ddtraceパッケージをインストールします。
リポジトリやプロジェクトですでに使用されているパッケージマネージャーをチェックし、それを使用して依存関係をインストールしてください。ロックファイルで確認してください。
npm install dd-trace # npm
pnpm add dd-trace # pnpm
yarn add dd-trace # yarn
- Datadogローダーフックを追加してください。
これは必須です。
Datadogローダーフックは、サポートされているフレームワークをインスツルメンテーションするために、ESMおよびTypescriptのインポートステートメントを自動的にパッチ適用するために使用されます。NODE_OPTIONS="--import dd-trace/register.js"を可能な限り早く、理想的には起動コマンドの一部として設定してください。これはNode.jsプロセスが生成されるときに利用可能である必要があるため、ロード後に設定することは認められません。
package.jsonを使用した例を以下に示します。
{
"scripts": {
"start": "NODE_OPTIONS=\"--import dd-trace/register.js\" node app.js"
}
}
この値はDockerfile、ブートストラップスクリプトなどで設定できますが、そのインフラストラクチャーがコード内に_すでに_存在し、Node.jsアプリケーションプロセスが開始される_前_である必要があります。
- Agent Observabilityパッケージを初期化してください。
ddtrace.autoを介してAgent Observability SDKを初期化してください。これは、環境変数や設定読み込みのインポートを除き、アプリケーションのエントリーポイントにおける最初のインポートとして実行する必要があります。
注: 余計なコメントは追加しないでください。
import 'dotenv/config'; // this might load DD_ environment variables
import 'dd-trace/init'; // CRUCIAL: this initializes the Agent Observability SDK and instrumentations
// ... remaining application logic