CPU로드를 기록하는 방법?


30

문제를 조사하기 위해 파일에 CPU로드를 기록하는 방법은 무엇입니까?

답변:


42

이것은 매우 잘 작동합니다.

 while true; do uptime >> uptime.log; sleep 1; done
  • 그러면 CPU로드가 1 초마다 기록되어 파일에 추가됩니다 uptime.log.

    그런 다음이 파일을 Gnumeric 또는 OpenOffice 스프레드 시트로 가져와 멋진 그래프를 만들 수 있습니다 (가져올 때 '공백으로 구분'선택).

Scaine에서 알 수 있듯이 이것은 문제를 진단하기에 충분하지 않습니다. 따라서 추가로 이것을 실행하십시오 (또는이 부분에 그의 대답을 사용하십시오).

while true; do (echo "%CPU %MEM ARGS $(date)" && ps -e -o pcpu,pmem,args --sort=pcpu | cut -d" " -f1-5 | tail) >> ps.log; sleep 5; done
  • 그러면 ps.log5 초마다 CPU 사용량이 많은 상위 10 개의 프로세스가 파일에 추가 됩니다.

    이것은 정보 top가 가득한 전체 정보가 아닙니다 . 이것은 상위 10 개이며 CPU 사용량, 메모리 사용량 및 첫 번째 인수입니다 (예 :에서와 같이 추가 인수가없는 명령 /usr/bin/firefox)

스프레드 시트를 사용하여 CPU로드가 지붕을 통과 한시기를 확인하는 그래프를 만든 후 가장 가까운 시간에이 파일을 검색하여 어떤 프로세스로 인해 발생했는지 확인할 수 있습니다.

그 파일들은 다음과 같습니다 :

uptime.log

~$ cat uptime.log 
 22:57:42 up 1 day,  4:38,  4 users,  load average: 1.00, 1.26, 1.21
 22:57:43 up 1 day,  4:38,  4 users,  load average: 0.92, 1.24, 1.21
 22:57:44 up 1 day,  4:38,  4 users,  load average: 0.92, 1.24, 1.21
 22:57:45 up 1 day,  4:38,  4 users,  load average: 0.92, 1.24, 1.21
 ...

ps.log

%CPU %MEM ARGS Mo 17. Jan 23:09:47 CET 2011
 0.7  0.9 /usr/bin/compiz
 0.8  0.5 /usr/lib/gnome-panel/clock-applet
 1.1  1.7 /opt/google/chrome/chrome
 1.2  0.3 /usr/bin/pulseaudio
 1.8  4.0 /opt/google/chrome/chrome
 2.6  1.5 /opt/google/chrome/chrome
 2.6  3.2 /usr/bin/google-chrome
 3.6  2.6 /opt/google/chrome/chrome
 4.9  1.5 /usr/bin/X
 5.7  1.6 /opt/google/chrome/chrome
%CPU %MEM ARGS Mo 17. Jan 23:09:48 CET 2011
 0.7  0.9 /usr/bin/compiz
 0.8  0.5 /usr/lib/gnome-panel/clock-applet
 1.0  1.7 /opt/google/chrome/chrome
 1.2  0.3 /usr/bin/pulseaudio
 1.8  4.0 /opt/google/chrome/chrome
 2.6  1.5 /opt/google/chrome/chrome
 2.6  3.2 /usr/bin/google-chrome
 3.6  2.6 /opt/google/chrome/chrome
 4.9  1.5 /usr/bin/X
 5.7  1.6 /opt/google/chrome/chrome
 ...

3
실제로 올바른 CPU 사용량을 인쇄합니까? 나는 이것을 centos에서 시도했고 메모리 사용 만이 정확했다 :(
Menelaos Bakopoulos

Putty 연결을 닫은 후에도 VPS에서이 명령을 계속 실행하려면 어떻게해야합니까?
Lucas Bustamante

1
보고 된 CPU 사용량 ps이 중요하지 않은 경우 루트로 실행하십시오.
Stefano Palazzo

Putty 연결을 닫은 후에도 VPS에서이 명령을 계속 실행하려면 어떻게해야합니까 ????
Mostafa

10

옵션 top을 사용하여 명령을 배치 모드로 실행 -b한 다음 파일로 덤프 할 수 있습니다.

PC를 시작할 때 터미널을 열고 실행하십시오.

top -b > ~/cpu.txt

그런 다음 PC가 멈 추면 (아마도 거대한) 텍스트 파일을 열고 충돌 직전에 실행중인 항목에 대한 세부 사항을 마지막 항목에서 확인하십시오. 실제로 파일은 너무 어리석어 서 tail -250 ~/cpu.txt대신 실행하는 것이 좋습니다.

또한 하드웨어 관련 문제인 경우 /var/log/kern.log를 확인하십시오 (업그레이드 후에 만 ​​발생할 수 있지만 그럼에도 불구하고 확인할 가치가있는 경우).



0

퍼티 (SSH 클라이언트) 세션 종료 후이 명령을 실행해야하는 사람들을 위해. 명령을 사용 screen하거나 (를 사용하여 설치 apt-get)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.