指标编辑

Node.js 代理会跟踪各种系统和应用程序指标。 这些指标将定期发送到 APM 服务器,然后再发送到 Elasticsearch。 您可以通过设置 metricsInterval 来调整间隔。

指标将存储在 apm-* 索引中,并将 processor.event 属性设置为 metric

system.cpu.total.norm.pct编辑

  • 类型: 浮点数
  • 格式: 百分比

除空闲和 IOWait 状态之外的状态下的 CPU 时间百分比,按核心数标准化。

system.memory.total编辑

  • 类型: 长整型
  • 格式: 字节

系统的总内存(以字节为单位)。

system.memory.actual.free编辑

  • 类型: 长整型
  • 格式: 字节

系统的可用内存(以字节为单位)。

system.process.cpu.total.norm.pct编辑

  • 类型: 浮点数
  • 格式: 百分比

自上次事件以来进程花费的 CPU 时间百分比。 此值按 CPU 核心数标准化,范围从 0% 到 100%。

system.process.memory.rss.bytes编辑

  • 类型: 长整型
  • 格式: 字节

驻留集大小,即进程在主内存 (RAM) 中占用的内存量。

nodejs.handles.active编辑

  • 类型: 长整型
  • 格式: 计数器

活动 libuv 句柄的数量,这些句柄很可能由当前正在运行的 I/O 操作保持打开状态。

nodejs.requests.active编辑

  • 类型: 长整型
  • 格式: 计数器

活动 libuv 请求的数量,这些请求很可能正在等待 I/O 操作的响应。

system.process.cpu.user.norm.pct编辑

  • 类型: 长整型
  • 格式: 计数器

执行应用程序代码所花费的 CPU 周期数。

system.process.cpu.system.norm.pct编辑

  • 类型: 长整型
  • 格式: 计数器

由于应用程序活动而花费在执行内核代码上的 CPU 周期数。

nodejs.eventloop.delay.avg.ms编辑

  • 类型: 浮点数
  • 格式: 毫秒

事件循环延迟的毫秒数。 事件循环延迟每 10 毫秒采样一次。 可能无法观察到小于 10 毫秒的延迟,例如,如果阻塞操作在同一采样周期内开始和结束。

nodejs.memory.heap.allocated.bytes编辑

  • 类型: 长整型
  • 格式: 字节

当前分配的堆大小(以字节为单位)。

nodejs.memory.heap.used.bytes编辑

  • 类型: 长整型
  • 格式: 字节

当前使用的堆大小(以字节为单位)。

nodejs.memory.external.bytes编辑

  • 类型: 长整型
  • 格式: 字节

绑定到由 V8 管理的 JavaScript 对象的 C++ 对象的内存使用量。

nodejs.memory.arrayBuffers.bytes编辑

  • 类型: 长整型
  • 格式: 字节

为 ArrayBuffer 和 SharedArrayBuffer 分配的内存,包括所有 Node.js 缓冲区。 这也包含在 nodejs.memory.external.bytes 值中。

span.self_time.sum编辑

  • 类型: 长整型
  • 格式: 毫秒

自上次报告以来所有 span 自身时间的总和(以毫秒为单位)(增量)。 span.self_time.* 指标被称为“细分指标”。

您可以按以下维度进行过滤和分组

  • transaction.name:事务的名称
  • transaction.type:事务的类型,例如 request
  • span.type:span 的类型,例如 apptemplatedb
  • span.subtype:span 的子类型,例如 mysql(可选)

span.self_time.count编辑

  • 类型: 长整型
  • 格式: 计数器

您可以按以下维度进行过滤和分组

  • transaction.name:事务的名称
  • transaction.type:事务的类型,例如 request
  • span.type:span 的类型,例如 apptemplatedb
  • span.subtype:span 的子类型,例如 mysql(可选)