如果发生崩溃,如何在 Monit 中重新启动服务之前运行 shell 脚本

如果发生崩溃,如何在 Monit 中重新启动服务之前运行 shell 脚本

我在 Linux 机器中使用 Monit 5.3.2。我正在使用 Monit 监控一些服务。我想在运行重启命令之前运行一个脚本。我使用了以下条件。

if does not exist for 2 times within 3 cycles then exec  "/bin/bash -c 'touch /tmp/somefile'" as uid someuser and gid someuser

if does not exist for 10 cycles then restart

不幸的是,只有重启操作被执行。

有人能帮我找出为什么第一条规则没有执行吗?还有其他方法可以解决这个问题吗?

答案1

这不是一个明确的答案,因为我是一个新手,正在追查类似的问题。

我目前怀疑最后一条规则会覆盖所有先前的规则。

如果是的话,请尝试:

if does not exist for 2 times within 3 cycles 
then exec  "/bin/bash -c 'touch /tmp/somefile'" as uid someuser and gid someuser 
ELSE if does not exist for 10 cycles then restart

相关内容