[collectd] generic JMX plugin

matthew sporleder msporleder at gmail.com
Mon Jul 27 22:04:52 CEST 2009


I'm not really looking for an SNMP solution, specifically, just
something that I can extend just as easily.  (add the definition, find
or add a suitable type, and get rrd's)

That seems like an improvement over what I was able to find with MX4J,
but it just feels like jmx-native would be a cleaner approach since I
wouldn't have to add any new classes to any of my existing
deployments.

I'm definitely interested in exploring any existing jvm monitoring
being done with collectd.

On Mon, Jul 27, 2009 at 3:39 PM, Benjamin
Coddington<Benjamin.Coddington at uvm.edu> wrote:
> I know you are looking for an snmp solution, but we had a similar problem,
> and handled it with an HttpHandler to expose JMX beans in a REST-ful way.
> Then we slurp up the ones we want with perl in collectd.  I could send along
> what we've done, or check out jfdenise's entry:
>
> http://blogs.sun.com/jmxnetbeans/entry/restful_access_to_jmx_instrumentation
>
> Who really did all the hard work.
>
> Ben
>
> On 7/27/09 3:01 PM, matthew sporleder wrote:
>>
>> I have a pretty strong need to do some java monitoring and,
>> unfortunately, I can't get all of the information I need through the
>> jvm's built-in snmp interface.  (all the memory info is there, but I
>> don't think I can get database thread pools, message queue depths,
>> hibernate stats, etc)
>>
>>
>> So what I would really like to see is an snmp-style plugin that spoke JMX.
>>
>> Define the<Data>  to collect in terms of the mbean domain, mbean name,
>> and attribute name
>> Then a type, obviously, and the Table feature would be pretty handy as
>> well for getting values that come back in lists.  (although specifying
>> the specific value to get would also be fine)
>> committed=1532428288, init=1610612736, max=1532428288, used=974726808
>> (just part of a javax.management.openmbean.CompositeData jmx answer
>> from mx4j.  Don't even get me started on trying to use the curl plugin
>> on that)
>>
>> The last time I checked, OpenNMS was unable to collect data over JMX
>> if it came back in a complex type, so it must be a somewhat difficult
>> problem.
>>
>> <Data "javaoldgen">
>>   Type "javax.management.openmbean.CompositeData"
>>   Table true
>>   MBdomain "java.lang"
>>   MBname "type=MemoryPool,name=PS Old Gen"
>>   MBattribute "Usage"
>> </Data>
>>
>> Does anyone have something like this already in the works?
>>
>> Matt
>>
>>
>> ref:
>>
>> http://java.sun.com/javase/6/docs/jre/api/management/JVM-MANAGEMENT-MIB.mib
>> http://search.cpan.org/~roland/jmx4perl-0.21/lib/JMX/Jmx4Perl.pm
>> http://blogs.sun.com/jmxetc/entry/what_is_the_jvm_snmp
>> http://www.jroller.com/maximdim/entry/monitoring_jvm_with_mrtg_part
>>
>> _______________________________________________
>> collectd mailing list
>> collectd at verplant.org
>> http://mailman.verplant.org/listinfo/collectd
>>
>



More information about the collectd mailing list