JVM performance monitor
The JVM performance monitor uses JMX to query Java bean objects and their data. The monitor compares Java bean values with a compare value using a compare operation. If the compare operation evaluates to false
the monitor fails the test. Optionally two performance counters can be queried and combined before being compared with the compare value.
- System type: Windows, Linux/UNIX, Other/Unidentified
- Category: Performance
Monitoring Average CPU Usage
All bean objects and their data use the Data typeJava VM performance data
, except for the following combination of settings:
- Object -
java.lang.type=OperatingSystem
- Counter -
ProcessCpuTime
- Data type -
CPU utilization
In this case an average CPU usage—similar to the CPU usage that is displayed in JConsole—is calculated by fetching two samples of the ProcessCpuTime
counter with a known time delay between them. Optionally displays data in percent.
Configuration
- The Java server must have JMX activated and accessible over the LAN.
- The Network Monitor gateway—including the local gateway on the Network Monitor server computer—must have the Oracle Java JDK (or at least JRE) for 32-bit applications installed. If any 64-bit Java is installed, remove it entirely, or at least clear it completely from the PATH environment variable. The Java installer can be downloaded from: http://www.oracle.com/technetwork/java/javase/downloads/index.html.
- If the gateway is running x64 Windows and a 32-bit version of Java JRE (or JDK) has been installed, go to the Control Panel > System > Advanced System Settings and add the following string to the
PATH
environment variable for thesystem
user.
;C:\Program Files (x86)\Java\jre7\bin;C:\Program Files (x86)\Java\jre7\bin\client
- Verify that the
%JAVA_HOME%\bin\client
folder (where%JAVA_HOME%
represents the Java installation folder) contains the important fileJVM.DLL
, that is the Network Monitor interface to JNI and ultimately the Java VM - Reboot the gateway machine to make sure that the setting is reflected on all running applications and services.
- If the JDK is installed on the gateway, you should verify that the connection to the JMX server is available by executing the
JConsole.exe
(32-bit) application in the JDKbin
folder - Verify that the gateway, including the KNM
local_gateway
subfolder, have their own copy of the JAR filejmx_connector.jar
, that is found in theKNM
installation folder. - When adding a JVM performance monitor, ensure that the JVM account, if any, and port setting is set to the correct values. Then select the ReScan link. The Object, Counter, and Instance listboxes will be filled with any available beans and their datafields.
Monitor specific properties
NOTE Only monitor specific settings are documented here. See Standard monitor settings.
- Object/Counter/Instance - Name of the primary performance bean to test. These values can be enumerated by using the enumeration function. The instance field is intentionally left blank for some counter types. Click the Rescan link to refresh these values
- Object/Counter/Instance - Optional. Secondary performance bean. These values can be enumerated by using the enumeration function. The instance field is intentionally left blank for some counter types.
- Combine operation - Optional operation used when querying two counters. They can be combined into a final result by using the add, subtract, divide or multiply operation.
- Divisor - A value that the retrieved value is divided with before the comparison.
- Data type - The unit of data sampled by the test. This makes it possible to group data with other monitors using the same type in reports.
- Value type - Type of value that is compared with the retrieved value.
- Compare Operation - Operation to use when comparing.
- Compare value - Value to compare with the resulting value from the calculation.
- Inherit credentials - Specifies the JVM credential, if one is required. If checked, credentials are inherited. If blank, overrides the JVM credential set for the asset on the Authentication tab of an asset node.
- Port - The port number of the JVM service.