发现规则的zabbix_sender语法

时间:2014-03-20 10:12:56

标签: zabbix

我已经成功安装了zabbix环境。现在我想使用zabbix_sender将数据从第三方程序发送到zabbix。我创建了一个主机“api_test”,以及一个带有“java.test.item”键的项目“test item”。发送

zabbix_sender -z localhost -p 10051 -s "api_test" -k java.test.item -o 1234
来自linux服务器的

工作正常并按预期添加数据集。 问题是,我想使用一个发现项,我找不到zabbix_sender的正确语法。以下是我配置发现规则的方法:

Discovery rule configuration

这是项目原型:

Item Prototype configuration

我希望以下查询根据项目原型添加一个Item,但没有任何反应:

zabbix_sender -z localhost -p 10051 -s "api_test" -k java.th.discovery -o '{"data":[{"{#THNAME}:"test_thread"}]}'

我也试过不同的引号(单,双,没有),但似乎没什么用。 因此,我之后尝试的以下查询失败:

zabbix_sender -z localhost -p 10051 -s "api_test" -k java.th.ex["test_thread"] -o 98765

问题是:我错在哪里?我想这是发现规则,或发现的zabbix_sender语法,但我在文档中找不到任何内容。

感谢任何帮助!

1 个答案:

答案 0 :(得分:4)

Steffen,您在Zabbix前端的配置是正确的。

但是,您在命令行中使用的JSON语法中存在错误。 {#THNAME}之后的双引号丢失:

{"data":[{"{#THNAME}:"test_thread"}]}

您应该会在发现列表中看到有关它的错误消息:

enter image description here

修复该问题后,它应该可以正常工作。如果没有,请提供有关“@Thread for discovery”宏的详细信息以及您收到的错误消息。