Zabbix Trigger Hysteresis - Incorrect trigger expression
I am trying to use the following expressions:
({TRIGGER.VALUE}=0&{Template App Zabbix Agent:agent.ping.nodata(5m)}=1) | ({TRIGGER.VALUE}=1&{Template App Zabbix Agent:agent.ping.min(20m)}=1)
But i get the following error: Incorrect trigger expression. Check expression part starting from "0&{Template App Zabbix Agent:agent.ping.nodata(5m)}=1)|({TRIGGER.VALUE}=1&{Template App Zabbix Agent:agent.ping.min(20m)}=1)".
Any idea what i am doing wrong?
Solution 1:
The issue comes from the "&" and "|", you can see the full list of supported expressions for 3.2 here: https://www.zabbix.com/documentation/3.2/manual/config/triggers/expression
That's my sample trigger for temperature hysteresis:
({TRIGGER.VALUE}=0 and {Template Sensor:temp.T1.last(5m)}>{$MAX_TEMP_T1}) or
({TRIGGER.VALUE}=1 and {Template Sensor:temp.T1.last(5m)}>{$MAX_TEMP_T1_HYST})
With these template macros:
{$MAX_TEMP_T1} = 28
{$MAX_TEMP_T1_HYST} = 25
Also, from 3.2 you can use the "Recovery Expression" feature: https://www.zabbix.com/documentation/3.2/manual/introduction/whatsnew320#easier_trigger_hysteresis