Zabbix discovery rules - 如何填写关键项

Zabbix discovery rules - how to fill in key item

我是 Zabbix 新手,遇到了问题。 我 运行 一个强大的脚本 shell 并得到这个示例数据:

{
        "data":[
                {
                        "{#BZSENDPORTNAME}":"Com_Onshore_SDE",
                        "{#BZSENDPORTSTATUS}":"3"},
                    {
                        "{#BZSENDPORTNAME}":"Com_Onshore_Backup",
                        "{#BZSENDPORTSTATUS}":"3"},
                    {
                        "{#BZSENDPORTNAME}":"Remit_ForecastMeter",
                        "{#BZSENDPORTSTATUS}":"3"}]}

这里只是一个示例,大约有40多对端口名称和端口状态。 我已经在 Zabbix 服务器中创建了一个发现规则,我希望它可以自动创建名称为 {#BZSENDPORTNAME} 且值为 {#BZSENDPORTSTATUS} 的项目。 例如:项目Com_Onshore_SDE;值 = 3。我创建了一个发现 here。 然后我得到这样的结果:

enter image description here

项的名称是我所期望的,但键包含端口状态的值我希望端口状态是项的值,而不是键。并且还显示错误 "Item does not allow parameter"。 Zabbix 代理配置文件是:UserParameter=custom.discovery,powershell.exe -NoProfile -ExecutionPolicy Bypass -file "C:\Zabbix\Scripts\Get-BZSendMultiPortsInfo-test.ps1"

请帮我解决这个问题。非常感谢

您应该在用户参数中使用 [*] 并在字符串末尾添加 $1 和 $2:

UserParameter=custom.discovery[*],powershell.exe -NoProfile -ExecutionPolicy Bypass -file "C:\Zabbix\Scripts\Get-BZSendMultiPortsInfo-test.ps1"