Strona 1 z 1

Monitorowanie uruchomionych procesów

: 04 listopada 2011, 15:36
autor: kya
Witam.
Jestem w trakcie tworzenia aplikacji, która na podstawie obciążenia generowanego przez poszczególne procesy ma oceniać stan systemu, korzystając ze zgromadzonych wcześniej danych na temat tych procesów. Początkowo w planach miałam użycie polecenia:

Kod: Zaznacz cały

ps aux
i gromadzenie z niego danych na temat użycia zasobów przez poszczególne procesy w określonym czasie. Jednak jako, że aplikacja ma zbierać dane przez długi okres czasu konieczne jest rozróżnianie procesów po ich nazwie a nie PID. Tu pojawia się problem, jako, że niektóre procesy występują parokrotnie. Jak najlepiej rozróżniać takie procesy?

Ewentualnie może ktoś zna jakieś inne narzędzie, które mogło by się tutaj lepiej nadać? Na początku myślałam o programie nmon, ale nie udało mi się od niego wyciągnąć tego na czym mi zależało.

: 04 listopada 2011, 15:54
autor: lessmian2
kya pisze:konieczne jest rozróżnianie procesów po ich nazwie a nie PID. Tu pojawia się problem, jako, że niektóre procesy występują parokrotnie. Jak najlepiej rozróżniać takie procesy?
Po parze atrybutów pid i nazwa (coś jak klucz na kilku polach w SQL). A tak w ogóle to możesz zejść na niższy poziom - /proc/${PID}/. Tam jest wszystko :)

: 04 listopada 2011, 16:00
autor: kya
Problem w tym, że proces zbierania danych ma być dość długi, wiec para {PID, nazwa procesu} nie będzie jednoznacznie identyfikować procesu, gdyż z kolejnym uruchomieniem numery PID się pozmieniają. Z czego właściwie wynika wielokrotne występowanie niektórych procesów?