Thanks much, Martin! I didn't realize that it's possible to override default action in such way. This is great!
About idea with stopping monitoring this is not possible since updates are automatic decision by 3rd party system. Third idea I think of, is to let Monit sense that service is 'administratively stopped' by `init.d/service stop` and not restart in that case. This is possible in Centos, since their init scripts usually create `/var/lock/subsys/servicename` file when service is started from init.d scripts and `rm` that file when stopped. Thus, it's theoretically possible to distinguish situation when service is died and not normally stopped. (This is sort of what condrestart do.) Example, how I envision it: check process exim with pidfile /var/spool/exim/exim-daemon.pid if does not exists for 5 cycles then start # 5 cycles since administrative stop can be slow start "/sbin/service exim start" depend exim.subsys check file exim.subsys /var/lock/subsys/exim noalert x@xx But I think (from reading docs) Monit will just 'unmonitor' exim.subsys if `/var/lock/subsys/exim` does not exists, so if it reappears nothing will happen. Which is not what I need. Maybe there is proper way to do that sort of checking? Would be cool just to write 'depend on file /var/lock/subsys/exim' in 'check process' statement, to make it only work when no `/var/lock/subsys/exim` exists. Yes, that case will prevent service start after reboot, which is tolerable or even desired in case of Monit used only as watchdog. (Sorry, feature request again. :) Thanks, Don. 28.10.2014, 17:39, "Martin Pala" <[email protected]>: > Hello, > > you can disable the monitoring before your update begins and enable it again > when it stops: > > 1.) monit unmonitor exim > 2.) perform exim update / deploy application > 3.) monit monitor exim > > If you need to delay the implicit restart if the process stopped, you can > override the default action: > > --8<-- > check process exim with pidfile /var/spool/exim/exim-daemon.pid > if does not exist for 10 cycle then restart > --8<-- > > Regards, > Martin >> On 28 Oct 2014, at 15:21, Do <[email protected]> wrote: >> >> Hello, >> >> Many people, like me, have host management systems (like cPanel), that when >> doing periodic system update can temporary stop/start services on its own. >> But I still want Monit to watch services. So I need Monit to lag a bit for >> its checks, thus making it always slower than quick service stop/start when >> system is updated. But I don't see suitable options in Monit config. >> >> For example, If I have >> >> check process exim with pidfile /var/spool/exim/exim-daemon.pid >> every 10 cycles >> start "/sbin/service exim start" >> >> (where cycle=1minute), this does not guarantee that Exim is permitted to be >> down for 10 minutes. It could happen than Monit just reached 10th cycle >> seconds before Exim is stopped. As consequence Exim will be started in the >> middle or stopping or updating. >> >> Can we have something like 'for 10 cycles [then start]' option added for >> 'every 1 cycle' statement? (Feature request.) >> >> Thanks, >> Don. >> >> -- >> To unsubscribe: >> https://lists.nongnu.org/mailman/listinfo/monit-general > > -- > To unsubscribe: > https://lists.nongnu.org/mailman/listinfo/monit-general -- To unsubscribe: https://lists.nongnu.org/mailman/listinfo/monit-general
