[ZBXNEXT-2727] Support TabularData in Zabbix Java Gateway Created: 2015 Feb 25  Updated: 2024 Apr 10  Resolved: 2020 Mar 17

Status: Closed
Project: ZABBIX FEATURE REQUESTS
Component/s: Java gateway (J)
Affects Version/s: 2.4.4
Fix Version/s: 5.0.0alpha3, 5.0 (plan)

Type: New Feature Request Priority: Major
Reporter: Douglas Fields Assignee: Viktors Tjarve
Resolution: Fixed Votes: 11
Labels: jmx, patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Java Source File JMXItemChecker.java     File jmx_support_tabular_data.patch     PNG File jmxerror.png    
Issue Links:
Duplicate
is duplicated by ZBX-10975 Expand JMX monitoring capabilities Closed
is duplicated by ZBX-11891 Jmx monitoring doesn't work for some ... Closed
Team: Team A
Sprint: Sprint 61 (Feb 2020), Sprint 62 (Mar 2020)
Story Points: 4

 Description   

Allow TabularData objects to be traversed in a manner similar to CompositeData objects.

Attached is a version of the JMXItemChecker.java - modified from version 2.4.4 of the Zabbix Java Gateway version - which does this.

As it traverses the structure returned from a JMX call, if it encounters a TabularData object it will search all the keys within that using the specified field name as the indexes. The keys are matched using their toString() values, allowing indexes that are not strings to match the provided attribute string. This field name can include one or more commas to allow a multi-value index to be used.

Examples:

  • Attributes: SomeData.Index1,Index2.SomeValue.SomeOtherValue
  • Zabbix key from real usage: jmx["com.xyz.abc:type=GroupExecutorService","ExecutorsDetails.CoreQuotesProcessing.ExecutorDetails.1.CompletedTasksCount"]
    • This one as two nested TabularData objects, indexed by "CoreQuotesProcessing" and "1"

This is being used in production at my firm right now.

If accepted into Zabbix proper please credit "Douglas P. Fields, Jr." where appropriate. Thanks!



 Comments   
Comment by Douglas Fields [ 2015 Feb 26 ]

See also this forum thread:
https://www.zabbix.com/forum/showthread.php?t=48319

Comment by Aleksandrs Saveljevs [ 2016 Jul 11 ]

The duplicate ZBX-10975 has a similar patch.

Comment by Orlando Bordoni [ 2018 Mar 13 ]

Could you please include this patch on the next version (4.0) to add support for TabularData on Java Gateway?

I'm using a similar patch on production servers (version 3.4). I was going to post my patch, but found this one which does the same thing.

We can't monitor Java garbage collector information without support for TabularData.

We get error "unsupported data object type along the path: class javax.management.openmbean.TabularDataSupport" when we try to get key jmx["java.lang:type=GarbageCollector,name=ConcurrentMarkSweep","LastGcInfo.memoryUsageAfterGc.CMS Old Gen.used"]

Thanks.

Comment by Alexey Mordashkin [ 2018 Oct 25 ]

Are there any workarounds to get this metric without patching zabbix? (jmx["java.lang:type=GarbageCollector,name=ConcurrentMarkSweep","LastGcInfo.memoryUsageAfterGc.CMS Old Gen.used"])

Comment by Orlando Bordoni [ 2018 Oct 25 ]

I searched extensively and didn't found any workarounds for this problem.

I don't understand why this simple patch doesn't get merged.

We have to wait a Zabbix employee to get this issue or is there any way we can send a pull request?

Thanks.

 

Comment by richlv [ 2019 May 15 ]

Orlando, Zabbix does not accept patches / pull requests, so you'd have to wait for a Zabbix employee to implement this.

Comment by Zarren Spry [ 2019 May 16 ]

I've modified the patch a little to allow the extraction of TabularData subelements like ones nested in java.lang:type=GarbageCollector,name=,LastGcInfo..

Comment by Alexei Vladishev [ 2020 Jan 24 ]

Thanks for your votes. Just a quick update. I hope that we can manage to implement it in Zabbix 5.0 if everything goes as planned.

Comment by Viktors Tjarve [ 2020 Mar 13 ]

Released in:

Documentation updates:

Comment by dimir [ 2024 Jan 18 ]

Looks like this change didn't implement the feature completely: ZBX-23948 .

Generated at Tue Apr 01 07:38:37 EEST 2025 using Jira 9.12.4#9120004-sha1:625303b708afdb767e17cb2838290c41888e9ff0.