DDTrace NodeJS
安装依赖¶
安装 DDTrace 的 NodeJS 扩展,完整的 APM 接入步骤,参见 Datadog NodeJS 接入文档。
NodeJS v12+¶
NodeJS v10 v8¶
注意:你需要在任何 NodeJS 代码或载入任何 Module 前 import 并初始化 DDTrace lib,如果 DDTrace lib 没有被适当的初始化可能无法接收检测数据。
示例¶
在只单纯运行 JavaScript 的环境下:
// This line must come before importing any instrumented module.
const tracer = require("dd-trace").init();
对于使用了 TypeScript 和 bundlers 并支持 ECMAScript Module 语法的环境需要在不同的文件中初始化 DDTrace:
//
// tracer.ts
//
import tracer from "dd-trace";
tracer.init(); // initialized in a different file to avoid hoisting.
export default tracer;
另外如果默认配置足够有效或者通过环境变量以成功配置了 DDTrace 可以直接在代码中引入 module:
运行¶
运行 Node Code
环境变量支持¶
下面列举了常见的 ENV 支持,完整的 ENV 支持列表,参见 Datadog 文档
-
DD_ENV
为服务设置环境变量
-
DD_VERSION
APP 版本号
-
DD_SERVICE
用于设置应用程序的服务名称,默认使用 package.json 中的
name
字段 -
DD_SERVICE_MAPPING
定义服务名映射用于在 Tracing 里重命名服务。
-
DD_TAGS
为每个 Span 添加默认 Tags
-
DD_TRACE_AGENT_HOSTNAME
Datakit 监听的地址名,默认 localhost
-
DD_TRACE_AGENT_PORT
Datakit 监听的端口号,默认 9529
-
DD_TRACE_SAMPLE_RATE
设置采样率从 0.0(0%) ~ 1.0(100%)