Por que o nrpe 'check_procs' não está encontrando meu processo do Passenger?

1

Estou tentando usar check_procs do NRPE para descobrir se Passenger está em execução no meu servidor. Ele é carregado de httpd , mas aparece separadamente.

32135 ?        Sl     0:09 Passenger RackApp: /usr/share/puppet/rack/puppetmasterd  
32589 ?        Sl     0:01 Passenger AppPreloader: /usr/share/puppet/rack/puppetmasterd  
32629 ?        Sl     0:05 Passenger RackApp: /usr/share/puppet/rack/puppetmasterd  
32751 ?        Sl     0:05 Passenger RackApp: /usr/share/puppet/rack/puppetmasterd  

Quando tento testá-lo da seguinte forma:

 check_procs -w 2: -c 3: -C Passenger

Diz-me que existem 0 processos encontrados. Eu os vejo - como faço para a NRPE contá-los?

    
por ethrbunny 04.06.2014 / 22:00

1 resposta

8

É provável que o nome do processo não seja o que você acha que é. Para descobrir como check_process está procurando seu trabalho, tente isto: check_procs -vv -C Passenger . Você verá algo assim:

/usr/lib64/nagios/plugins/check_procs -vv -C Passenger   
CMD: /bin/ps axwo 'stat uid pid ppid vsz rss pcpu comm args'  
PROCS OK: 0 processes with command name 'Passenger'  

Agora pegue o comando ps e tente você mesmo assim:

/bin/ps axwo 'stat uid pid ppid vsz rss pcpu comm args' | grep Passenger

Observe que há muitos trabalhos que correspondem à sua descrição ... mas não têm o nome que você achava que seriam ...

S+       0   841 26063 103244   852  0.0 grep            grep Passenger  
Ssl      0 30160  2134 216524  1972  0.0 PassengerWatchd PassengerWatchdog  
Sl       0 30164 30160 1108096 4980  0.2 PassengerHelper PassengerHelperAgent  
Sl      99 30170 30160 219616  4292  0.0 PassengerLoggin PassengerLoggingAgent  
Sl      52 32135     1 217972 113944 1.1 ruby            Passenger RackApp:   /usr/share/puppet/rack/puppetmasterd                
Sl      52 32629     1 235484 131480 1.9 ruby            Passenger RackApp:   /usr/share/puppet/rack/puppetmasterd                
Sl      52 32751     1 218672 114568 1.7 ruby            Passenger RackApp: /usr/share/puppet/rack/puppetmasterd     

Agora altere seu comando check_procs para corresponder:

/usr/lib64/nagios/plugins/check_procs  -C ruby -a Passenger  
PROCS OK: 3 processes with command name 'ruby', args 'Passenger'
    
por 04.06.2014 / 22:00

Tags