cpu load measurement

来源:互联网 发布:学编程书籍推荐 编辑:程序博客网 时间:2024/05/31 19:01
参考:http://askubuntu.com/questions/22021/how-to-log-cpu-load

里面还介绍了怎么log特定进程的cpu占用率。
对你的问题更加实用一些。

要修改里面比较长的那一条命令。我试了半天,下面这条应该可以搞定了:

假设在client上运行的命令行命令为python testcpu.py, 你现在要log那个程序的CPU占用率情况

以下命令
ps -e -o pcpu,pmem,args --sort=pcpu | grep "python testcpu.py" | cut -d" " -f1-4|tail
会显示
0.0 0.0
0.2 0.0

第一行无关。第二行的0.2表示CPU占用率。只取第二行:
ps -e -o pcpu,pmem,cputime,args --sort=pcpu | grep "python testcpu.py" | cut -d" " -f1-5|sed -n '$p'

然后是需要找到运行的当前时刻:
date +'%s%N'
1354196938812272763

把时间和占用率加到一起:
echo `date +'%s%N'` `ps -e -o pcpu,pmem,args --sort=pcpu | grep "python testcpu.py" | cut -d" " -f1-4|sed -n '$p'`

让它每0.1秒运行一次,更新你的log文件/tmp/a.log
while true; do( echo `date +'%s%N'` `ps -e -o pcpu,pmem,args --sort=pcpu | grep "python testcpu.py" | cut -d" " -f1-4|sed -n '$p'`) >> /tmp/a.log; sleep 0.1; done
0 0
原创粉丝点击