JMX Connection to JVM Test

This test reports the availability of the target Java application, and also indicates whether JMX is enabled on the application or not. In addition, the test promptly alerts you to slowdowns experienced by the application, and also reveals whether the application was recently restarted or not.

Target of the test : A Tomcat Server

Agent deploying the test : An internal/remote agent

Outputs of the test : One set of results for the Java application being monitored.

Configurable parameters for the test
Parameter Description

Test Period

How often should the test be executed.

Host

The IP address of the host for which this test is to be configured.

Port

Refers to the port at which the specified host listens to.

JMX Remote Port

Here, specify the port at which the JMX listens for requests from remote hosts. Ensure that you specify the same port that you configured in the management.properties file in the <JAVA_Home>\jre\lib\management folder used by the target application (refer to the Monitoring Java Applications for details).

User, Password, and Confirm Password

If JMX requires authentication only (but no security), then ensure that the User and Password parameters are configured with the credentials of a user with read-write access to JMX. To know how to create this user, refer to the Monitoring Java Applications. Confirm the password by retyping it in the Confirm Password text box.

JNDIName

The JNDIName is a lookup name for connecting to the JMX connector. By default, this is jmxrmi. If you have registered the JMX connector in the RMI registery using a different lookup name, then you can change this default value to reflect the same. 

JMX Provider

This test uses a JMX Provider to access the MBean attributes of the target Java application and collect metrics. Specify the package name of this JMX Provider here. By default, this is set to com.sun.jmx.remote.protocol.

Timeout

Specify the duration (in seconds) for which this test should wait for a response from the target Java application. If there is no response from the target beyond the configured duration, the test will timeout. By default, this is set to 240 seconds.

Measurements made by the test
Measurement Description Measurement Unit Interpretation

JMX availability

Indicates whether the target application is available or not and whether JMX is enabled or not on the application.

Percent

If the value of this measure is 100%, it indicates that the Java application is available with JMX enabled. The value 0 on the other hand, could indicate one/both the following:

  • The Java application is unavailable;
  • The Java application is available, but JMX is not enabled;

JMX response time

Indicates the time taken to connect to the JMX agent of the Java application.

Secs

A high value could indicate a connection bottleneck.

Has the PID changed?

Indicates whether/not the process ID that corresponds to the Java application has changed.

 

This measure will report the value Yes if the PID of the target application has changed; such a change is indicative of an application restart. If the application has not restarted - i.e., if the PID has not changed - then this measure will return the value No.