From 30f35a127534e61ccc8bc1ce60db5d0bb7f47a51 Mon Sep 17 00:00:00 2001 From: Benedikt Bongartz Date: Thu, 8 Jun 2023 11:54:47 +0200 Subject: [PATCH] add system.cpu.physical.count and system.cpu.logical.count metrics Signed-off-by: Benedikt Bongartz Co-authored-by: Pablo Baeyens Co-authored-by: Tigran Najaryan <4194920+tigrannajaryan@users.noreply.github.com> --- CHANGELOG.md | 2 ++ docs/system/system-metrics.md | 16 ++++++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6580b21cdf..b5547818af 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -111,6 +111,8 @@ Note: This is the first release of Semantic Conventions separate from the Specif ([#133](https://github.com/open-telemetry/semantic-conventions/pull/133)) - Add markdown file for url semantic conventions ([#174](https://github.com/open-telemetry/semantic-conventions/pull/174)) +- Add `system.cpu.physical.count` and `system.cpu.logical.count` metrics. + ([#99](https://github.com/open-telemetry/opentelemetry-specification/pull/99)) ## v1.20.0 (2023-04-07) diff --git a/docs/system/system-metrics.md b/docs/system/system-metrics.md index 3882a55788..2dcd401661 100644 --- a/docs/system/system-metrics.md +++ b/docs/system/system-metrics.md @@ -33,12 +33,16 @@ instruments not explicitly defined in the specification. **Description:** System level processor metrics. -| Name | Description | Units | Instrument Type ([*](/docs/general/metrics.md#instrument-types)) | Value Type | Attribute Key(s) | Attribute Values | -| ---------------------- | -------------------------------------------------------------------------------------------------------- | ----- | ------------------------------------------------- | ---------- | ---------------- | ----------------------------------- | -| system.cpu.time | | s | Counter | Double | state | idle, user, system, interrupt, etc. | -| | | | | | cpu | CPU number [0..n-1] | -| system.cpu.utilization | Difference in system.cpu.time since the last measurement, divided by the elapsed time and number of CPUs | 1 | Gauge | Double | state | idle, user, system, interrupt, etc. | -| | | | | | cpu | CPU number (0..n) | +NOTE: Logical CPU refers to the virtual cores created by the operating system to manage multitasking, while a physical CPU represents the actual physical processor core(s) on the hardware. + +| Name | Description | Units | Instrument Type ([*](/docs/general/metrics.md#instrument-types)) | Value Type | Attribute Key(s) | Attribute Values | +| ------------------------- | ---------------------------------------------------------------------------------------------------------------- | ----- | ------------------------------------------------- | ---------- | ---------------- | ----------------------------------- | +| system.cpu.time | Seconds each logical CPU spent on each mode | s | Counter | Double | state | idle, user, system, interrupt, etc. | +| | | | | | cpu | Logical CPU number [0..n-1] | +| system.cpu.utilization | Difference in system.cpu.time since the last measurement, divided by the elapsed time and number of logical CPUs | 1 | Gauge | Double | state | idle, user, system, interrupt, etc. | +| | | | | | cpu | Logical CPU number (0..n) | +| system.cpu.physical.count | Reports the number of available physical CPUs - may change over time | {cpu} | UpDownCounters | Int64 | | | +| system.cpu.logical.count | Reports the number of available logical CPUs - may change over time | {cpu} | UpDownCounters | Int64 | | | ### `system.memory.` - Memory metrics