Zabbix 3.0 与 PagerDuty 不工作

Zabbix 3.0 with PagerDuty not working

我已经使用 Zabbix 3.0 服务器在 Digital Ocean 上配置了 Ubuntu 14.04 服务器。我现在正尝试在 Zabbix 上集成 PagerDuty 服务 (www.pagerduty.com)。我安装了 PagerDuty zabbix 代理,并且可以在 Ubuntu 上通过 CLI 触发该代理的事件。但是,当 Zabbix 中存在触发器时,PagerDuty 代理不会将事件发送到 PagerDuty。但是我可以看到 Zabbix 发送了 PagerDuty 警报,但显然有问题。

我从哪里开始调试这个问题?

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

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

  2. 然后确保 zabbix 正确调用 pd-zabbix,以调试我创建的脚本仅将命令行参数和标准输入记录到文件中:

#!/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 中,您可以准确定义它传递的内容和顺序。转到 Administration -> Media types -> 单击您可能定义的 PagerDuty 媒体(您选择类型脚本并写入的地方 pd-zabbix) 并添加以下参数(作为 3 个单独的参数)

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

Zabbix custom alert scripts

希望对您有所帮助。