Zabbix 3.0与PagerDuty无法正常工作

时间:2016-02-27 17:25:21

标签: zabbix

我已使用Zabbix 3.0服务器在Digital Ocean上配置了一个Ubuntu 14.04服务器。我现在正在尝试将PagerDuty服务(www.pagerduty.com)整合到Zabbix上。我安装了PagerDuty zabbix代理,可以在Ubuntu上通过CLI触发与该代理的事件。但是,当Zabbix中有触发器时,PagerDuty代理不会将事件发送给PagerDuty。但是我可以看到Zabbix发出了PagerDuty警报,但显然有些东西被打破了。

我从哪里开始调试此问题?

1 个答案:

答案 0 :(得分:2)

我假设您遵循了Zabbix 2.x的PagerDuty说明

  1. 确保pd-zabbix位于Zabbix可以找到的位置,我认为Zabbix 2正在/etc/zabbix/alerts.d寻找它,而Zabbix 3似乎正在寻找/usr/lib/zabbix/alertscripts

  2. 然后确保zabbix正确调用pd-zabbix,以调试我创建了一个只将命令行参数和stdin记录到文件的脚本:

  3. #!/usr/bin/env python
    
    from __future__ import print_function
    import sys
    
    with open('/tmp/pd-zabbix.log', 'a+') as f:
        print("args:", sys.argv, file=f)
        print(sys.stdin.read(), file=f)
        print("-----", file=f)
    

    我注意到Zabbix 3.x没有传递任何参数。在Zabbix 3.x中,您可以准确定义它传递的内容和顺序。转到管理 - > 媒体类型 - >单击您可能定义的PagerDuty媒体(您选择的类型脚本并写入pd-zabbix)并添加以下参数(作为3个单独的参数)

    • {ALERT.SENDTO}
    • {ALERT.SUBJECT}
    • {ALERT.MESSAGE}

    Zabbix custom alert scripts

    希望它有所帮助。