Metrics
editMetrics
editThe Node.js agent tracks various system and application metrics.
These metrics will be sent regularly to the APM Server and from there to Elasticsearch.
You can adjust the interval by setting metricsInterval
.
The metrics will be stored in the apm-*
index and have the processor.event
property set to metric
.
system.cpu.total.norm.pct
edit- Type: Float
- Format: Percent
The percentage of CPU time in states other than Idle and IOWait, normalized by the number of cores.
system.memory.total
edit- Type: Long
- Format: Bytes
The total memory of the system in bytes.
system.memory.actual.free
edit- Type: Long
- Format: Bytes
Free memory of the system in bytes.
system.process.cpu.total.norm.pct
edit- Type: Float
- Format: Percent
The percentage of CPU time spent by the process since the last event. This value is normalized by the number of CPU cores and it ranges from 0 to 100%.
system.process.memory.rss.bytes
edit- Type: Long
- Format: Bytes
The Resident Set Size, the amount of memory the process occupies in main memory (RAM).
nodejs.handles.active
edit- Type: Long
- Format: Counter
The number of active libuv handles, likely held open by currently running I/O operations.
nodejs.requests.active
edit- Type: Long
- Format: Counter
The number of active libuv requests, likely waiting for a response to an I/O operation.
system.process.cpu.user.norm.pct
edit- Type: Long
- Format: Counter
The number of CPU cycles spent executing application code.
system.process.cpu.system.norm.pct
edit- Type: Long
- Format: Counter
The number of CPU cycles spent executing kernel code as a result of application activity.
nodejs.eventloop.delay.avg.ms
edit- Type: Float
- Format: Milliseconds
The number of milliseconds of event loop delay. Event loop delay is sampled every 10 milliseconds. Delays shorter than 10ms may not be observed, for example if a blocking operation starts and ends within the same sampling period.
nodejs.memory.heap.allocated.bytes
edit- Type: Long
- Format: Bytes
The current allocated heap size in bytes.
nodejs.memory.heap.used.bytes
edit- Type: Long
- Format: Bytes
The currently used heap size in bytes.
transaction.duration.sum
edit- Type: Long
- Type: Milliseconds
The sum of all transaction durations in ms since the last report (the delta)
You can filter and group by these dimensions:
-
transaction.name
: The name of the transaction -
transaction.type
: The type of the transaction, for examplerequest
transaction.duration.count
edit- Type: Long
- Type: Milliseconds
The count of all transactions since the last report (the delta)
You can filter and group by these dimensions:
-
transaction.name
: The name of the transaction -
transaction.type
: The type of the transaction, for examplerequest
transaction.breakdown.count
edit- Type: Long
- Format: Counter
The number of transactions for which breakdown metrics (span.self_time
) have been created.
Breakdown metrics are only collected for sampled transactions.
You can filter and group by these dimensions:
-
transaction.name
: The name of the transaction -
transaction.type
: The type of the transaction, for examplerequest
span.self_time.sum
edit- Type: Long
- Format: Milliseconds
The sum of all span self-times in milliseconds since the last report (the delta)
You can filter and group by these dimensions:
-
transaction.name
: The name of the transaction -
transaction.type
: The type of the transaction, for examplerequest
-
span.type
: The type of the span, for exampleapp
,template
ordb
-
span.subtype
: The sub-type of the span, for examplemysql
(optional)
span.self_time.count
edit- Type: Long
- Format: Counter
You can filter and group by these dimensions:
-
transaction.name
: The name of the transaction -
transaction.type
: The type of the transaction, for examplerequest
-
span.type
: The type of the span, for exampleapp
,template
ordb
-
span.subtype
: The sub-type of the span, for examplemysql
(optional)