【问题标题】:Embedded if with Monit嵌入 if 与 Monit
【发布时间】:2018-05-28 10:09:11
【问题描述】:

我正在寻找一个监控 Unix 计算机 CPU 的服务(并且可以根据负载做出反应),并认为 Monit 可以完成这项工作,但我处于困境:

我需要根据 CPU 负载水平 (>50% / >75% / >95%) 执行不同的操作。我写了这些行:

check system $HOST
    if cpu > 50% then exec "one.sh"
    if cpu > 75% then exec "two.sh"
    if cpu > 95% then exec "three.sh"

但是当 CPU 负载高于 95% 时,monit 会启动 3 个脚本。我想根据 CPU 负载监控启动 3 个脚本之一。

我用 monit 寻找嵌入的 if 但它似乎不存在。否则就很简单了。

你知道如何让它工作吗?

祝你有美好的一天!

比比奥

【问题讨论】:

    标签: monit


    【解决方案1】:

    这样的事情呢?

    check system $HOST
            if cpu > 95% then exec "three.sh" 
            if cpu > 75% then 
              if cpu < 95% then exec "two.sh"
            if cpu > 50% then 
              if cpu < 75% then exec "two.sh"
    

    【讨论】:

    • 谢谢,但它不起作用,monit syntaxe 似乎在“then”之后不接受“if”。它需要他们所谓的行动。
    【解决方案2】:

    如果 CPU 使用率超过 95%,它将始终执行所有三个脚本。

    您可以更好地为脚本中的状态设置优先级。

    但我敢肯定,如果您的 CPU 使用率在 50-70% 之间以长时间运行,那么它将单独执行第一个脚本 (one.sh)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-10-20
      • 2021-01-15
      • 2011-03-22
      • 2020-03-19
      • 2023-03-29
      • 1970-01-01
      • 2015-01-17
      相关资源
      最近更新 更多