我使用 Zabbix Server 来监控我的环境。 Zabbix用来查看CPU的指标太混乱了,所以我想简化一下。
有没有办法获取每个核心cpu的使用百分比?
答案1
您可以使用top
实时系统监视器。top
在用户、系统进程和nice
进程之间分配 CPU 使用率,我们需要三者的总和,这就是awk
下面的命令正在执行的操作。因此,我们可以top
在b
atch模式下运行,这允许我们解析其输出。然而,正如所解释的这里,第一次迭代top -b
返回自启动以来的百分比,因此我们至少需要两次迭代 ( -n 2
) 才能获取当前百分比。为了加快速度,您可以将d
迭代之间的延迟设置为0.01
:
$ top -bn 2 -d 0.01 | grep '^%Cpu' | awk '{print "CPU"NR, $2+$4+$6"%"}'
CPU1 14.6%
CPU2 25%