Re: Recovery email sent without failure or recovery log entry

Lutz Mader via This is the general mailing list for monit <[email protected]> Mon, 13 Jul 2026 08:11:37 +0200
Newsgroups gmane.comp.monitoring.monit.general
Message-ID <[email protected]>
Hello FYI,
based on the post from Christos Chatzaras, 09.07.2026 10:14 CEST,
Recovery email sent without failure or recovery log entry

I open the issue 1154, see
https://bitbucket.org/tildeslash/monit/issues/1154/succeeded-email-sent-without-a-failure

With a suggestion to fix the problem,
Lutz


Am 11.07.26 um 01:20 schrieb Lutz Mader via This is the general mailing
list for monit:
> Hello Christos Chatzaras,
> you are right, based on your test sample I receive "Resource limit
> succeeded" mails only, but no preceding "Resource limit matched" mail.
> 
> Based on Monit 5.35.2, "Resource limit matched" mails are sent first and
> if the cpu load is below the usage percentage a "Resource limit
> succeeded" mail is sent, as expected.
> 
> Nice to see your fix,
>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296636
> 
> Lutz
> 
> 
> Am 09.07.26 um 19:27 schrieb Christos Chatzaras:
>> For anyone experiencing the same issue, this patch restores the behavior of the previous Monit version:
>>
>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296636
>>
>>
>>> On 9 Jul 2026, at 11:14, Christos Chatzaras <[email protected]> wrote:
>>>
>>> Hello,
>>>
>>> I am using Monit 6.0.0 on FreeBSD 14+.
>>>
>>> My configuration includes:
>>>
>>> set daemon 30
>>>
>>> set alert [email protected] not on { instance, action, uptime }
>>>
>>> check system $HOST
>>>  if cpu usage > 65% for 20 cycles then alert
>>>  if cpu usage > 90% for 10 cycles then alert
>>>  if loadavg (15min) per core > 1.0 for 10 cycles then alert
>>>  if loadavg (5min) per core > 1.5 for 5 cycles then alert
>>>  if memory usage > 96% for 10 cycles then alert
>>>  if swap usage > 8 GB for 10 cycles then alert
>>>  if pageout > 100 per second for 10 cycles then alert
>>>  if pageout > 1000 per second for 3 cycles then alert
>>>
>>> The log shows only these CPU messages:
>>>
>>> Jul  9 10:32:17 server102 monit[42487]: 'server102.example.com' cpu usage of 86.2% matches resource limit [cpu usage > 65.0%]
>>>
>>> Jul  9 10:32:48 server102 monit[42487]: 'server102.example.com' cpu usage of 76.0% matches resource limit [cpu usage > 65.0%]
>>>
>>> There is no CPU recovery message in the Monit log.
>>>
>>> However, at the next cycle I received this email:
>>>
>>> Resource limit succeeded
>>>
>>> Description:
>>> cpu usage check succeeded [current cpu usage = 30.6%]
>>>
>>> I did not receive any failure email, and the Postfix logs contain only the recovery email.
>>>
>>> How can Monit send a 'Resource limit succeeded' email when:
>>>
>>> 1. The CPU condition was above 65% for only two cycles, not the required 20 cycles.
>>> 2. No failure email was sent.
>>> 3. No recovery message was written to the Monit log.
>>>
>>> Does 'matches resource limit' only mean that the current sample matched the condition, or can it change the shared resource event state before the 20-cycle threshold is reached?
>>>
>>> Could this be related to having multiple CPU, load average, memory, swap, and pageout rules under the same `check system` service?
>>>
>>> Thank you.
>>>
>>>
>>
>>
>>
> 
> 
>