如何获取服务器 cpu 以及 node.js 中的内存和磁盘百分比

how to get server cpu and memory and disk percentage in node.js

var os  = require('os-utils');
os.cpuUsage(function(v){
    console.log( 'os-utils CPU Usage (%): ' + v ); 
    // os-utils CPU Usage (%): 0.11180382377389864
});
os.cpuFree(function(v){
    console.log( 'os-utils CPU Free:' + v );
    // os-utils CPU Free:0.8876135425268373
});

var osu = require('node-os-utils')
var cpu = osu.cpu
cpu.usage()
.then(info => {
    console.log('node-os-utils cpu.usage '+info)
    // node-os-utils cpu.usage 11.53
})
cpu.free()
.then(info => {
    console.log('node-os-utils cpu.free '+ info)
    // node-os-utils cpu.free 88.47
})

太烦人了。 为什么 os-utils 值与 node-os-utils 值不同? 我需要服务器当前CPU和磁盘内存值运行node.js -当前 CPU 使用情况**(百分比) -可用内存* (free/total) -可用磁盘 space (free/total)

Why is the os-utils value different from the node-os-utils value?

因为一是百分比(0到100之间的数字),一是0到1之间的数字

(我假设 multi-core 系统可以将最大数量乘以核心数量。)

值相同。它们的表达方式略有不同。

似乎 os-utils 包运行良好。只是百分比的格式是从 0 到 1,意思是 0 => 0%1 => 100% 等等。

关于获取磁盘 space 卷信息,您可以使用包 diskusage。 您可以在那里查看文档 https://www.npmjs.com/package/diskusage

const disk = require('diskusage');

// get disk usage. Takes mount point as first parameter
disk.check('/', function(err, info) {
    const freeInPercentage = info.free / info.total;
    const usedInPercentage = info.available / info.total;

    console.log(`free disk space: ${freeInPercentage * 100}%`);
    console.log(`used disk space: ${usedInPercentage * 100}%`);
});