[ZBX-4261] Item prototype is accounted in zabbix queue even if discovery rule is disabled Created: 2011 Oct 21 Updated: 2017 May 30 Resolved: 2012 Feb 11 |
|
Status: | Closed |
Project: | ZABBIX BUGS AND ISSUES |
Component/s: | Frontend (F), Server (S) |
Affects Version/s: | 1.9.7 (beta) |
Fix Version/s: | 2.0.0rc1 |
Type: | Incident report | Priority: | Major |
Reporter: | Oleksii Zagorskyi | Assignee: | Unassigned |
Resolution: | Fixed | Votes: | 0 |
Labels: | discovery, lld, queue | ||
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original Estimate: | Not Specified | ||
Environment: |
Zabbix 1.9.7 r22573 |
Description |
Suppose that discovery rule is disabled, but item prototype is enabled. That bug is related to frontend & zabbix_server side. |
Comments |
Comment by Aleksandrs Saveljevs [ 2011 Oct 21 ] |
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? |
Comment by Oleksii Zagorskyi [ 2011 Oct 21 ] |
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) Maybe the page Queue -> Details could be improved to distinguish where is prototypes. |
Comment by Aleksandrs Saveljevs [ 2011 Oct 21 ] |
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. |
Comment by Oleksii Zagorskyi [ 2011 Oct 21 ] |
Aleksandrs, thanks for explanation, but I know very well how LLD works and no need to explain me in details I see your point of view. Ok, I agree with you to exclude item prototypes from the queue. <added> Feel free to change the summary of this issue if you want. |
Comment by Aleksandrs Saveljevs [ 2011 Oct 24 ] |
Anyway, the bug is there, at least on the server side: item prototypes are counted when calculating queue. This should be fixed. |
Comment by Alexander Vladishev [ 2012 Feb 11 ] |
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. |
Comment by Alexei Vladishev [ 2012 Feb 18 ] |
Tested, both server and front-end sides are perfect. |
Comment by Alexander Vladishev [ 2012 Feb 18 ] |
Fixed in the version pre-1.9.10, revision 25450. |