Socket
Socket
Sign inDemoInstall

pidusage

Package Overview
Dependencies
Maintainers
1
Versions
50
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pidusage - npm Package Compare versions

Comparing version 0.1.0 to 0.1.1

55

lib/stats.js

@@ -5,2 +5,3 @@ var os = require('os')

, exec = require('child_process').exec
, spawn = require('child_process').spawn
, helpers = require('./helpers')

@@ -121,31 +122,33 @@

win: function(pid, options, done) {
// http://social.msdn.microsoft.com/Forums/en-US/469ec6b7-4727-4773-9dc7-6e3de40e87b8/cpu-usage-in-for-each-active-process-how-is-this-best-determined-and-implemented-in-an?forum=csharplanguage
//var wmic = spawn('wmic' ['PROCESS', pid, 'get workingsetsize,usermodetime,kernelmodetime']);
var wmic = spawn('wmic', ['PROCESS', pid, 'get', 'workingsetsize,usermodetime,kernelmodetime'],
{detached: true}
);
var stdout = '';
wmic.stdout.on('data', function (data) {
stdout += data;
});
wmic.stderr.on('data', function (data) {
console.warn(data);
});
// var history = this.history[pid] ? this.history[pid] : {}
// , uptime = os.uptime()
// , self = this
wmic.on('close', function () {
stdout = stdout.split(os.EOL)[1];
stdout = stdout.replace(/\s\s+/g, ' ').split(' ');
var stats = {
kernelmodetime: parseFloat(stdout[0]),
usermodetime: parseFloat(stdout[1]),
workingsetsize: parseFloat(stdout[2])
};
// according to http://technet.microsoft.com/en-us/library/ee176718.aspx
var total = (stats.usermodetime + stats.kernelmodetime) / 10000000; //seconds
return done(null, {cpu: total, memory: stats.workingsetsize});
});
//http://social.msdn.microsoft.com/Forums/en-US/469ec6b7-4727-4773-9dc7-6e3de40e87b8/cpu-usage-in-for-each-active-process-how-is-this-best-determined-and-implemented-in-an?forum=csharplanguage
exec('wmic PROCESS '+pid+' get workingsetsize,usermodetime,kernelmodetime', function(error, stdout, stderr) {
if(error) {
console.log(error)
return done(error)
}
wmic.on('error', function (err) {
console.error("wmic spawn error: " + err);
return done(err);
});
stdout = stdout.split(os.EOL)[1]
stdout = stdout.replace(/\s\s+/g, ' ').split(' ')
var stats = {
kernelmodetime: parseFloat(stdout[0]),
usermodetime: parseFloat(stdout[1]),
workingsetsize: parseFloat(stdout[2])
}
//according to http://technet.microsoft.com/en-us/library/ee176718.aspx
var total = (stats.usermodetime + stats.kernelmodetime) / 10000000 //seconds
return done(null, {
cpu: total,
memory: stats.workingsetsize
})
})
}

@@ -152,0 +155,0 @@ }

{
"name": "pidusage",
"version": "0.1.0",
"version": "0.1.1",
"description": "Process cpu % and memory use of a PID",

@@ -5,0 +5,0 @@ "main": "index.js",

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc