0

这是否可以从 Ruby 脚本生成新的 Zabbix 事件?有人建议我使用zabbix_sender脚本,但我找不到任何示例。

此外,我找不到与事件创建相关的任何 API。

4

2 回答 2

1

首先创建一些 zabbix trapper 类型的项目,然后您可以通过 zabbix_sender 向其名称发送一些值。您可以发送一个值或多个带有时间戳的收集数据。这是文档

或者,您可以编写自己的 zabbix 陷阱发送器。协议很简单。我在 Python 中做了同样的事情......没有外部命令。

于 2012-07-10T18:57:19.343 回答
1

Zabbix API 不允许通过设计更新项目值。

我已经调查了几个选项*,我从 Ruby 更新 Zabbix 项目值的首选方法是使用miyucy 的要点中的这种方法:

带有简单错误处理程序的示例:

s = Zabbix::Sender.new 'zabbix_server', 10051

zabbix_resp = s.send('host', item_key, value)

if zabbix_resp["response"] != "success" or zabbix_resp["info"].split(';')[1] != " failed: 0"
  puts "error: zabbix responded with #{zabbix_resp} when trying to update #{item_key}"
end

*另一种方式的一个例子 -调用 zabbix_sender 二进制

于 2014-11-18T11:53:07.083 回答