TOPのCPU使用率とかを集計する

PSのCPU使用率は負荷調査には支えないので、TOPのほうでやってます。 プロセスが複数にわかれるものを集計して表示。

RubyのCPU使用率集計
(top -d 0 -n 1 -c -b; echo "";) | grep Ruby | grep -v "grep" | awk '{a += $9;} END {print a}'

httpdのCPU使用率集計
(top -d 0 -n 1 -c -b; echo "";) | grep httpd | grep -v "grep" | awk '{a += $9;} END {print a}'

mysqlのCPU使用率集計
(top -d 0 -n 1 -c -b; echo "";) | grep mysql | grep -v "grep" | awk '{a += $9;} END {print a}'

TOPの%表記の最小は0.0ですがたぶんどっかで切り捨て切り上げされているので、 0.1とか0.0がたくさんいる場合は気をつけた方がいいです。 0.0でも1000いたら内部では結構な量になっているかもしれません。

Rubyのmemory使用率集計
(top -d 0 -n 1 -c -b; echo "";) | grep Ruby | grep -v "grep" | awk '{a += $10;} END {print a}'

httpdのmemory使用率集計
(top -d 0 -n 1 -c -b; echo "";) | grep httpd | grep -v "grep" | awk '{a += $10;} END {print a}'

mysqlのmemory使用率集計
(top -d 0 -n 1 -c -b; echo "";) | grep mysql | grep -v "grep" | awk '{a += $10;} END {print a}'