Application server JMX setup

Problem

In New Relic APM, the Threads tab on the JVMs page shows various JMX metrics supported by your application server, such as active, idle and total threads. In order to see metrics in the Threads tab, you must enable JMX reporting in your application server.

If JMX reporting is not enabled you will see an empty Threads tab with a link to relevant documentation for your application server to enable JMX.

Solution

To resolve the issue, read the following sections depending on your application server:

Resin

Local support for JMX is enabled on Resin Application servers by default. If you have changed the default settings, see:

Tomcat

Local support for JMX is enabled on Tomcat Application servers by default. If you have changed the default settings, see:

Tomcat EE

Local support for JMX is enabled on TomEE Application servers by default. If you have changed the default settings, see:

Jetty

To enable local support for JMX on Jetty Application servers, configure the MBeanContainer with the etc/jetty-jmx.xml file. For more information, see:

Glassfish

While local support for JMX is enabled on Glassfish Application servers by default, the MBeans which actually provide metric information default to OFF. For the appropriate metrics to be gathered by the application server, the following components must be set in the Monitoring Service:

  • Glassfish 4.x: The Web Container, HTTP Service, and Transaction Service components must be set to the HIGH monitoring level.
  • Glassfish 3.1: The Web Container, HTTP Service, and Transaction Service components must be set to the HIGH monitoring level.
  • Glassfish 3.0: The Web Container, Thread Pool, and Transaction Service components must be set to the LOW monitoring level.
  • Glassfish 2.1: The Web Container, Thread Pool, and Transaction Service components must be set to the LOW monitoring level.
WebLogic

Local support for JMX is enabled on WebLogic Application servers by default. If you have changed the default settings, see:

WebSphere

Local support for JMX is disabled on WebSphere Application servers by default. For more information, see:

And the related New Relic documentation:

WebSphere Liberty

Local support for JMX is disabled on WebSphere Application Liberty servers by default. For more information, see:

JBoss

Local support for JMX is enabled on JBoss Application servers by default. If you have changed the default settings, see:

For more help

Recommendations for learning more: