cputilization
v1.0.0
Published
sample your cpu utlization continously
Downloads
44
Readme
CPUtilization
Installation
npm install cputilization
Invocation
This modules sample the cpu utilization. The interface works via callback or event emitter.
callback interface
use the callback interface if the cpu usage should be sampled only once:
var cpuu = require('cputilization');
cpuu(function(error, sample) {
//returns after 1000ms with the cpu usage of that time interval
console.log( sample.percentageBusy() );
});
supply an options hash to specify the time interval:
var cpuu = require('cputilization');
cpuu({timeout: 2000}, function(error, sample) {
//returns after 2000ms
console.log( sample.percentageBusy() );
});
event emitter interface
if no callback is supplied the cpu utilization will be sampled continously.
a event emitter is returned than, emits a sample
event every 1000ms
var cpuu = require('cputilization');
var sampler = cpuu();
sampler.on('sample', function(sample) {
console.log( sample.percentageBusy() );
});
an additional options hash can be provided:
interval
: the ticking interval, default: 1000msautoStart
: automatically start the ticker, default: true
var cpuu = require('cputilization');
var sampler = cpuu({interval:100, autoStart: false});
sampler.on('sample', function(sample) {
console.log( sample.percentageBusy() );
});
start sampling
if the sampler does not start automatically it can be started via the start
command:
var cpuu = require('cputilization');
var sampler = cpuu({autoStart: false, interval:100});
sampler.on('sample', function(sample) {
//gets executed every 100ms
console.log( sample.percentageBusy() );
});
sampler.start();
stop sampling
the returned event emitter features a stop
method, use that one to stop sampling:
var cpuu = require('cputilization');
var sampler = cpuu({interval:100});
sampler.on('sample', function(sample) {
//gets executed every 100ms
console.log(sample.percentageBusy());
});
sampler.stop();
CpuSample
An CpuSample
object is emitted (EventEmitter interface) or returned via tha callback interface.
The following methods are available:
percentageBusy()
Returns the average CpuUtilization over the specified sampling interval.
percentageIdle()
Returns the average Cpu Idle percentage of the specified sampling interval.