【发布时间】:2015-11-08 19:53:04
【问题描述】:
我正在运行这个命令
grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage "%"}'
但它只输出 0.99xxxx% 之类的东西
如果我进行 apt-get 升级或任何过程,我想它会超过 1%。即使运行压力 -c 1 也不会使它发生任何变化。
有没有办法准确记录 CPU 使用率?服务器有 1 个 vCPU。
需要每 5 秒记录一次。
while sleep 5; do "code" >> logfile; done
【问题讨论】:
-
top呢?您也可以使用普通的旧ps -
在使用awk时不熟悉top或ps
-
while (sleep 5); do的效率远低于while sleep 5; do,而且没有任何好处。 -
无论如何——你检查过你系统上
USER_HZ的值吗?它不一定是 1/100 秒;在桌面系统上,启动它并非闻所未闻.. -
我也......非常不清楚你的数学背后的推理。 (cputime) * 100 / (cputime + iowait)?您为什么希望它提供有用的结果?