Alright. That explains. Thank you. But, is there a reason why else is not 
supported? Or if else will be added to this in the future?

________________________________
From: monit-general <monit-general-bounces+mehul.ved=nexsales....@nongnu.org> 
on behalf of Martin Pala <mart...@tildeslash.com>
Sent: Thursday, June 16, 2016 9:47:40 PM
To: This is the general mailing list for monit
Subject: Re: Syntax for else if

The "if x restarts within y cycles then ..." statement doesn't support the 
"else" part: 
https://mmonit.com/monit/documentation/monit.html#SERVICE-RESTART-LIMIT

Best regards,
Martin


On 16 Jun 2016, at 16:59, Mehul Ved 
<mehul....@nexsales.com<mailto:mehul....@nexsales.com>> wrote:

Here's what I have configured:

  if 2 restarts within 10 cycles then exec "/usr/local/bin/pagerduty-trigger 
frontendlogger"
  else if succeeded then exec "/usr/local/bin/pagerduty-trigger frontendlogger"

but when I do monit validate it throws following error:

  /etc/monit/conf.d/frontendLogger.conf:19: syntax error 'else'

The else in the above configuration is the 19th line.

Here's the whole file, in case it helps

----- START -----
check process frontendLogger matching frontendLogger
  start program = "/bin/systemctl start frontendLogger"
  stop program = "/bin/systemctl stop frontendLogger"
  restart program = "/bin/systemctl restart frontendLogger"
  group nodejs
  if failed host 127.0.0.1 port 10500 protocol http
    request /ping
    content = "PONG"
    with timeout 2 seconds
    for 2 times in 4 cycles
    then restart
  if failed host vr.com<http://vr.com/> port 443 type TCPSSL protocol http
    request /logger/ping
    content = "PONG"
    with timeout 2 seconds
    for 2 times within 4 cycles
    then restart
  if 2 restarts within 10 cycles then exec "/usr/local/bin/pagerduty-trigger 
frontendlogger"
  else if succeeded then exec "/usr/local/bin/pagerduty-trigger frontendlogger"
  if does not exist for 3 times in 10 cycles then exec 
"/usr/local/bin/pagerduty-trigger frontendlogger"
  else if succeeded then exec "/usr/local/bin/pagerduty-trigger frontendlogger"
  if changed pid for 3 times in 10 cycles then exec 
"/usr/local/bin/pagerduty-trigger frontendlogger"
  else if succeeded then exec "/usr/local/bin/pagerduty-trigger frontendlogger"
  if memory > 70 MB for 3 cycles then exec "/usr/local/bin/pagerduty-trigger 
frontendlogger"
  else succeeded then exec "/usr/local/bin/pagerduty-trigger frontendlogger"
  if cpu > 1% for 3 cycles then exec "/usr/local/bin/pagerduty-trigger 
frontendlogger"
  else if succeeded then exec "/usr/local/bin/pagerduty-trigger frontendlogger"
----- END -----

________________________________
From: monit-general 
<monit-general-bounces+mehul.ved=nexsales....@nongnu.org<mailto:monit-general-bounces+mehul.ved=nexsales....@nongnu.org>>
 on behalf of Rui Lapa <rui.l...@ruilapa.net<mailto:rui.l...@ruilapa.net>>
Sent: Thursday, June 16, 2016 4:49 PM
To: This is the general mailing list for monit
Subject: Re: Syntax for else if


ELSE IF SUCCEEDED THEN

not

ELSE IF <test> THEN

On Thu, Jun 16, 2016 at 11:17 AM, Mehul Ved 
<mehul....@nexsales.com<mailto:mehul....@nexsales.com>> wrote:
Hello,
  I am configuring pagerduty integration with monit and have run into a 
roadblock while setting it up. As per the pagerduty documentation,
- to trigger a new incident, we need to add

if does not exist for 3 cycles
        then exec "/etc/monit/pagerduty-trigger crond"

which works fine.

- to automatically mark the issue as resolved, we need to add

    else if passed for 3 cycles
        then exec "/etc/monit/pagerduty-resolve crond"

but this causes syntax error.

So, I looked up the monit documentation at 
https://mmonit.com/monit/documentation/monit.html and it shows the following 
syntax:

IF <test> THEN <action> [ELSE IF SUCCEEDED THEN <action>]

and this causes validation error as well.

I went through the changelog as well as the issue list on bitbucket but failed 
to find any information on the same. Has anything changed? Did I miss something 
here?
documentation - M/Monit<https://mmonit.com/monit/documentation/monit.html>
mmonit.com<http://mmonit.com/>
Version 5.18. NAME; SYNOPSIS; DESCRIPTION; WHAT TO MONITOR? GENERAL OPERATION. 
Options; Arguments; THE MONIT CONTROL FILE. Service checks. Process; File; 
Fifo; Filesystem



--
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

Reply via email to