diff --git a/lib/cpu-usage.js b/lib/cpu-usage.js new file mode 100644 index 0000000..1b58a0d --- /dev/null +++ b/lib/cpu-usage.js @@ -0,0 +1,20 @@ +let startTime = process.hrtime() +let startUsage = process.cpuUsage() + +module.exports = () => { + function secNSec2ms (secNSec) { + return secNSec[0] * 1000 + secNSec[1] / 1000000 + } + + var elapTime = process.hrtime(startTime) + var elapUsage = process.cpuUsage(startUsage) + + var elapTimeMS = secNSec2ms(elapTime) + var elapUserMS = elapUsage.user + var elapSystMS = elapUsage.system + + startTime = process.hrtime(); + startUsage = process.cpuUsage(); + + return Math.round(100 * ((elapUserMS + elapSystMS) / 1000) / elapTimeMS) +} \ No newline at end of file