diff --git a/instrumentation/jmx-metrics/src/main/resources/README.md b/instrumentation/jmx-metrics/src/main/resources/README.md index 4c4d72cc38..f27c5e22a9 100644 --- a/instrumentation/jmx-metrics/src/main/resources/README.md +++ b/instrumentation/jmx-metrics/src/main/resources/README.md @@ -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). \ No newline at end of file +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. \ No newline at end of file diff --git a/instrumentation/jmx-metrics/src/main/resources/jmx/rules/jvm.yaml b/instrumentation/jmx-metrics/src/main/resources/jmx/rules/jvm.yaml index 6f3606e5a8..9119b59b06 100644 --- a/instrumentation/jmx-metrics/src/main/resources/jmx/rules/jvm.yaml +++ b/instrumentation/jmx-metrics/src/main/resources/jmx/rules/jvm.yaml @@ -75,21 +75,50 @@ 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 + 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" diff --git a/instrumentation/jmx-metrics/src/main/resources/jmx/rules/tomcat.yaml b/instrumentation/jmx-metrics/src/main/resources/jmx/rules/tomcat.yaml index 0d7fa1602f..73cf261353 100644 --- a/instrumentation/jmx-metrics/src/main/resources/jmx/rules/tomcat.yaml +++ b/instrumentation/jmx-metrics/src/main/resources/jmx/rules/tomcat.yaml @@ -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) @@ -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)