ZABBIX BUGS AND ISSUES

Item prototype is accounted in zabbix queue even if discovery rule is disabled

Details

  • Zabbix ID:
    Reviewed 2.0

Description

Suppose that discovery rule is disabled, but item prototype is enabled.

That bug is related to frontend & zabbix_server side.

Activity

Hide
Aleksandrs Saveljevs added a comment -

Item prototypes should not count towards queue, regardless of discovery rule's status, because they are not real items. Could you please explain your idea with an example?

Show
Aleksandrs Saveljevs added a comment - Item prototypes should not count towards queue, regardless of discovery rule's status, because they are not real items. Could you please explain your idea with an example?
Hide
Oleksiy Zagorskyi added a comment -

Aleksandrs, good question

I think item prototypes should count towards queue.

For instance for some reason the discovery rule becomes not supported, then it will be useful to see delay update for item prototype in the queue (as it's currently)
But if discovery rule is disabled (and eventually the item prototypes are not processed by zabbix_server) then its item prototypes should not count towards queue.

Maybe the page Queue -> Details could be improved to distinguish where is prototypes.

Show
Oleksiy Zagorskyi added a comment - Aleksandrs, good question I think item prototypes should count towards queue. For instance for some reason the discovery rule becomes not supported, then it will be useful to see delay update for item prototype in the queue (as it's currently) But if discovery rule is disabled (and eventually the item prototypes are not processed by zabbix_server) then its item prototypes should not count towards queue. Maybe the page Queue -> Details could be improved to distinguish where is prototypes.
Hide
Aleksandrs Saveljevs added a comment - - edited

There seems to be a misunderstanding of what is a discovery rule and what is an item prototype, so I shall try to explain.

Suppose you create a discovery rule to discover network interfaces on a host: net.if.discovery. That discovery rule (a real item) is processed every "delay" seconds by contacting Zabbix agent.

Suppose you also create an item prototype to graph incoming traffic for every discovered interface: net.if.in[{#IFNAME},bytes]. The prototype itself is not processed by the server.

Suppose then net.if.discovery discovers a bunch of interfaces on a host. Several real items are created from item prototypes: net.if.in[eth0,bytes] and net.if.in[eth1,bytes]. These two items are processed by Zabbix server.

Summarizing, item prototypes are not real items and do not gather any data. They only serve as a template for real items, created as a result of low-level discovery. Discovery rules should count towards queue, but item prototypes - no.

Show
Aleksandrs Saveljevs added a comment - - edited There seems to be a misunderstanding of what is a discovery rule and what is an item prototype, so I shall try to explain. Suppose you create a discovery rule to discover network interfaces on a host: net.if.discovery. That discovery rule (a real item) is processed every "delay" seconds by contacting Zabbix agent. Suppose you also create an item prototype to graph incoming traffic for every discovered interface: net.if.in[{#IFNAME},bytes]. The prototype itself is not processed by the server. Suppose then net.if.discovery discovers a bunch of interfaces on a host. Several real items are created from item prototypes: net.if.in[eth0,bytes] and net.if.in[eth1,bytes]. These two items are processed by Zabbix server. Summarizing, item prototypes are not real items and do not gather any data. They only serve as a template for real items, created as a result of low-level discovery. Discovery rules should count towards queue, but item prototypes - no.
Hide
Oleksiy Zagorskyi added a comment - - edited

Aleksandrs, thanks for explanation, but I know very well how LLD works and no need to explain me in details
You should remember how many issues I've created immediately after LLD was committed to trunk

I see your point of view.
My position was in the possibility of troubleshooting, but if discovery rules are counted in the queue (I've not tested and didn't even think in this direction ) then no really need to count item prototypes.

Ok, I agree with you to exclude item prototypes from the queue.
Thanks.

<added> Feel free to change the summary of this issue if you want.

Show
Oleksiy Zagorskyi added a comment - - edited Aleksandrs, thanks for explanation, but I know very well how LLD works and no need to explain me in details You should remember how many issues I've created immediately after LLD was committed to trunk I see your point of view. My position was in the possibility of troubleshooting, but if discovery rules are counted in the queue (I've not tested and didn't even think in this direction ) then no really need to count item prototypes. Ok, I agree with you to exclude item prototypes from the queue. Thanks. <added> Feel free to change the summary of this issue if you want.
Hide
Aleksandrs Saveljevs added a comment -

Anyway, the bug is there, at least on the server side: item prototypes are counted when calculating queue. This should be fixed.

Show
Aleksandrs Saveljevs added a comment - Anyway, the bug is there, at least on the server side: item prototypes are counted when calculating queue. This should be fixed.
Hide
Alexander Vladishev added a comment -

Fixed in the development branch svn://svn.zabbix.com/branches/dev/ZBX-4261

Also fixed discovery rules in the queue calculation. They always "hung" in queue since the field "lastclock" wasn't updated.

Show
Alexander Vladishev added a comment - Fixed in the development branch svn://svn.zabbix.com/branches/dev/ZBX-4261 Also fixed discovery rules in the queue calculation. They always "hung" in queue since the field "lastclock" wasn't updated.
Hide
Alexei Vladishev added a comment -

Tested, both server and front-end sides are perfect.

Show
Alexei Vladishev added a comment - Tested, both server and front-end sides are perfect.
Hide
Alexander Vladishev added a comment -

Fixed in the version pre-1.9.10, revision 25450.

Show
Alexander Vladishev added a comment - Fixed in the version pre-1.9.10, revision 25450.

People

Vote (0)
Watch (2)

Dates

  • Created:
    Updated:
    Resolved: