사용자별로 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]

관련 정보