[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[monit] How to Reset Monit's Cycle Counters?
From: |
Art Age Software |
Subject: |
[monit] How to Reset Monit's Cycle Counters? |
Date: |
Tue, 1 Jul 2008 18:32:39 -0700 |
I have a service that looks something like this:
-------------
check file some-file with path /var/run/check.tmp
start program = "/bin/touch /var/run/check.tmp"
mode manual
every 2 cycles
if changed timestamp 5 times within 10 cycles then exec "/some/script"
if 10 restarts within 20 cycles then timeout
-------------
I would like to find some way of resetting monit's check on the
timestamp after the exec "/some/script" occurs. Currently, exec
"/some/script" (indirectly) invokes "monit unmonitor some-file"
(through heartbeat). However, when monitoring is re-enabled on
some-file in the future, monit will treat an immediate occurrence of
a changed timestamp as being within the window of "5 times within 10
cycles" which causes it to immediately invoke "/some/script" again. In
my case, "/some/script" is a heartbeat failover command, so the
unfortunate effect is that the two nodes just ping-pong the services
back and forth between them every minute.
I have tried restarting the some-file service (as opposed to
unmonitor/monitor), which also does not work.
So far, the only thing that seems to work is to force a "monit reload".
Is there any other way?
- [monit] How to Reset Monit's Cycle Counters?,
Art Age Software <=