Skip to content
5 changes: 4 additions & 1 deletion instrumentation/jmx-metrics/src/main/resources/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,7 @@ OTEL_EXPERIMENTAL_METRICS_VIEW_CONFIG: classpath:/jmx/view.yaml

### rules/*.yaml
The rules are a translation of the JMX Metric Gatherer's [target systems](https://github.com/open-telemetry/opentelemetry-java-contrib/tree/main/jmx-metrics/src/main/resources/target-systems)
based on the [JMX metric rule YAML schema](https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/instrumentation/jmx-metrics/javaagent/README.md#basic-syntax).
based on the [JMX metric rule YAML schema](https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/instrumentation/jmx-metrics/javaagent/README.md#basic-syntax).

### SystemCpuLoad
The `SystemCpuLoad` metric is deprecated and Java versions 14+ now use `CpuLoad`. However, to avoid emitting double metrics, we stick to using `SystemCpuLoad` as it still works on newer versions.
Original file line number Diff line number Diff line change
Expand Up @@ -75,21 +75,51 @@ rules:
desc: The maximum amount of memory can be used for the memory pool
- bean: java.lang:type=Threading
unit: "1"
prefix: jvm.threads.
type: gauge
mapping:
ThreadCount:
metric: count
metric: jvm.threads.count
desc: Number of threads
- bean: java.lang:type=OperatingSystem
DaemonThreadCount:
metric: jvm.daemon_threads.count
desc: Number of daemon threads
- bean: java.lang:type=OperatingSystem,*
prefix: jvm.cpu.
type: gauge
mapping:
TotalSwapSpaceSize:
metric: jvm.system.swap.space.total
desc: The host swap memory size in bytes
unit: by
FreeSwapSpaceSize:
metric: jvm.system.swap.space.free
desc: The amount of available swap memory in bytes
unit: by
TotalPhysicalMemorySize:
metric: jvm.system.physical.memory.total
desc: The total physical memory size in host
unit: by
FreePhysicalMemorySize:
metric: jvm.system.physical.memory.free
desc: The amount of free physical memory in host
unit: by
AvailableProcessors:
metric: jvm.system.available.processors
desc: The number of available processors
unit: "1"
SystemCpuLoad:
metric: jvm.system.cpu.utilization
desc: The current load of CPU in host
unit: "1"
ProcessCpuTime:
metric: time
metric: jvm.cpu.time
unit: ns
desc: CPU time used
ProcessCpuLoad:
metric: recent_utilization
metric: jvm.cpu.recent_utilization
unit: "1"
desc: Recent CPU utilization for the process
OpenFileDescriptorCount:
metric: jvm.open_file_descriptor.count
desc: The number of opened file descriptors
unit: "1"
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,15 @@ rules:
- bean: Catalina:type=Manager,host=localhost,context=*
metricAttribute:
context: param(context)
unit: sessions
type: gauge
mapping:
activeSessions:
metric: tomcat.sessions
type: gauge
unit: sessions
desc: The number of active sessions.
rejectedSessions:
metric: tomcat.rejected_sessions
desc: The number of rejected sessions.
- bean: Catalina:type=GlobalRequestProcessor,name=*
metricAttribute:
name: param(name)
Expand Down Expand Up @@ -68,12 +71,15 @@ rules:
- bean: Tomcat:type=Manager,host=localhost,context=*
metricAttribute:
context: param(context)
unit: sessions
type: gauge
mapping:
activeSessions:
metric: tomcat.sessions
type: gauge
unit: sessions
desc: The number of active sessions.
rejectedSessions:
metric: tomcat.rejected_sessions
desc: The number of rejected sessions.
- bean: Tomcat:type=GlobalRequestProcessor,name=*
metricAttribute:
name: param(name)
Expand Down
Loading