Java 虚拟机计数器

可以使用性能监控基础结构 (PMI) 和 Tivoli ® Performance Viewer (TPV) 收集的 Java™ 虚拟机 (JVM) 计数器来监视 JVM 性能。

不需要任何其他配置设置,就可使用总的堆大小、使用的堆大小和空闲堆大小计数器。 仅当启用了 Java 虚拟机概要分析程序时,其余计数器才可用。

计数器定义

表 1. 计数器定义 下表描述 JVM 计数器。
名称 密钥 描述 详细程度 类型 级别 开销 标识
FreeMemory jvmRuntimeModule.freeMemory JVM 运行时中的可用内存 每个 JVM CountStatistic 已扩展 2
HeapSize jvmRuntimeModule.totalMemory JVM 运行时中的总计内存 每个 JVM BoundedRangeStatistic. 未实现总计内存计数器的 upperBound 和 lowerBound。 Basic 1
ProcessCpuUsage jvmRuntimeModule.cpuUsage Java 虚拟机的 CPU 使用情况(以百分比为单位)。 每个 JVM CountStatistic Basic 5
UpTime jvmRuntimeModule.upTime JVM 正在运行的时间量 每个 JVM CountStatistic Basic 4
UsedMemory jvmRuntimeModule.usedMemory JVM 运行时中的已用内存 每个 JVM CountStatistic Basic 3
GCcount jvmRuntimeModule.numGcCalls 垃圾回收调用数。 除非启用了 JVM 概要分析程序,否则此计数器不可用。 每个 JVM CountStatistic 全部 最大数目 11
GCIntervalTime jvmRuntimeModule.avgTimeBetweenGcCalls 两次垃圾回收间的平均垃圾回收值(以毫秒计)。 除非启用了 JVM 概要分析程序,否则此计数器不可用。 每个 JVM TimeStatistic 全部 最大数目 12
GCTime jvmRuntimeModule.avgGcDuration 垃圾回收的平均持续时间(以毫秒计)。 除非启用了 JVM 概要分析程序,否则此计数器不可用。 每个 JVM TimeStatistic 全部 最大数目 13
WaitsForLockCount jvmRuntimeModule.numWaitsForLock 线程等待锁定的次数。 除非启用了 JVM 概要分析程序,否则此计数器不可用。 每个 JVM CountStatistic 全部 最大数目 19
WaitForLockTime jvmRuntimeModule.avgTimeWaitForLock 线程等待锁定的平均时间。 除非启用了 JVM 概要分析程序,否则此计数器不可用。 每个 JVM TimeStatistic 全部 最大数目 20
ThreadStartedCount jvmRuntimeModule.numThreadsStarted 启动的线程数。 除非启用了 JVM 概要分析程序,否则此计数器不可用。 每个 JVM CountStatistic 全部 最大数目 17
ThreadEndedCount jvmRuntimeModule.numThreadsDead 已失败的线程数目。 除非启用了 JVM 概要分析程序,否则此计数器不可用。 每个 JVM CountStatistic 全部 最大数目 18
ObjectAllocateCount jvmRuntimeModule.numObjectsAllocated
不推荐使用的功能: 此计数器仅适用于版本 4.0 - 6.0.x。 在 6.1中已不推荐使用此功能。
在堆中分配的对象数。 除非在启动 JVM 时设置了 -XrunpmiJvmpiProfiler 选项,否则此计数器不可用。 每个 JVM CountStatistic 全部 最大数目 14
ObjectMovedCount jvmRuntimeModule.numObjectsMoved
不推荐使用的功能: 此计数器仅适用于版本 4.0 - 6.0.x。 在 6.1中已不推荐使用此功能。
堆中的对象数。 除非在启动 JVM 时设置了 -XrunpmiJvmpiProfiler 选项,否则此计数器不可用。 每个 JVM CountStatistic 全部 最大数目 16
ObjectFreedCount jvmRuntimeModule.numObjectsFreed
不推荐使用的功能: 此计数器仅适用于版本 4.0 - 6.0.x。 在 6.1中已不推荐使用此功能。
堆中释放的对象数。 除非在启动 JVM 时设置了 -XrunpmiJvmpiProfiler 选项,否则此计数器不可用。 每个 JVM CountStatistic 全部 最大数目 15
避免麻烦: 对于 IBM® 提供的 JVM,通过 JVM 工具接口 (JVMTI) 收集的统计数据与 Sun HotSpot-based JVM(包括 Solaris 上的 Sun HotSpot JVM 和 Hewlett-Packard 为 HP-UX 提供的 JVM)收集的统计数据不同。