We encountered an issue, while using jvm_monitor probe 1.48 and trying to monitor a JBOSS EAP 6.4 application. First problem was exposing/starting the “sun JMX remote” – we have to include some jars on bootclasspath when starting the jvm. After that we notice that not all MBeans are visible in the jvm_monitor.
More specifically we are unable to monitor the following:
Datasource – Should be in: MBean ObjectName jboss.as:subsystem=datasources
Transaction – Should be in: MBean ObjectName jboss.as:subsystem=transactions
Activesessions – Should be in: MBean ObjectName jboss.web:type=Manager,path=/<context>,host=default-host
BusyThreads – Should be in: MBean ObjectName jboss.web:type=ThreadPool,name=ajp--<ip>-<port>
The issue is related to the way the MBeans are accessed from JBOSS EAP 6 onwards. For what we understand Jboss want us to use their Native Management port, allowing connections over remoting-jmx (instead of service:jmx:rmi like the “sun JMX”), consequently changing the connection string.
So we try to access them through the Native Management port, but had no luck. First we tried to connect using the jvm_monitor probe, we tried integrating the loading of the extra jar's and modules, as indicated by RedHat, using the java parameter properties of the probes.
This resulted in the jvm_monitor not working, probably because it does an internal check on the connection string.
Changing that in the cfg either resulted in it being corrected, or it complaining about an unkown protocol or malformed connection string.
Next, we tried the jboss probe, It allowed us to see more MBeans when compared to the ones we could see with jvm_monitor connecting to the “sun JMX”, but it did not reveal all the extra beans we needed.
We found an article, relating to CA APM touching on the subject :
https://www.ca.com/us/services-support/ca-support/ca-support-online/knowledge-base-articles.TEC1042397.html. It seems related, but since it’s other product we are not sure if it can be of any help to us.
We opened a case, but were asked to open a feature request/idea, which we did (https://communities.ca.com/ideas/235734889).
But seeing as it has only two votes, I don't think this going to picked up.
We tried using the jboss probe (latest version 1.4), but were only able to retrieve the ActiveSessions metrics, with all the other counters still missing.
- BusyThreads we can see the MBean but it’s attributes are all empty/null;
- Datasource & Transaction the MBeans are not visible/accessible;
Now for my questions:
How do you monitor JBoss EAP 6.x Mbeans ?
Or are you using another product/scripting solution all together ?
Is there a way of circumventing this issue ?
We would be very interested to know.
Thanks to everybody taking the time to comment,