【问题标题】:String Trigger How to Create?字符串触发器如何创建?
【发布时间】:2016-09-02 19:14:04
【问题描述】:

您好,我需要第一次创建字符串触发器。

我需要一个触发器来检查脚本中的 deploy_succeeded 是否成功

如果出现 deploy_succeeded 中的其他任何内容,则表达式必须触发,字符串可以是 any,但 8 分钟后触发器必须发出警报。

我已经创建了这个,但我确定这是不正确的。

{NETGLOBE NODES FAIL SNMP V3:Netglobe_Nodes_Fail.sh[{HOST.DNS}].regexp("deploy_succeeded")}=1

谢谢。

【问题讨论】:

  • 为什么你认为这是错误的?你试过看看它有什么作用吗?
  • 他检查的是字符串是否存在,但他想检测字符串丢失的情况,所以这是一个将 1 更改为 0 的简单情况 - 我在回答中解释了这一点。

标签: regex triggers zabbix


【解决方案1】:

嗯,这几乎是正确的。如果字符串deploy_succeeded 出现在输出中,它将发出警报。要反转它,您可以将其更改为 ...].regexp("deploy_succeeded")}=0

请注意,它将匹配一个子字符串。如果您想单独匹配确切的字符串,请使用regexp("^deploy_succeeded$")。如果你想匹配子字符串,函数str() 可能会快一点。

要检查deploy_succeeded 是否已存在8 分钟,请使用count() 函数,如下所示:count(8m,deploy_succeeded)=0

另见Zabbix trigger function documentation

【讨论】:

  • 谢谢朋友,但是如果“deploy_succeeded”更改超过 8 分钟然后显示触发器,我该如何设置它来检查它?
  • 不太清楚您所说的“更改超过”是什么意思 - 假设您想检查该字符串是否丢失了 8 分钟,count() 应该会有所帮助。相应地更新了答案。
猜你喜欢
  • 2014-02-12
  • 2010-10-08
  • 1970-01-01
  • 2014-12-04
  • 2013-03-04
  • 2014-02-02
  • 1970-01-01
  • 2018-07-26
  • 1970-01-01
相关资源
最近更新 更多