CPU yükü nasıl kaydedilir?

22

Bir problemi araştırmak için CPU yükünü bir dosyaya nasıl kaydederim?

    
sordu tommyk 17.01.2011 22:05

2 cevap

32

Bu çok iyi çalışıyor:

 while true; do uptime >> uptime.log; sleep 1; done
  • Bu işlem, cpu yüklemenizi her saniye kaydedip uptime.log dosyasına ekler.

    Daha sonra güzel bir grafik oluşturmak için bu dosyayı Gnumeric veya OpenOffice e-tablosuna içe aktarabilirsiniz (içe aktarma sırasında 'boşluklarla ayrılmış' seçeneğini seçin).

Scaine'ın fark ettiği gibi, bu sorunu teşhis etmek için yeterli olmayacaktır. Yani, ek olarak, bunu çalıştırın (veya bu bölüm için cevabını kullanın):

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
  • Bu, en çok 10 CPU açlık sürecini her beş saniyede bir ps.log dosyasına ekler.

    Bunun, top bilgisinin size sağladığı tüm tekne yükü olmadığını unutmayın. Bu sadece en iyi 10 ve sadece onların CPU Kullanımı, Bellek Kullanımı ve ilk argümanıdır (yani, /usr/bin/firefox 'de olduğu gibi daha fazla argüman olmadan komutları)

CPU yükünüzün çatıdan ne zaman geçtiğini görmek için bir grafik oluşturmak üzere bir E-tablo kullandıktan sonra, bu dosyayı en son hangi zamanda aradığını ve hangi sürecin neden kaynaklandığını görebilirsiniz.

Bu dosyalar şöyle görünecek:

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
 ...
    
verilen cevap Stefano Palazzo 17.01.2011 23:15
9

top komutunu -b seçeneğini kullanarak toplu iş modunda çalıştırabilir ve ardından bir dosyaya atabilirsiniz.

Bilgisayarınızın başlangıcında, bir terminal açın, çalıştırın

top -b > ~/cpu.txt

Sonra PC'niz donarsa, (muhtemelen büyük) metin dosyasını açın ve kilitlenmeden hemen önce çalışmakta olan bazı detaylar için son girişi kontrol edin. Aslında dosya o kadar aptalca olacak ki, bunun yerine tail -250 ~/cpu.txt çalıştırmayı tercih etmelisiniz.

Ayrıca, sorununuzun donanımla ilgili olması durumunda /var/log/kern.log adresinizi de kontrol edin (bu yalnızca bir yükseltme sonrasında gerçekleşiyorsa, ancak yine de kontrol edilmeye değer).

    
verilen cevap Scaine 17.01.2011 22:12

Etiketlerdeki diğer soruları oku