monit-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [monit] Monit fails to create PID file on restart


From: Martin Pala
Subject: Re: [monit] Monit fails to create PID file on restart
Date: Thu, 24 Jun 2010 16:48:06 +0200

The pidof shows pid of all matching processes - in case of apache there is one master httpd process (parent) which spawns number of child processes to handle particular requests - if apache is stopping it may take a while before they handle all pending requests and stop. Since the pidfile doesn't exist i suppose apache is not running on your machine and only some child processes remain active (stopping) ... their parent pid will be most probably "1" (their original parent exited). You can verify apache's status for example using 'apachectl status' and also by trying to connect to the http service which should fail.

If despite missing pidfile apache is running and serving requests, then you have some problem with apache's startup script.

Note that monit runs the script in "sandbox" and purges environment variables when starting the script (for security reasons). If you apache's startup depends on some variable, you will need to modify the start script to include it (apache usually uses "envvars" file which is should contain variables required for apache).


On Jun 24, 2010, at 4:09 PM, Tong Anh Quan wrote:

Yes, it is. But there is no pidfile in /var/run, as I mentioned above:

# pidof httpd
21445 21444 21443 21432 21431 21429 21428 21427 21426 21425 21424 21422

# ls /var/run/ | grep httpd
# ls /var/run/*.pid
/var/run/atd.pid     /var/run/haldaemon.pid   /var/run/monit.pid     /var/run/sm-client.pid  /var/run/vmware-guestd.pid
/var/run/auditd.pid  /var/run/iscsid.pid      /var/run/pcscd.pid     /var/run/snmpd.pid      /var/run/xinetd.pid
/var/run/crond.pid   /var/run/klogd.pid       /var/run/proftpd.pid   /var/run/sshd.pid
/var/run/gpm.pid     /var/run/messagebus.pid  /var/run/sendmail.pid  /var/run/syslogd.pid


On Thu, Jun 24, 2010 at 7:57 PM, Martin Pala <address@hidden> wrote:
OK.

Is the apache running then after monit start? If so, is the pidfile updated with correct pid?


On Jun 24, 2010, at 2:55 PM, Tong Anh Quan wrote:

I am sure about the pidfile location because of I am using CentOS. Moreover, I re-checked it in init script:

# grep pidfile /etc/init.d/httpd
# pidfile: /var/run/httpd.pid

On Thu, Jun 24, 2010 at 5:17 PM, Martin Pala <address@hidden> wrote:
The pidfile should be created either by the start script or started program itself (in this case apache).

Are you sure that your apache instance creates the pidfile /var/run/httpd.pid? The pidfile location depends on apache configuration (for example ubuntu uses usually /var/run/apache2.pid which can be customized either via apache2.conf PidFile statement or apache's envvars file APACHE_PID_FILE variable)


On Jun 24, 2010, at 11:49 AM, Tong Anh Quan wrote:

> Hi,
>
> Have you solved this problem? Today, the same thing happen to me. My monit.conf:
>
>   check process apache with pidfile /var/run/httpd.pid
>     start program = "/etc/init.d/httpd start"
>     stop program  = "/etc/init.d/httpd stop"
>     if cpu > 60% for 2 cycles then alert
>     if cpu > 80% for 5 cycles then restart
>     if totalmem > 600.0 MB for 5 cycles then restart
>
> When the Apache reach the threshold, monit attempts to restart Apache without pid file, therefore it thinks Apache fails to start:
>
> [ICT Jun 24 12:50:19] error    : 'apache' total mem amount of 647948kB matches resource limit [total mem amount>614402kB]
> [ICT Jun 24 12:50:20] info     : 'apache' trying to restart
> [ICT Jun 24 12:50:20] info     : 'apache' stop: /etc/init.d/httpd
> [ICT Jun 24 12:50:21] info     : 'apache' start: /etc/init.d/httpd
> [ICT Jun 24 12:51:20] error    : 'apache' process is not running
> [ICT Jun 24 12:51:20] error    : 'apache' failed to start
>
> `pidof httpd` still return the parent and child's PID but there is no httpd.pid in /var/run.
> Additional:
> - monit start with root user
> - there is no error in Apache log
>
> Can anyone help me to debug this case? Thanks in advance.
>
>
> --
> --- Hạnh phúc là một ly Cafe và nhạc Trịnh ---
> --
> To unsubscribe:
> http://lists.nongnu.org/mailman/listinfo/monit-general


--
To unsubscribe:
http://lists.nongnu.org/mailman/listinfo/monit-general



--
--- Hạnh phúc là một ly Cafe và nhạc Trịnh ---
--
To unsubscribe:
http://lists.nongnu.org/mailman/listinfo/monit-general


--
To unsubscribe:
http://lists.nongnu.org/mailman/listinfo/monit-general



--
--- Hạnh phúc là một ly Cafe và nhạc Trịnh ---
--
To unsubscribe:
http://lists.nongnu.org/mailman/listinfo/monit-general


reply via email to

[Prev in Thread] Current Thread [Next in Thread]