I am using AWS Opsworks and AWS uses an old version of monit (5.3.2) to monitor their agent. Obviously, when their opsworks-agent dies, monit restarts it.
Recently, I wanted to monitor few processes of my own and required newer versions of monit to use the explicit "restart" command support. I upgraded monit to 5.13.
Now, monit does not restart opsworks agent if it dies!
I tried looking for changelog of monit to see if something was changed between versions, but could not find them for all versions beyond 5.7.
Can someone please take a look at opsworks config below and see what might be breaking?
opsworks-config follows -
check process opsworks-agent with pidfile "/var/lib/aws/opsworks/pid/opsworks-agent.pid"
start program = "/etc/init.d/opsworks-agent start"
stop program = "/etc/init.d/opsworks-agent stop"
depends on opsworks-agent-master-running
depends on opsworks-agent-statistic-daemons-log
depends on opsworks-agent-process-command-daemons-log
depends on opsworks-agent-keep-alive-daemons-log
group opsworks
check process opsworks-agent-master-running matching "opsworks-agent:\smaster"
if not exist for 2 cycles then restart
group opsworks
# check run of statistic daemon
check file opsworks-agent-statistic-daemons-log with path "/var/log/aws/opsworks/opsworks-agent.statistics.log"
if timestamp > 2 minutes for 3 cycles then restart
if does not exist for 3 cycles then restart
group opsworks
# check run of process command daemon
check file opsworks-agent-process-command-daemons-log with path "/var/log/aws/opsworks/opsworks-agent.process_command.log"
if timestamp > 2 minutes for 3 cycles then restart
if does not exist for 3 cycles then restart
group opsworks
# check run of keep alive deamon
check file opsworks-agent-keep-alive-daemons-log with path "/var/log/aws/opsworks/opsworks-agent.keep_alive.log"
if timestamp > 2 minutes for 3 cycles then restart
if does not exist for 3 cycles then restart
group opsworks
- end of file
Monit logs say restart done, but opsworks doesn't run. If I downgrade to 5.3.2, it does magically run!