diff --git a/CHANGELOG.md b/CHANGELOG.md index 73f4b7e39c5..f29f8524a9f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -53,6 +53,8 @@ release. `net.peer.name` to `net.sock.peer.name` for socket-level instrumentation. Define socket-level attributes and clarify logical peer and host attributes meaning. ([#2594](https://github.com/open-telemetry/opentelemetry-specification/pull/2594)) +- Add semantic conventions for JVM buffer pool usage + ([#2650](https://github.com/open-telemetry/opentelemetry-specification/pull/2650)). ### Compatibility diff --git a/specification/metrics/semantic_conventions/runtime-environment-metrics.md b/specification/metrics/semantic_conventions/runtime-environment-metrics.md index f83b6f693b2..f98af1105e2 100644 --- a/specification/metrics/semantic_conventions/runtime-environment-metrics.md +++ b/specification/metrics/semantic_conventions/runtime-environment-metrics.md @@ -78,7 +78,11 @@ All JVM metric attributes are required unless otherwise indicated. | process.runtime.jvm.cpu.utilization | Recent cpu utilization for the process [2] | 1 | 1 | Asynchronous Gauge | Double | | | | process.runtime.jvm.system.cpu.utilization | Recent cpu utilization for the whole system [2] | 1 | 1 | Asynchronous Gauge | Double | | | | process.runtime.jvm.system.cpu.load_1m | Average CPU load of the whole system for the last minute | 1 | 1 | Asynchronous Gauge | Double | | | +| process.runtime.jvm.buffer.usage | Measure of memory used by buffers | Bytes | `By` | UpDownCounter | Int64 | pool | Name of pool[3] | +| process.runtime.jvm.buffer.limit | Measure of total memory capacity of buffers | Bytes | `By` | UpDownCounter | Int64 | pool | Name of pool[3] | +| process.runtime.jvm.buffer.count | Number of buffers in the pool | buffers | `{buffers}` | UpDownCounter | Int64 | pool | Name of pool[3] | **[1]**: Pool names are generally obtained via [MemoryPoolMXBean#getName()](https://docs.oracle.com/en/java/javase/11/docs/api/java.management/java/lang/management/MemoryPoolMXBean.html#getName()). Examples include `G1 Old Gen`, `G1 Eden space`, `G1 Survivor Space`, `Metaspace`, etc. **[2]**: These utilizations are not defined as being for the specific interval since last measurement (unlike `system.cpu.utilization`). +**[3]**: Pool names are generally obtained via [BufferPoolMXBean#getName()](https://docs.oracle.com/en/java/javase/11/docs/api/java.management/java/lang/management/BufferPoolMXBean.html#getName()).