Так как на все значения вешать nodata не вариант - делаем проверку на триггеры которые отвалились с ошибкой.
Это делается при помощи запроса select hostid,description,error from items where error is NOT NULL and error !=''; в базе с заббиксом.
Когда триггер отваливается - поле error принимает значение в котором либо просто пишется ZBX_NOTSUPPORTED, либо уточняется почему триггер стал не рабочим.
Чтобы узнать на каком сервере отвалился айтем - делаем запрос,
select hostid,description,error from items where error is NOT NULL and error !=''; +--------+-------------+-------------------------------+ | hostid | description | error | +--------+-------------+-------------------------------+ | 10150 | Stratum num | Not supported by Zabbix Agent | +--------+-------------+-------------------------------+ 1 row in set (0.00 sec)
берём поле hostid - это id сервера на котором отвалился айтем и подставляем его в браузере так - https://zabbix.example.net/items.php?hostid=10150
Заходим и смотрим где, почему и зачем отвалился мониторинг.
А еще можно вот так узнать у каких хостов что-то отвалилось:
select hosts.host,items.description,items.error from items left join hosts on items.hostid = hosts.hostid where items.error is NOT NULL and items.error !='';
Сама проверка делается выглядит так:
UserParameter=zabbix.item_errors, mysql -hdbserver.example.net -uzabbix zabbix -B -s -pm3G4sup3rp4ssw0rD -e "select hostid,description,error from items where error is NOT NULL and error !=''"|wc -l
И создаем триггер, который будет опрашивать параметр "zabbix.item_errors" и, если он больше нуля, будет кричать.