Monit, Apache'yi İzlenmedi olarak listeler


11

Monit dokümanına göre monit'i yeni kurdum ve yapılandırdım . Apache dışındaki tüm hizmetler Çalışıyor olarak listelenir, ancak Apache İzlenmez diyor .

Monit yapılandırmasındaki ilgili satırlar:

check process apache with pidfile /var/run/httpd.pid
        group www
        start program = "/etc/init.d/httpd start"
        stop program = "/etc/init.d/httpd stop"
        if failed host localhost port 80
        protocol http then restart
        if 5 restarts within 5 cycles then timeout

Sunucudan http: // localhost / sunucu durumu ve http: // localhost para cezasına erişebilirim . Monit, Apache için İzleme modunu aktif olarak listeler .

Sunucu CentOS 5.4 çalıştırıyor.

PID dosyası üst httpd sunucusu için doğru:

[server ~]$ cat /var/run/httpd.pid
2905
[server ~]$ ps auxc | grep httpd
root      2905  0.0  0.9  26952  4808 ?        Ss   11:36   0:00 httpd

Yanıtlar:


13

Pid dosyasının içeriğinin Apache ana işleminin pidiyle (yani httpdkök olarak çalışan işlem) eşleştiğinden emin olun . Pid dosyası bayat olabilir.

Eskiyse, Apache ana işleminin pid'ini alın ve benzer bir şey yapın echo 1234 > /var/run/httpd.pid, 1234söz konusu pid nerede .

Bundan sonra, monit monitor apachesöz konusu hizmetin izlenmesini yeniden başlatmak için çalıştırın .


2
PID dosyası doğruydu, ancak çalışma monit monitor apachebaşladı ve şimdi hizmeti yeniden başlattıktan sonra iyi çalışıyor gibi görünüyor. Ayrıca web arayüzünde Monitörü Etkinleştir düğmesini tıklamayı denemeliydim.
dunxd

1

İşletim sistemi sürümünü / dağıtımını sağlamazsınız, ancak CentOS 6'da izlemeniz gereken PID dosyası şu konumda bulunur: /var/run/httpd/httpd.pid

Yani şu şekilde değiştirin:

check process apache with pidfile /var/run/httpd/httpd.pid

Bu arada, CentOS 5'in Apache PID dosyası: /var/run/httpd.pid

Düzenle: Ayrıca PID yolunu da belirtin.

Monit posta listesinde, kullandığınız protokol testi hakkında bir not var:

http://lists.gnu.org/archive/html/monit-general/2004-12/msg00057.html

Ad tabanlı sanal ana bilgisayarlar kullanıyorsanız, bir ana bilgisayar adı veya site adı iletmeniz gerekebilir.


CentOS 5.4. PID dosyası doğru.
dunxd

Bir CentOS 5 sunucusunda yapılandırmanızı kullanarakProcess 'apache' status Does not exist monitoring status monitored
ewwhite

Bu çıktıyı nerede görüyorsunuz?
dunxd

Pidfile yolunuzu "/var/run/httpd/httpd.pid" olarak belirtmelisiniz. Ayrıca, VirtualHosts yönergesinin olası bir gereksinimi hakkında ilk cevaba verdiğim nota bakın.
ewwhite

Alıntılanan veya olmayan hiçbir fark yaratmaz.
dunxd
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.