无代码插桩配置
了解如何为 Node.js 配置无代码插桩
JavaScript 的无代码插桩提供了一种方法,可以在不进行任何代码更改的情况下插桩任何 Node.js 应用程序并从许多流行的库和框架捕获遥测数据。
运行以下命令来安装相应的包。
npm install --save @opentelemetry/api
npm install --save @opentelemetry/auto-instrumentations-node
@opentelemetry/api 和 @opentelemetry/auto-instrumentations-node 包安装了 API、SDK 和插桩工具。
该模块具有高度可配置性。
一种选择是通过使用 env 从 CLI 设置环境变量来配置模块。
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 环境变量设置为以下值之一来设置日志级别:
无错误警告信息调试详细all默认级别为 info。
OTEL_LOG_LEVEL 设置为 info。console。了解如何为 Node.js 配置无代码插桩