JVM 监控页面显示由 OpenTelemetry Java Agent 收集的 JVM (Java 虚拟机) 指标数据。指标包括 GC (垃圾收集)、堆内存、非堆内存、JVM 线程、Java 类等。您可以利用监控图表中呈现的实时监控数据进行性能分析,快速识别内存泄漏、线程异常及其他问题。
为了满足不同的监控指标分析场景,还支持以下功能:
服务已注入 Java Agent,具体实现请参阅 添加服务。
在左侧导航栏中,点击 监控。
选择您想查看监控数据的服务和时间范围。
注意:查询的时间范围受 Prometheus 监控数据的保留期限限制。例如,如果监控数据的保留期为 7 天,而设定的时间范围为过去 30 天,则统计数据仅覆盖 7 天。
点击 JVM 监控 标签以查看服务 Pod 的 JVM 监控数据。
提示:当服务有多个 Pods 时,点击查看 监控数据比较 以分析和比较 2 个 Pods 的监控数据。
监控图表显示了在查询时间范围内指定服务 Pod 的 JVM 监控指标的趋势统计。统计数据包括各种类的最大、分配和使用内存;CPU 使用率;GC 计数和持续时间;活动线程计数;加载/卸载的类数量等。
监控图表显示了在查询时间范围内指定服务 Pod 的 JVM 监控指标的趋势统计。监控指标的说明见下表。
提示:在查看数据时,您可以参考 常规操作 刷新监控数据、隐藏与图例对应的数据或以大图查看监控图表。
监控指标 | 描述 |
---|---|
年轻代 GC 计数/持续时间 | Pod 中年轻代的垃圾收集次数和耗时。 |
老年代 GC 计数/持续时间 | Pod 中老年代的垃圾收集次数和耗时。 |
系统/Pod CPU 使用率 | 系统:Pod 系统内的 CPU 使用率(使用的 CPU 数量 / 分配给 Pod 的总 CPU 数量) Pod:Pod 的 CPU 使用率(使用的 CPU 数量 / 分配给 Pod 的总 CPU 数量) |
堆内存 | Pod 的可用堆内存和堆内存使用情况的统计,包括:峰值可用堆内存、当前可用堆内存、已使用堆内存。 |
堆内存详情 | Pod 中各个堆分区的内存使用情况统计,包括:年轻代 Eden 区域、老年代区域、年轻代 Survivor 区域、总已使用堆内存。 |
非堆内存 | Pod 的可用非堆内存和非堆内存使用情况的统计,包括:峰值可用非堆内存、当前可用非堆内存、已使用非堆内存。 |
元空间内存 | Pod 的可用元空间内存和元空间内存使用情况的统计,包括:总元空间大小、已使用元空间大小。 |
直接缓冲区内存 | Pod 的可用直接缓冲区内存和直接缓冲区内存使用情况的统计,包括:总直接缓冲区大小、已使用直接缓冲区大小。 |
守护线程 | Pod 中的守护线程数量。 |
活动线程 | Pod 中的活动线程数量。 |
JAVA 类使用情况 | Pod 加载的 Java 类数量。 |
卸载类计数 | Pod 卸载的 Java 类数量。 |