Hello everyone.
I want to know whether it's possible to not calculate an item using last() function if there's no data from referenced items.
Example: I've created 2 item prototypes for "Interfaces SNMP" template - one of them gets ISP's bandwidth limitation from network interface comment (like "WAN - Speed: 200"), another one - calculated item, which returns utilization of that limit in percentage (for incoming traffic). Formula is:
So, the problem is when your router will go down, this item will still be calculated, which will affect aggregation numbers in long term if you want to get an average utilization for 6 months or so. Same thing happens with "Memory utilization" and "Free swap space" items from default "Windows by Zabbix agent" templates - it keeps calculate an item using last values which were received just before the host went down.
Probably the way around is to use some other function instead of last() like avg() with the period equal to referenced items polling interval, but it doesn't seem to be an elegant solution.
I want to know whether it's possible to not calculate an item using last() function if there's no data from referenced items.
Example: I've created 2 item prototypes for "Interfaces SNMP" template - one of them gets ISP's bandwidth limitation from network interface comment (like "WAN - Speed: 200"), another one - calculated item, which returns utilization of that limit in percentage (for incoming traffic). Formula is:
Code:
last(//net.if.in[ifHCInOctets.{#SNMPINDEX}])/last(//net.if.providerspeed[ifAlias.{#SNMPINDEX}])*100
Probably the way around is to use some other function instead of last() like avg() with the period equal to referenced items polling interval, but it doesn't seem to be an elegant solution.
Comment