Re: Error reading pid from file

Ron Eggler <[email protected]> Wed, 23 Sep 2020 10:39:09 -0700
Newsgroups gmane.comp.monitoring.monit.general
Message-ID <[email protected]>
On 9/22/20 3:26 AM, Guillaume François wrote:
> Hello,
>
> The correct syntax is "check program" 
> (https://mmonit.com/monit/documentation/monit.html#Program)
> Also it is not recommended to specify an unique value in the cron 
> expression for the minute field.
> In your case, best is to trigger the check every 120 cycles (1 hours 
> -> 60 minutes -> 1 cycle every 30 sec -> every 120 cycles)
>
> It summarize to:
>
> check program ping.sh with path "/path/to/ping.sh"
>      every 120 cycles
>      if status != 0 then alert
>
> Regards.

Yes, Thanks!


>
>
> Le mar. 22 sept. 2020 à 01:06, Ron Eggler <[email protected] 
> <mailto:[email protected]>> a écrit :
>
>     Hi All,
>
>     I'm new here and also new to Monit.
>     I wrote a script that I would like to have invoked once an hour by
>     monit.
>
>     I have added the following to my /etc/monit/monitrc:
>
>     cat /etc/monit/monitrc
>     set daemon 30
>     set logfile /var/log/monit.log
>     set idfile /var/lib/monit/id
>     set statefile /var/lib/monit/state
>     set eventqueue
>            basedir /var/lib/monit/events # set the base directory where
>     events will be stored
>            slots 100                     # optionally limit the queue size
>
>     check ping.sh
>          with path "/path/to/ping.sh"
>          every "44 * * * *"
>          #if status != 0 then alert
>
>
>     and I got the following in /var/log/monit.log:
>
>     [UTC Sep 21 22:25:38] info     : Starting Monit 5.16 daemon
>     [UTC Sep 21 22:25:38] info     : '056e2c2' Monit 5.16 started
>     [UTC Sep 21 22:44:09] error    : Error reading pid from file
>     '/path/to/ping.sh'
>     [UTC Sep 21 22:44:09] error    : 'ping.sh' process is not running
>     [UTC Sep 21 22:44:09] info     : 'ping.sh' trying to restart
>
>     while:
>
>     ls -l /path/to/ping.sh
>     -rwxrwxr-x 1 root root 1045 Sep 21 20:08 /path/to/ping.sh
>
>     and inside the script, the pid is stored in /var/run/ping.pid:
>
>     #!/bin/bash
>     pidfile="/var/run/ping.pid"
>     # Get the pid of the currently running script
>     ps ax | grep $0 | grep $SHELL | awk '{print $1}'>$pidfile
>
>
>     the pid file is deleted on the bottom of the script with:
>
>     rm $pidfile
>
>
>     why is there an error: "Error reading pid from file
>     '/path/to/ping.sh'"?
>
>
>     Thank you, Ron
>
>
>
>
> -- 
> -----BEGIN GEEK CODE BLOCK-----
> Version: 3.1
> GCS/IT d(+) s++:- a C++$ ULC(+)>+++$ !P--- L+>$ !E---? W+++$ !N* !o-- 
> K--? w(+) !O---? !M- !V--? PS+? !PE Y+ PGP++>+++ !t-- !5 !X- R(+)>++* 
> tv-? b(-) DI !D- G(+)>+ e+++ h--() r->$ y?*
> ------END GEEK CODE BLOCK------