A "top" like module for your Node.js process. Collects CPU usage etc.
npm install process-top
const top = require('process-top')()
setInterval(function () {
// Prints out a string containing stats about your Node.js process.
console.log(top.toString())
}, 1000)
Running the above will print something similar to:
cpu: 0.4% | rss: 32 MB (0.2%) | heap: 5.1 MB / 8.1 MB (63.5%) | ext: 8.8 KB | delay: 0 ms | 00:00:52 | loadavg: 0.52, 0.37, 0.31
-
cpu
is cpu usage by the process in the last ~5s. -
rss
is how muchrss
memory Node has allocated out of your total memory. -
heap
is how much heap you are using vs total heap. -
ext
is how much external memory Node.js is using (ie, Buffers etc). -
delay
is event loop delay the last ~5s. -
00:00:00
is the runtime of the process -
loadavg
is the current loadavg of the machine.
Create a new process top object.
Returns a CPU stats object.
Returns a memory stats object.
Returns the event loop delay.
Returns the runtime in ms.
Returns the load average of the machine.
Returns a human friendly string representation of the top object.
Destroy the top object.
Return the stats as JSON.
There is also a CLI tool available.
npm install -g process-top
process-top my-cool-program.js
The CLI will print a top.toString()
line every 1s the program is running.
MIT