I have a standalone Java application written with Apache Camel which I want to monitor via SNMP. I think Camel uses Spring's JMX (@ManagedAttribute, @ManagedResource etc) and I can see various Camel-related objects in JDK jconsole just fine. When I run my app with SNMP enabled:
-Dcom.sun.management.snmp.interface=127.0.0.1
-Dcom.sun.management.snmp.port=16101
-Dcom.sun.management.snmp.acl=false
I can connect with SNMP browser to it and I can see lots of stuff there as well. So far so good, but in order for me to make use of it I need to know or figure out how JMX objects are being mapped into SNMP OIDs. Is there are way to find out how it's being done or at least by whom - Spring, JVM? Any thoughts?
I'm not 100% sure if the information I found on Google (BTW... first hit eh! ;) ) is still relevant nor do I have the means to poke around and verify (corporate, locked down workstation... sigh!) but, it looks like the default SNMP implementation is not very extensible.
According to "JVM Monitoring: JMX or SNMP?" you can only access what is defined in the JVM-MANAGEMENT-MIB.mib
I'd be interested if the matter has changed meanwhile...