【问题标题】:zabbix search for a string on triggerzabbix在触发器上搜索字符串
【发布时间】:2012-06-05 14:58:48
【问题描述】:

我在代理上有一个返回字符串的用户参数。该字符串包含一个带有 E:x 的行,如果没有发现错误,则 x==0,如果发现错误,则 x>0。我想在触发器上检查这个数字,但找不到怎么做。或者,如果可能的话,我可以使用我的命令的退出状态。谢谢。

【问题讨论】:

    标签: zabbix


    【解决方案1】:

    Zabbix 触发器在一个值上运行一个表达式。

    如果您的键返回一个字符串,则您必须使用正则表达式匹配来执行您所描述的操作:

    {my-template:system.hostname.regexp(IMPORTANT-SERVER)}#1
    

    如果主机名键返回的值与“IMPORTANT-SERVER”不匹配(区分大小写),这将触发警报。

    如果您的键返回一个无符号整数,您可以使用检查值的表达式。

    {my-template:uptime.last(0)}<300
    

    如果从键“uptime”返回的值小于 300,这将返回警报,在这种情况下,这意味着机器的正常运行时间少于 5 分钟并且可能已重新启动。这仅在值返回无符号整数时才有效。

    我的建议是将您的支票更改为只回复一个数字(或退出代码)。将数据收集为无符号整数。设置一个触发器,如果​​数字不是0,则发送触发器。

    否则,您将不得不将正则表达式与字符串进行匹配。

    【讨论】:

      【解决方案2】:

      试试这个方法:

      {HP LaserJet P2055dn:display.str(Load Paper)}
      

      它应该可以工作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-01-15
        • 2011-06-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-01-06
        • 2016-11-30
        相关资源
        最近更新 更多