的zabbix发现与外部的检查JSON
问题描述:
的zabbix 3.2.5在高山上的图像(官方版本)泊坞窗的zabbix发现与外部的检查JSON
我有一些问题,外部脚本和返回的JSON。 脚本json_data.sh是:
#!/bin/bash
# Generate JSON data for zabbix
declare -i i
fields=$1
data=($2)
json=""
i=0
while [ $i -lt ${#data[*]} ]; do
row=""
for f in $fields; do
row+="\"{#$f}\":\"${data[$i]}\","
i+=1
done
json+="{${row%,}},"
done
echo "{\"data\":[${json%,}]}"
密钥字符串是:
json_data.sh["IP", "127.0.0.1 127.0.0.2 127.0.0.3"]
我用文字项测试,并有结果
2539:20170515:095829.375 zbx_popen(): executing script
{"data":[{"{#IP}":"127.0.0.1"},{"{#IP}":"127.0.0.2"},{"{#IP}":"127.0.0.3"}]}
所以脚本返回有效的JSON,但我仍然有错误Vallue应该是JSON服务发现中的对象。 那个JSON有什么问题?
Template Settings在截图{$ IPLIST}只是宏观= “127.0.0.1 127.0.0.2 127.0.0.3”
答
这是错误。当DebugLevel
大于3时,Zabbix将调试输出的一部分与值数据混合在一起。像zbx_popen(): executing script
之类的东西。 解决方案将DebugLevel
降至3或更低,并等待至ZBX-12195将被修复。
哪个版本的Zabbix?这是LLD规则中使用的关键吗?什么是LLD规则项目类型?您确定错误来自最新的版本/调用(您是否在进行最新更改后至少等待了10分钟)? – Richlv
对不起。忘了那个。 Zabbix 3.2.5 –
由于发现错误,它不会转到该项目。 –