ユーザー別にCPUを取得

ユーザー別にCPUを取得

monit を使用して、システム ユーザーの CPU 使用率を取得するアラートを作成する必要があります。

top -b -n 1 -u user1 | awk 'NR>7 { sum += $9; } END { print sum; }'

良い解決策のように思えますが、上記のコマンドを実行するたびに (当然ですが) 値が変更されるため、信頼性については確信がありません。したがって、VALUE が電子メール アラートのように送信されるため、2 ~ 5 秒以内にユーザーによる CPU の「正確な」使用が必要です。

答え1

これを試して

ps -eo pcpu,pid,user,args | sort -k 1 -r | head -5

出力は次のようになります

%CPU   PID USER     COMMAND
0.6 18695 mysql  /usr/sbin/mysqld
0.1   961 root     [kdmflush]
0.1   937 root     [kdmflush]
0.1  1025 root     [jbd2/dm-2-8]

関連情報