2

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?

morleyc
  • 1,150
  • 13
  • 47
  • 89

1 Answers1

3

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

  • Awesome many thanks, yes 3.2 looks great, unfortunatly i am using repo apt-get install with ubuntu 14.0.2 so will need to look in to that. I now have the expression validating thanks, but it never recovers i have made a question here if you could advise also would be much appreciated https://serverfault.com/questions/852507/zabbix-trigger-hysteresis-not-returning-to-normal – morleyc May 26 '17 at 21:58