We have a zabbix trapper item that receives input from a script that runs zabbix_sender. The data stored in the item is a short text blurb about the status of a service. zabbix_sender does not run on a schedule, but rather is event based (so there's no way to tell when the next trapper item will be received). We want to configure a trigger for this item to report a problem every time zabbix_sender is ran and the item receives new data. We were initially using the following expression, with the item being named item.message:
However, there are two issues with this method:
Is there a way to unconditionally trigger a trigger on update of a trapper item without spamming alerts or having previous item data to use as a comparison?
Code:
{Template:item.message.change()}=1
- When the item has no previous data, zabbix will fail to trigger on the first zabbix_sender run, as the previous state does not exist. This is a problem, as this item/trigger combo will be used by a large number of hosts.
- We set a relatively low global housekeeper history storage period to avoid database bloat. According to this page: https://www.zabbix.com/documentation...#value_caching , these values will be cached even if the housekeeper cleans them up, but may be deleted after a service restart. In this situation, we may miss important alerts from servers.
Is there a way to unconditionally trigger a trigger on update of a trapper item without spamming alerts or having previous item data to use as a comparison?
Comment