[ZBX-23239] Dashboard can't get item pattern value after interface description changed Created: 2023 Aug 10 Updated: 2023 Nov 24 Resolved: 2023 Nov 24 |
|
Status: | Closed |
Project: | ZABBIX BUGS AND ISSUES |
Component/s: | Frontend (F) |
Affects Version/s: | 6.0.20 |
Fix Version/s: | None |
Type: | Problem report | Priority: | Trivial |
Reporter: | Gang Ma | Assignee: | Edgar Akhmetshin |
Resolution: | Won't fix | Votes: | 0 |
Labels: | None | ||
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original Estimate: | Not Specified |
Attachments: |
![]() |
Description |
I have one dashboard with 3 graph widgets each for a interface TX/RX bits for last 1day, last 7 days, last 30days. Each graph widget has 2 data sets with item pattern Interface Gi0/0/0(to ISP handoff): Bits received net.if.in[ifHCInOctets.1] SNMP agent Numeric (unsigned) Enabled Then I updated the interface description string in Cisco router config to include the patch panel port detail. The dashboard is empty after this change. The data sets' "item pattern" still point to Interface Gi0/0/0(to ISP handoff), but when I select item pattern again, I can see the available item patterns are Interface Gi0/0/0(to ISP handoff via Patch Panel XXX): Bits received net.if.in[ifHCInOctets.1] SNMP agent Numeric (unsigned) Enabled I can only fix the dashbord be specifying the new "item pattern" or by rollback the interface description. The graph is always good in Monitoring/Hosts/xxx Router/Graphs regardless of the description change. I think the dashboard get the value by checking "Interface Gi0/0/0(to ISP handoff via Patch Panel XXX)" instead of checking permanent "net.if.in[ifHCInOctets.1]" and "net.if.out[ifHCOutOctets.1]" I have to fix the dashboard again each time the interface description string gets changed in Cisco router config?
Steps to reproduce:
Result: |
Comments |
Comment by Gang Ma [ 2023 Aug 10 ] |
Steps to reproduce:
|
Comment by Edgar Akhmetshin [ 2023 Aug 11 ] |
Provide exact configuration used for Dashboard/Widgets with exact pattern used for the Items. |
Comment by Gang Ma [ 2023 Aug 11 ] |
Screenshot attached. Each widget uses same data sets for same interface Gi0/0/0, but Time Period is different for last 1d, 7d and 30d. When the interface description string is changed on Cisco router, it is learned by SNMP poller. Graph widget still use old interface description then there is no value and graph becomes empty.
|
Comment by Edgar Akhmetshin [ 2023 Aug 11 ] |
The screenshot is unreadable since it's cut off. |
Comment by Gang Ma [ 2023 Aug 11 ] |
A new screenshot is attached. |
Comment by Edgar Akhmetshin [ 2023 Nov 24 ] |
If you are using a pattern, how Zabbix should know what new pattern you would like to monitor? Use more general pattern or modify Graph as needed, since configuration is changed. Works as expected. Please be advised that this section of the tracker is for bug reports only. The case you have submitted can not be qualified as one, so please reach out to [email protected] for commercial support (https://zabbix.com/support) or consultancy services. Alternatively, you can also use our community channels (https://www.zabbix.com/community) for assistance. With that said, we are closing this ticket. Thank you for understanding. |
Comment by Gang Ma [ 2023 Nov 24 ] |
Zabbix monitors net.if.in[ifHCInOctets.1]. I didn't change "net.if.in[ifHCInOctets.1]". Zabbix graph should pull metric or data from net.if.in[ifHCInOctets.1] and generate the chart. Even the interface description is changed on Cisco router, the interface index remains the same, and the SNMP OID remains the same. Then why the graph widget in dashboard fails? The data source isn't change. When the interface description is changed, graphs in Monitoring/Host/Graph don't change (/zabbix/zabbix.php?action=charts.view), only the graph widget in dashboard fails. Same interface description change, only graph widget in dashboard fails, Graph under Host doesn't fail. So the change doesn't block Zabbix from receiving the data/metric from the interface. There is some logic problem with graph widget in dashboard. Have you ever tried to reproduce the issue? |
Comment by Gang Ma [ 2023 Nov 24 ] |
Also I don't want to "use a pattern" , I have no choice but have to "Select" the item from the item list. I only what to monitor net.if.in[ifHCInOctets.1]. Zabbix only provides "Interface Gi0/0/0(to ISP handoff via Patch Panel XXX): Bits received net.if.in[ifHCInOctets.1]" as a whole for me to choose. I have no other option. Do you have any other option when specifiying the data source for the chart? It is Zabbix's logical to make "Interface Gi0/0/0(to ISP handoff via Patch Panel XXX): Bits received net.if.in[ifHCInOctets.1]" as the only pattern I have to choose. It is Zabbix that makes interface description text become part of the item pattern when configuring Graph widget in Dashboard. Have you ever tried to reproduce the issue? I suggest you can try to reproduce what I run into and then re-evaluate the ticket priority. I understand you have every right to mark it Minor, but I don't think you understand what the issue is, you should mark it Minor only after you fully understand this issue. |
Comment by Gang Ma [ 2023 Nov 24 ] |
Zabbix still use same SNMP OID to get metric from Cisco router. Zabbix writes the data to the database. But I think the value is recorded together with interface name and interface description as a whole and they become a data source "item" for graph widget to use. When there is interface decription change, the SNMP value is recorded together with interface name and new interface description. and graph widget still use the old item pattern, so graph widget can't get any value from the database. This is a bug because graph widget SHOULD NOT uses old item pattern with interface description to query the database. Interface description is not a fixed attribute. graph widget SHOULD use SNMP OID as item pattern to query the database. |