【问题标题】:monit only exec y if x is true如果 x 为真,则仅监控 exec y
【发布时间】:2016-07-13 19:54:31
【问题描述】:

我正在尝试使用 monit 来监控 Confluence 实例。

check process catalina with pidfile /usr/local/Confluence/work/catalina.pid
   start program = "/etc/init.d/confluence start"
   stop program = "/etc/init.d/confluence stop"
   if does not exist then
   ...
   if failed host confluence.dev.opt port 80 protocol http then
   ...
   else if succeeded then
   ...

这些 if 语句中的每一个都调用一个单独的 bash 脚本来将 curl 请求发送到状态页面,该页面将电子邮件更新发送给所述页面的订阅者。

有时,catalina.pid 可以存在一个 pid 值,但没有人可以连接,就好像进程已经过时一样。但是,如果 confluence pid 实际上缺失,那么第一次和第二次检查都将失败,并且第三次检查会执行两次,从而导致执行 4 个单独的 curl 请求,从而产生垃圾邮件。

有没有什么办法只能在第一次检查通过后才能执行第二次检查?

【问题讨论】:

    标签: curl monitor monit


    【解决方案1】:

    您可以使用 取决于声明https://mmonit.com/monit/documentation/monit.html#SERVICE-DEPENDENCIES

    还要确保将您的支票分成小支票。

    【讨论】:

      猜你喜欢
      • 2021-06-19
      • 2014-08-14
      • 2021-02-10
      • 2018-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-06
      • 1970-01-01
      相关资源
      最近更新 更多