Hi everyone.
I'm not new with zabbix, just been a bit time since used zabbix(when ver 3.x was in use).
I have external check which does polling via snmp(building indexes which aren't available normal zabbix snmp-way), it returns following json(shortened it a bit for here):
[{"#MEASNAME": "RF Level", "#MEASIDX1": "11", "#MEASIDX2": "0"}, {"#MEASNAME": "MPX Level", "#MEASIDX1": "11", "#MEASIDX2": "1"}, {"#MEASNAME": "Left Audio Level", "#MEASIDX1": "11", "#MEASIDX2": "2"}, {"#MEASNAME": "Right Audio Level", "#MEASIDX1": "11", "#MEASIDX2": "3"}, {"#MEASNAME": "CCIR Filtered Left Audio Level", "#MEASIDX1": "11", "#MEASIDX2": "4"}, {"#MEASNAME": "CCIR Filtered Right Audio Level", "#MEASIDX1": "11", "#MEASIDX2": "5"}, {"#MEASNAME": "Pilot Level", "#MEASIDX1": "11", "#MEASIDX2": "6"}, {"#MEASNAME": "RDS Level", "#MEASIDX1": "11", "#MEASIDX2": "7"}, {"#MEASNAME": "Stereo", "#MEASIDX1": "11", "#MEASIDX2": "8"}, {"#MEASNAME": "RDS", "#MEASIDX1": "11", "#MEASIDX2": "9"}, {"#MEASNAME": "PI Code", "#MEASIDX1": "11", "#MEASIDX2": "10"}, {"#MEASNAME": "MPX Power", "#MEASIDX1": "11", "#MEASIDX2": "11"}, {"#MEASNAME": "RF Level", "#MEASIDX1": "16", "#MEASIDX2": "0"}, {"#MEASNAME": "MPX Level", "#MEASIDX1": "16", "#MEASIDX2": "1"}, {"#MEASNAME": "Left Audio Level", "#MEASIDX1": "16", "#MEASIDX2": "2"}, {"#MEASNAME": "Right Audio Level", "#MEASIDX1": "16", "#MEASIDX2": "3"}, {"#MEASNAME": "CCIR Filtered Left Audio Level", "#MEASIDX1": "16", "#MEASIDX2": "4"}, {"#MEASNAME": "CCIR Filtered Right Audio Level", "#MEASIDX1": "16", "#MEASIDX2": "5"}, {"#MEASNAME": "Pilot Level", "#MEASIDX1": "16", "#MEASIDX2": "6"}, {"#MEASNAME": "RDS Level", "#MEASIDX1": "16", "#MEASIDX2": "7"}, {"#MEASNAME": "Stereo", "#MEASIDX1": "16", "#MEASIDX2": "8"}, {"#MEASNAME": "RDS", "#MEASIDX1": "16", "#MEASIDX2": "9"}, {"#MEASNAME": "PI Code", "#MEASIDX1": "16", "#MEASIDX2": "10"}, {"#MEASNAME": "MPX Power", "#MEASIDX1": "16", "#MEASIDX2": "11"}, {"#MEASNAME": "RF Level", "#MEASIDX1": "37", "#MEASIDX2": "0"}, {"#MEASNAME": "MPX Level", "#MEASIDX1": "37", "#MEASIDX2": "1"}, {"#MEASNAME": "Left Audio Level", "#MEASIDX1": "37", "#MEASIDX2": "2"}, {"#MEASNAME": "Right Audio Level", "#MEASIDX1": "37", "#MEASIDX2": "3"}, {"#MEASNAME": "CCIR Filtered Left Audio Level", "#MEASIDX1": "37", "#MEASIDX2": "4"}, {"#MEASNAME": "CCIR Filtered Right Audio Level", "#MEASIDX1": "37", "#MEASIDX2": "5"}, {"#MEASNAME": "Pilot Level", "#MEASIDX1": "37", "#MEASIDX2": "6"}, {"#MEASNAME": "RDS Level", "#MEASIDX1": "37", "#MEASIDX2": "7"}, {"#MEASNAME": "Stereo", "#MEASIDX1": "37", "#MEASIDX2": "8"}, {"#MEASNAME": "RDS", "#MEASIDX1": "37", "#MEASIDX2": "9"}, {"#MEASNAME": "PI Code", "#MEASIDX1": "37", "#MEASIDX2": "10"}, {"#MEASNAME": "MPX Power", "#MEASIDX1": "37", "#MEASIDX2": "11"}]
I've created item prototype with name $1 $2 and item key as silverFM["{#MEASNAME}",{#MEASIDX1}] so basically everything should work, key is unique, right? But I still get "Cannot create item: item with the same key "silverFM["{#MEASNAME}",{#MEASIDX1}]" already exists."
Already tried to use macronames without numbers, MEASNAME with and without "" at key...
Basicly what I'm doing is creating snmp-oid with fixed base and then adding MEASIDX1 and MEASIDX2 to get actual value for MEASNAME.
What am I doing wrong?
Update. External check is running on proxy(Centos 8.5.2111), Zabbix version is 6.0.7
Update #2, Ah, I was sooo blind, ofcourse LLD needs to return macro-names within {}, now this works.
I'm not new with zabbix, just been a bit time since used zabbix(when ver 3.x was in use).
I have external check which does polling via snmp(building indexes which aren't available normal zabbix snmp-way), it returns following json(shortened it a bit for here):
[{"#MEASNAME": "RF Level", "#MEASIDX1": "11", "#MEASIDX2": "0"}, {"#MEASNAME": "MPX Level", "#MEASIDX1": "11", "#MEASIDX2": "1"}, {"#MEASNAME": "Left Audio Level", "#MEASIDX1": "11", "#MEASIDX2": "2"}, {"#MEASNAME": "Right Audio Level", "#MEASIDX1": "11", "#MEASIDX2": "3"}, {"#MEASNAME": "CCIR Filtered Left Audio Level", "#MEASIDX1": "11", "#MEASIDX2": "4"}, {"#MEASNAME": "CCIR Filtered Right Audio Level", "#MEASIDX1": "11", "#MEASIDX2": "5"}, {"#MEASNAME": "Pilot Level", "#MEASIDX1": "11", "#MEASIDX2": "6"}, {"#MEASNAME": "RDS Level", "#MEASIDX1": "11", "#MEASIDX2": "7"}, {"#MEASNAME": "Stereo", "#MEASIDX1": "11", "#MEASIDX2": "8"}, {"#MEASNAME": "RDS", "#MEASIDX1": "11", "#MEASIDX2": "9"}, {"#MEASNAME": "PI Code", "#MEASIDX1": "11", "#MEASIDX2": "10"}, {"#MEASNAME": "MPX Power", "#MEASIDX1": "11", "#MEASIDX2": "11"}, {"#MEASNAME": "RF Level", "#MEASIDX1": "16", "#MEASIDX2": "0"}, {"#MEASNAME": "MPX Level", "#MEASIDX1": "16", "#MEASIDX2": "1"}, {"#MEASNAME": "Left Audio Level", "#MEASIDX1": "16", "#MEASIDX2": "2"}, {"#MEASNAME": "Right Audio Level", "#MEASIDX1": "16", "#MEASIDX2": "3"}, {"#MEASNAME": "CCIR Filtered Left Audio Level", "#MEASIDX1": "16", "#MEASIDX2": "4"}, {"#MEASNAME": "CCIR Filtered Right Audio Level", "#MEASIDX1": "16", "#MEASIDX2": "5"}, {"#MEASNAME": "Pilot Level", "#MEASIDX1": "16", "#MEASIDX2": "6"}, {"#MEASNAME": "RDS Level", "#MEASIDX1": "16", "#MEASIDX2": "7"}, {"#MEASNAME": "Stereo", "#MEASIDX1": "16", "#MEASIDX2": "8"}, {"#MEASNAME": "RDS", "#MEASIDX1": "16", "#MEASIDX2": "9"}, {"#MEASNAME": "PI Code", "#MEASIDX1": "16", "#MEASIDX2": "10"}, {"#MEASNAME": "MPX Power", "#MEASIDX1": "16", "#MEASIDX2": "11"}, {"#MEASNAME": "RF Level", "#MEASIDX1": "37", "#MEASIDX2": "0"}, {"#MEASNAME": "MPX Level", "#MEASIDX1": "37", "#MEASIDX2": "1"}, {"#MEASNAME": "Left Audio Level", "#MEASIDX1": "37", "#MEASIDX2": "2"}, {"#MEASNAME": "Right Audio Level", "#MEASIDX1": "37", "#MEASIDX2": "3"}, {"#MEASNAME": "CCIR Filtered Left Audio Level", "#MEASIDX1": "37", "#MEASIDX2": "4"}, {"#MEASNAME": "CCIR Filtered Right Audio Level", "#MEASIDX1": "37", "#MEASIDX2": "5"}, {"#MEASNAME": "Pilot Level", "#MEASIDX1": "37", "#MEASIDX2": "6"}, {"#MEASNAME": "RDS Level", "#MEASIDX1": "37", "#MEASIDX2": "7"}, {"#MEASNAME": "Stereo", "#MEASIDX1": "37", "#MEASIDX2": "8"}, {"#MEASNAME": "RDS", "#MEASIDX1": "37", "#MEASIDX2": "9"}, {"#MEASNAME": "PI Code", "#MEASIDX1": "37", "#MEASIDX2": "10"}, {"#MEASNAME": "MPX Power", "#MEASIDX1": "37", "#MEASIDX2": "11"}]
I've created item prototype with name $1 $2 and item key as silverFM["{#MEASNAME}",{#MEASIDX1}] so basically everything should work, key is unique, right? But I still get "Cannot create item: item with the same key "silverFM["{#MEASNAME}",{#MEASIDX1}]" already exists."
Already tried to use macronames without numbers, MEASNAME with and without "" at key...
Basicly what I'm doing is creating snmp-oid with fixed base and then adding MEASIDX1 and MEASIDX2 to get actual value for MEASNAME.
What am I doing wrong?
Update. External check is running on proxy(Centos 8.5.2111), Zabbix version is 6.0.7
Update #2, Ah, I was sooo blind, ofcourse LLD needs to return macro-names within {}, now this works.