Skip to content

JVM Metrics

This page documents Prometheus metrics exposed by the JVM instrumentation module of the Prometheus Java Client Library inside of Yellowbrick components.

Purpose

JVM metrics are essential for understanding the behavior and health of long-running Java processes. They cover a wide range of subsystems:

  • Memory usage (heap, non-heap, and memory pools)
  • Garbage collection frequency and duration
  • JIT compilation time
  • Thread activity and contention
  • Class loading dynamics
  • Process-level system statistics (CPU usage, open file descriptors)
  • Native memory tracking

These metrics help detect memory leaks, GC pressure, thread exhaustion, and performance degradation across critical components.

Metrics

NameTypeFreqLabelsDescription
Buffer Pool Metricsgroup10s-JVM buffer pool metrics
Class Loading Metricsgroup10s-JVM class loading stats
Compilation Metricsgroup10s-JVM JIT compilation metrics
Garbage Collector Metricsgroup10s-Garbage collector performance
Memory Metricsgroup10s-JVM heap/non-heap memory usage
Memory Pool Allocation Metricsgroup10s-JVM memory pool allocation metrics
Native Memory Metricsgroup10s-JVM native memory tracking
Process Metricsgroup10s-Process-level stats like CPU, memory, open fds, start time
Runtime Metricsgroup10s-JVM runtime and system properties
Threads Metricsgroup10s-JVM thread-related metrics