Uploaded image for project: 'ZABBIX FEATURE REQUESTS'
  2. ZBXNEXT-3695

Allow Zabbix agent(active) to report metric to Server instant on value change (state change)


    • Icon: Change Request Change Request
    • Resolution: Duplicate
    • Icon: Major Major
    • None
    • 3.2.3
    • Agent (G)

      My suggestion is to turn zabbix agent locally into state change machine.

      Let's say you collect many many things that don't change very often like:

      • Serial numbers, hostname,MACs or other inventory information
      • Network Interfaces statuses, maximum bandwidth, descriptions, etc...
      • HDD SMART status OK or BAD
      • other stuff that either status of something (you put value maps very often on it) or descriptions.

      So now you might have an issue with that, especially statuses:

      • You want to be notified as quickly as possible when status changes to something bad (like interface is down)
      • On the other hand:
      • you don't really want to fill in your Zabbix DB with interface statuses values every 10seconds
      • and don't want to create unnecessary load on trappers, network and other resources.

      So here is my suggestion how to solve that by enhancing Zabbix agent(active):

      • Make Zabbix Agent to store last collected item value locally in memory.
        For items marked with a new tick in web interface like 'state monitor':
      • Keep checking this item every 5-30 seconds locally(or introduce another parameter in item configuration called 'Local update interval'):
        If new item value is different from the previous one stored in-memory then send this item immediatly to the Server. Otherwise just do nothing.
      • Send item value to Zabbix Server as mentioned in regular Update interval (lets say every 60, 30, 10 or 5 minutes) even if there was no state change. This will work as a proof that item is still alive.

      What will you get?

      • Almost instant status update when something changes.
      • And you will get it without any pressure on Zabbix DB, zabbix-server or network

      This suggestion can be further expanded into SNMP or simple checks: pollers will check items marked as 'state monitor' flag as frequently as possible, but store values only on state change or when classic update interval comes

            Unassigned Unassigned
            vzhuravlev Vitaly Zhuravlev
            3 Vote for this issue
            5 Start watching this issue