Tracing | Node.js v8.17.0 Documentation (original) (raw)
Tracing#
Trace Event provides a mechanism to centralize tracing information generated by V8, Node core, and userspace code.
Tracing can be enabled by passing the --trace-events-enabled
flag when starting a Node.js application.
The set of categories for which traces are recorded can be specified using the--trace-event-categories
flag followed by a list of comma separated category names. By default the node
, node.async_hooks
, and v8
categories are enabled.
node --trace-events-enabled --trace-event-categories v8,node,node.async_hooks server.js
Running Node.js with tracing enabled will produce log files that can be opened in the chrome://tracingtab of Chrome.
The logging file is by default called node_trace.${rotation}.log
, where${rotation}
is an incrementing log-rotation id. The filepath pattern can be specified with --trace-event-file-pattern
that accepts a template string that supports ${rotation}
and ${pid}
. For example:
node --trace-events-enabled --trace-event-file-pattern '${pid}-${rotation}.log' server.js
Starting with Node 10.0.0, the tracing system uses the same time source as the one used by process.hrtime()
however the trace-event timestamps are expressed in microseconds, unlike process.hrtime()
which returns nanoseconds.