You can use the Java virtual machine (JVM) counters that the Performance Monitoring Infrastructure (PMI) and Tivoli Performance Viewer (TPV) collect to monitor JVM performance.
The total, used, and free heap size counters are available without any additional configuration settings. The remaining counters are available only when a Java virtual machine profiler is enabled. See Enabling the Java virtual machine profiler data for more information on this task.
Name | Key | Description | Granularity | Type | Level | Overhead | ID |
FreeMemory | jvmRuntimeModule.freeMemory | The free memory in the JVM run time | Per JVM | CountStatistic | Extended | Low | 2 |
HeapSize | jvmRuntimeModule.totalMemory | The total memory in the JVM run time | Per JVM | BoundedRangeStatistic. The upperBound and lowerBound are not implemented for the Total memory counter. | Basic | High | 1 |
ProessCpuUsage | jvmRuntimeModule.cpuUsage | The average percent of central processing unit (CPU) usage since the last query | Per JVM | CountStatistic | Basic | Low | 5 |
UpTime | jvmRuntimeModule.upTime | The amount of time that the JVM is running | Per JVM | CountStatistic | Basic | Low | 4 |
UsedMemory | jvmRuntimeModule.usedMemory | The used memory in the JVM run time | Per JVM | CountStatistic | Basic | Low | 3 |
GCCount | jvmRuntimeModule.numGcCalls | The number of garbage collection calls. This counter is not available unless the JVM profiler is enabled. See Enabling the JVM profiler data. | Per JVM | CountStatistic | All | Max | 11 |
GCIntervalTime | jvmRuntimeModule.avgTimeBetweenGcCalls | The average garbage collection value in ![]() ![]() |
Per JVM | TimeStatistic | All | Max | 12 |
GCTime | jvmRuntimeModule.avgGcDuration | The average ![]() ![]() |
Per JVM | TimeStatistic | All | Max | 13 |
WaitsForLockCount | jvmRuntimeModule.numWaitsForLock | The number of times that a thread waits for a lock. This counter is not available unless the JVM profiler is enabled. See Enabling the JVM profiler data. | Per JVM | CountStatistic | All | Max | 19 |
WaitForLockTime | jvmRuntimeModule.avgTimeWaitForLock | The average time that a thread waits for a lock. This counter is not available unless the JVM profiler is enabled. See Enabling the JVM profiler data. | Per JVM | TimeStatistic | All | Max | 20 |
ThreadStartedCount | jvmRuntimeModule.numThreadsStarted | The number of threads started. This counter is not available unless the JVM profiler is enabled. See Enabling the JVM profiler data. | Per JVM | CountStatistic | All | Max | 17 |
ThreadEndedCount | jvmRuntimeModule.numThreadsDead | The number of failed threads. This counter is not available unless the JVM profiler is enabled. See Enabling the JVM profiler data. | Per JVM | CountStatistic | All | Max | 18 |
ObjectAllocateCount | jvmRuntimeModule.numObjectsAllocated![]() |
The number of objects that are allocated in the heap. This counter is not available unless the -XrunpmiJvmpiProfiler option is set when starting the JVM. | Per JVM | CountStatistic | All | Max | 14 |
ObjectMovedCount | jvmRuntimeModule.numObjectsMoved![]() |
The number of objects in the heap. This counter is not available unless the -XrunpmiJvmpiProfiler option is set when starting the JVM. | Per JVM | CountStatistic | All | Max | 16 |
ObjectFreedCount | jvmRuntimeModule.numObjectsFreed Note: This counter only applies to Versions 4.0 - 6.0.x.
It is deprecated in Version 6.1.
|
The number of objects freed in the heap. This counter is not available unless the -XrunpmiJvmpiProfiler option is set when starting the JVM. | Per JVM | CountStatistic | All | Max | 15 |