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"
我是 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"