CPU 整个系统的使用百分比?
CPU usage as a percentage for the whole system?
我正在尝试创建一个包含资源使用统计信息的 botinfo 命令。我已经覆盖了内存(尽管内存使用百分比也很好)但我似乎无法获得 cpu 使用率。我尝试了多种包和方法,none 有效。我的记忆是:
const usedMemory = os.totalmem() - os.freemem()
如何在 discord.js 嵌入中使用 cpu 和 return?
process.cpuUsage()
方法returns当前进程的用户和系统CPU时间使用,在具有属性user和system的对象中,其值为microsecond values
(百万分之一秒)。这些值分别衡量在 user
和 system
代码中花费的时间,并且如果多个 CPU 核心正在为此进程执行工作,最终可能会大于实际经过的时间。
先前调用 process.cpuUsage() 的结果可以作为参数传递给函数,以获得差异读数。
import { cpuUsage } from 'process';
const startUsage = cpuUsage();
// { user: 38579, system: 6986 }
// spin the CPU for 500 milliseconds
const now = Date.now();
while (Date.now() - now < 500);
console.log(cpuUsage(startUsage));
// { user: 514883, system: 11226 }
有关详细信息,请查看 here。
如果你想获取 %,你可以使用现有的 npm 模块:node-os-utils。你可以这样使用它:
const osu = require('node-os-utils')
const cpu = osu.cpu
const count = cpu.count() // 8
cpu.usage()
.then(cpuPercentage => {
console.log(cpuPercentage) // 10.38
})
const osCmd = osu.osCmd
osCmd.whoami()
.then(userName => {
console.log(userName) // admin
})
有关详细信息,请查看文档 here。
我找到了一种方法。如果您使用 windows,node-os-utils (https://www.npmjs.com/package/node-os-utils) called loadavgTime that needs to be used with loadavg-windows (https://www.npmjs.com/package/loadavg-windows) 中有一个函数。默认情况下,它采用最后一分钟的 os.loadavg。然后我将它除以 2,然后乘以 10 cos 由于某种原因它输出一个奇怪的数字(在 1.__ 和 2.__ 之间)。它以百分比形式给出,您只需要在 console.log 时在其后添加 % 即可。这是代码:
const osu = require('node-os-utils')
require('loadavg-windows')
const cpu = osu.cpu
const usage = (cpu.loadavgTime() / 2) * 10
console.log(usage)
我正在尝试创建一个包含资源使用统计信息的 botinfo 命令。我已经覆盖了内存(尽管内存使用百分比也很好)但我似乎无法获得 cpu 使用率。我尝试了多种包和方法,none 有效。我的记忆是:
const usedMemory = os.totalmem() - os.freemem()
如何在 discord.js 嵌入中使用 cpu 和 return?
process.cpuUsage()
方法returns当前进程的用户和系统CPU时间使用,在具有属性user和system的对象中,其值为microsecond values
(百万分之一秒)。这些值分别衡量在 user
和 system
代码中花费的时间,并且如果多个 CPU 核心正在为此进程执行工作,最终可能会大于实际经过的时间。
先前调用 process.cpuUsage() 的结果可以作为参数传递给函数,以获得差异读数。
import { cpuUsage } from 'process';
const startUsage = cpuUsage();
// { user: 38579, system: 6986 }
// spin the CPU for 500 milliseconds
const now = Date.now();
while (Date.now() - now < 500);
console.log(cpuUsage(startUsage));
// { user: 514883, system: 11226 }
有关详细信息,请查看 here。
如果你想获取 %,你可以使用现有的 npm 模块:node-os-utils。你可以这样使用它:
const osu = require('node-os-utils')
const cpu = osu.cpu
const count = cpu.count() // 8
cpu.usage()
.then(cpuPercentage => {
console.log(cpuPercentage) // 10.38
})
const osCmd = osu.osCmd
osCmd.whoami()
.then(userName => {
console.log(userName) // admin
})
有关详细信息,请查看文档 here。
我找到了一种方法。如果您使用 windows,node-os-utils (https://www.npmjs.com/package/node-os-utils) called loadavgTime that needs to be used with loadavg-windows (https://www.npmjs.com/package/loadavg-windows) 中有一个函数。默认情况下,它采用最后一分钟的 os.loadavg。然后我将它除以 2,然后乘以 10 cos 由于某种原因它输出一个奇怪的数字(在 1.__ 和 2.__ 之间)。它以百分比形式给出,您只需要在 console.log 时在其后添加 % 即可。这是代码:
const osu = require('node-os-utils')
require('loadavg-windows')
const cpu = osu.cpu
const usage = (cpu.loadavgTime() / 2) * 10
console.log(usage)