Jak zapisać do loga konkretne wyniki programu top lub alternatywnego

Tylko tematy nie mieszczące się powyżej.
Golem_XIV
Piegowaty Guziec
Piegowaty Guziec
Posty: 28
Rejestracja: 21 gru 2005, 07:53
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Jak zapisać do loga konkretne wyniki programu top lub alternatywnego

Post autor: Golem_XIV »

Czy można z polecenia top wyciągnąć wartości dla określonego procesu i zapisać je w loga?
Chciałbym zmierzyć zużycie procesora dla programu mplayer przy odtwarzaniu filmu 720p i zapisać w logu, aby potem sobie to przeanalizować.
Do podglądu zużycia zasobów używam polecenia top, które pokazuje zbyt dużo danych dla zbyt dużej ilości procesów.
Po wielu eksperymentach i czytaniu mana doszedłem do polecenia

Kod: Zaznacz cały

top -d 3 -p 14015 -b >toplog.txt
Oczywiście wcześniej sprawdzam top'em PID mplayera.
Niestety uzyskuje w ten sposób zbyt wiele danych, np:
top - 22:43:19 up 1:10, 2 users, load average: 1.21, 1.03, 1.12
Tasks: 1 total, 0 running, 1 sleeping, 0 stopped, 0 zombie
Cpu(s): 43.4%us, 7.1%sy, 3.4%ni, 42.9%id, 2.8%wa, 0.3%hi, 0.1%si, 0.0%st
Mem: 1026468k total, 1008532k used, 17936k free, 230596k buffers
Swap: 499704k total, 2160k used, 497544k free, 395464k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
14015 golem 20 0 155m 32m 12m S 67.8 3.3 0:48.15 mplayer


top - 22:43:22 up 1:10, 2 users, load average: 1.19, 1.03, 1.12
Tasks: 1 total, 0 running, 1 sleeping, 0 stopped, 0 zombie
Cpu(s): 77.0%us, 6.0%sy, 0.0%ni, 16.3%id, 0.0%wa, 0.7%hi, 0.0%si, 0.0%st
Mem: 1026468k total, 1008656k used, 17812k free, 230596k buffers
Swap: 499704k total, 2160k used, 497544k free, 395468k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
14015 golem 20 0 155m 32m 12m S 65.2 3.3 0:50.11 mplayer

Tak naprawdę obchodzi mnie tylko wartość %CPU, jednakże z powyższego misz-masz trudno jest wydobyć tą wartość.
Czy więc można zalogować tylko %CPU dla PID mplayera do loga?

Żeby chociaż dało się logować z topa bez tego powtarzającego się nagłówka, już by było łatwiej...

A może w tym celu należy użyć jakiegoś innego polecenia?

Liczę na Waszą pomoc.
Awatar użytkownika
k2cl
Przyjaciel
Przyjaciel
Posty: 3632
Rejestracja: 09 gru 2007, 12:48
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: LXDE
Architektura: x86

Odp: Jak zapisać do loga konkretne wyniki programu top lub alternatywnego

Post autor: k2cl »

Po pierwsze - nie widzę sensu definiowania czasu odświeżania polecenia top, skoro ustawiona przez Ciebie wartość jest taka sama jak domyślna (3 sekundy) :)

Przechodząc do samego zagadnienia... Nigdy nie grzebałem przy top'ie, ale ma on kilka opcji uruchamianych w trybie interaktywnym. Jeżeli uruchomisz go bez żadnych parametrów, wpisując po prostu ...a następnie wciśniesz klawisze "t", "l" oraz "m", pozbędziesz się podsumowania, które Cię nie interesuje. Teraz tylko "Shift+w" i zapisujesz ustawienia do pliku ~/.toprc.
Od tego momentu top za każdym razem będzie się uruchamiać bez informacji ogólnych (możesz to oczywiście odwrócić, uruchamiając go w normalny sposób, wciskając "t" "l" i "m" i zapisując konfigurację, albo najzwyczajniej w świecie usuwając plik ~/.toprc)

Teraz wynik top przekierowany do pliku tekstowego będzie już zawierać znacznie mniej informacji - a gdyby bardzo Ci na tym zależało, można go poddać dalszej obróbce :)
Work less, climb more :D
Golem_XIV
Piegowaty Guziec
Piegowaty Guziec
Posty: 28
Rejestracja: 21 gru 2005, 07:53
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: Jak zapisać do loga konkretne wyniki programu top lub alternatywnego

Post autor: Golem_XIV »

O dzięki to znacznie ułatwia sprawę. Teraz widać już ładnie uszeregowane dane, z którymi można coś zrobić!
ODPOWIEDZ

Wróć do „Inne”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość