Yes, this should work.

Also note that you can simplify connection test - monit 5.10 and newer have 
support redis protocol test:

check process redis with pidfile /usr/local/redis/redis.pid
   start program = "/usr/local/redis/start.sh" with timeout 60 seconds
   stop program  = "/usr/local/redis/stop.sh"
   if failed port 6379 protocol redis then restart
   if 3 restarts within 3 cycles then exec "killall -9 redis"
   if 6 restart within 6 cycles then timeout

Regards,
Martin


> On 13 Mar 2015, at 09:35, Maciej Ostaszewski <[email protected]> 
> wrote:
> 
> I need "soft" and "hard" stop command.
> Hard stop command will be executed only when stop command does not
> work for 3 times.
> What is the best method to achieve  this?
> Will this work?
> 
> check process redis with pidfile /usr/local/redis/redis.pid
>    start program = "/usr/local/redis/start.sh" with timeout 60 seconds
>    stop program  = "/usr/local/redis/stop.sh"
>    if failed host localhost port 6379
>        send "PING\n"
>        expect "PONG"
>    then restart
>    if 3 restarts within 3 cycles then exec "killall -9 redis"
>    if 6 restart within 6 cycles then timeout
> 
> maciek
> 
> --
> To unsubscribe:
> https://lists.nongnu.org/mailman/listinfo/monit-general


--
To unsubscribe:
https://lists.nongnu.org/mailman/listinfo/monit-general

Reply via email to