2012-05-23 41 views
0

比方说,通过代理程序使用zabbix监控存储。我们希望当存储失败zabbix发送电子邮件与错误描述,由一些脚本产生。 zabbix是否可以获取字符串输出(ala nagios)并报告它(不仅仅是字符串监视和报告找到/未找到)还是报告只能用整数工作?zabbix报告错误字符串

回答

2

使用Zabbix做字符串或文本正则表达式检查非常简单。你可以用一个简单的命令行检查来做到这一点,它会回显错误或“ok”消息。

例如,你想检查日志中的“驱动器故障”,并有它的电子邮件,我会做这样的事情作为Zabbix的“关键”。

system.run[grep 'drive failure' /var/log/message || echo 'okay'] 

将支票设置为“文本”,它会报告一个grepped匹配或一个好的消息。然后,您可以使用正则表达式在警报发出的电子邮件进行任何不符合“OK”,例如:

{your_template:system.run[grep 'drive failure' /var/log/message || echo 'OK'].regexp(OK)}#1 

如果收到比其他任何一个文本行“这将报警好”。

在Zabbix中使用文本时存在一些限制。首先是Zabbix只报告第一行。第二个是检查必须总是返回文本,一个好的消息或一个错误。如果检查出现空白,Zabbix会认为它已损坏。