diff --git a/CHANGELOG.md b/CHANGELOG.md index b539f9ab2c9..0d36287fa1b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -48,9 +48,6 @@ release. ([#2618](https://github.com/open-telemetry/opentelemetry-specification/pull/2618)) - Change `faas.document.time` and `faas.time` level from `required` to `recommended` ([#2627](https://github.com/open-telemetry/opentelemetry-specification/pull/2627)) -- Remove `direction` dimension, instead creating metrics with names reflecting those - dimensions. - ([#2617](https://github.com/open-telemetry/opentelemetry-specification/pull/2617)) - Add `rpc.grpc.status_code` to RPC metric semantic conventions ([#2604](https://github.com/open-telemetry/opentelemetry-specification/pull/2604)). - Add `http.*.*.size` metric semantic conventions for tracking size of requests diff --git a/specification/metrics/semantic_conventions/process-metrics.md b/specification/metrics/semantic_conventions/process-metrics.md index 0f951047903..62a5bf052ac 100644 --- a/specification/metrics/semantic_conventions/process-metrics.md +++ b/specification/metrics/semantic_conventions/process-metrics.md @@ -31,19 +31,15 @@ metrics](runtime-environment-metrics.md). Below is a table of Process metric instruments. -| Name | Instrument Type ([*](README.md#instrument-types)) | Units | Description | Labels | -| --------------------------------- | ------------------------------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `process.cpu.time` | Counter | s | Total CPU seconds broken down by different states. | `state`, if specified, SHOULD be one of: `system`, `user`, `wait`. A process SHOULD be characterized _either_ by data points with no `state` labels, _or only_ data points with `state` labels. | -| `process.cpu.utilization` | Gauge | s | Difference in process.cpu.time since the last measurement, divided by the elapsed time and number of CPUs available to the process. | `state`, if specified, SHOULD be one of: `system`, `user`, `wait`. A process SHOULD be characterized _either_ by data points with no `state` labels, _or only_ data points with `state` labels. | -| `process.memory.usage` | UpDownCounter | By | The amount of physical memory in use. | | -| `process.memory.virtual` | UpDownCounter | By | The amount of committed virtual memory. | | -| `process.disk.io` (deprecated) | Counter | By | Disk bytes transferred. | `direction` SHOULD be one of: `read`, `write` | -| `process.disk.io.read` | Counter | By | Disk bytes read. | | -| `process.disk.io.write` | Counter | By | Disk bytes written. | | -| `process.network.io` (deprecated) | Counter | By | Network bytes transferred. | `direction` SHOULD be one of: `receive`, `transmit` | -| `process.network.io.receive` | Counter | By | Network bytes received. | | -| `process.network.io.transmit` | Counter | By | Network bytes transmitted. | | -| `process.threads` | UpDownCounter | {threads} | Process threads count. | | +| Name | Instrument Type ([*](README.md#instrument-types)) | Units | Description | Labels | +|---------------------------|---------------------------------------------------|-------|-------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `process.cpu.time` | Counter | s | Total CPU seconds broken down by different states. | `state`, if specified, SHOULD be one of: `system`, `user`, `wait`. A process SHOULD be characterized _either_ by data points with no `state` labels, _or only_ data points with `state` labels. | +| `process.cpu.utilization` | Gauge | s | Difference in process.cpu.time since the last measurement, divided by the elapsed time and number of CPUs available to the process. | `state`, if specified, SHOULD be one of: `system`, `user`, `wait`. A process SHOULD be characterized _either_ by data points with no `state` labels, _or only_ data points with `state` labels. | +| `process.memory.usage` | UpDownCounter | By | The amount of physical memory in use. | | +| `process.memory.virtual` | UpDownCounter | By | The amount of committed virtual memory. | | +| `process.disk.io` | Counter | By | Disk bytes transferred. | `direction` SHOULD be one of: `read`, `write` | +| `process.network.io` | Counter | By | Network bytes transferred. | `direction` SHOULD be one of: `receive`, `transmit` | +| `process.threads` | UpDownCounter | {threads} | Process threads count. | | ## Attributes diff --git a/specification/metrics/semantic_conventions/system-metrics.md b/specification/metrics/semantic_conventions/system-metrics.md index 4804f821f89..05733dcad06 100644 --- a/specification/metrics/semantic_conventions/system-metrics.md +++ b/specification/metrics/semantic_conventions/system-metrics.md @@ -54,39 +54,29 @@ memory](#systempaging---pagingswap-metrics). **Description:** System level paging/swap memory metrics. -| Name | Description | Units | Instrument Type ([*](README.md#instrument-types)) | Value Type | Attribute Key | Attribute Values | -| ------------------------------------- | ----------------------------------- | ------------ | ------------------------------------------------- | ---------- | ------------- | ---------------- | -| system.paging.usage | Unix swap or windows pagefile usage | By | UpDownCounter | Int64 | state | used, free | -| system.paging.utilization | | 1 | Gauge | Double | state | used, free | -| system.paging.faults | | {faults} | Counter | Int64 | type | major, minor | -| system.paging.operations (deprecated) | | {operations} | Counter | Int64 | type | major, minor | -| | | | | | direction | in, out | -| system.paging.operations.in | | {operations} | Counter | Int64 | type | major, minor | -| system.paging.operations.out | | {operations} | Counter | Int64 | type | major, minor | +| Name | Description | Units | Instrument Type ([*](README.md#instrument-types)) | Value Type | Attribute Key | Attribute Values | +|---------------------------|-------------------------------------|--------------|---------------------------------------------------|------------|---------------|------------------| +| system.paging.usage | Unix swap or windows pagefile usage | By | UpDownCounter | Int64 | state | used, free | +| system.paging.utilization | | 1 | Gauge | Double | state | used, free | +| system.paging.faults | | {faults} | Counter | Int64 | type | major, minor | +| system.paging.operations | | {operations} | Counter | Int64 | type | major, minor | +| | | | | | direction | in, out | ### `system.disk.` - Disk controller metrics **Description:** System level disk performance metrics. -| Name | Description | Units | Instrument Type ([*](README.md#instrument-types)) | Value Type | Attribute Key | Attribute Values | -| ------------------------------------------------ | ----------------------------------------------- | ------------ | ------------------------------------------------- | ---------- | ------------- | ---------------- | -| system.disk.io (deprecated) | | By | Counter | Int64 | device | (identifier) | -| | | | | | direction | read, write | -| system.disk.io.read | | By | Counter | Int64 | device | (identifier) | -| system.disk.io.write | | By | Counter | Int64 | device | (identifier) | -| system.disk.operations (deprecated) | | {operations} | Counter | Int64 | device | (identifier) | -| | | | | | direction | read, write | -| system.disk.operations.read | | {operations} | Counter | Int64 | device | (identifier) | -| system.disk.operations.write | | {operations} | Counter | Int64 | device | (identifier) | -| system.disk.io_time\[1\] | Time disk spent activated | s | Counter | Double | device | (identifier) | -| system.disk.operation_time (deprecated) | Sum of the time each operation took to complete | s | Counter | Double | device | (identifier) | -| | | | | | direction | read, write | -| system.disk.operation_time.read\[2\] | Sum of the time each operation took to complete | s | Counter | Double | device | (identifier) | -| system.disk.operation_time.write\[2\] | Sum of the time each operation took to complete | s | Counter | Double | device | (identifier) | -| system.disk.merged (deprecated) | | {operations} | Counter | Int64 | device | (identifier) | -| | | | | | direction | read, write | -| system.disk.merged.read | | {operations} | Counter | Int64 | device | (identifier) | -| system.disk.merged.write | | {operations} | Counter | Int64 | device | (identifier) | +| Name | Description | Units | Instrument Type ([*](README.md#instrument-types)) | Value Type | Attribute Key | Attribute Values | +|--------------------------------------------|-------------------------------------------------|--------------|---------------------------------------------------|------------|---------------|------------------| +| system.disk.io | | By | Counter | Int64 | device | (identifier) | +| | | | | | direction | read, write | +| system.disk.operations | | {operations} | Counter | Int64 | device | (identifier) | +| | | | | | direction | read, write | +| system.disk.io_time\[1\] | Time disk spent activated | s | Counter | Double | device | (identifier) | +| system.disk.operation_time\[2\] | Sum of the time each operation took to complete | s | Counter | Double | device | (identifier) | +| | | | | | direction | read, write | +| system.disk.merged | | {operations} | Counter | Int64 | device | (identifier) | +| | | | | | direction | read, write | 1 The real elapsed time ("wall clock") used in the I/O path (time from operations running in parallel are not @@ -128,30 +118,19 @@ perf counter (similar for Writes) **Description:** System level network metrics. -| Name | Description | Units | Instrument Type ([*](README.md#instrument-types)) | Value Type | Attribute Key | Attribute Values | -| ----------------------------------------------- | ----------------------------------------------------------------------------------------- | ------------- | ------------------------------------------------- | ---------- | ------------- | ---------------------------------------------------------------------------------------------- | -| system.network.dropped (deprecated) | Count of packets that are dropped or discarded even though there was no error | {packets} | Counter | Int64 | device | (identifier) | -| | | | | | direction | transmit, receive | -| system.network.dropped.transmit\[1\] | Count of packets that are dropped or discarded on transmit even though there was no error | {packets} | Counter | Int64 | device | (identifier) | -| system.network.dropped.receive\[1\] | Count of packets that are dropped or discarded on receive even though there was no error | {packets} | Counter | Int64 | device | (identifier) | -| system.network.packets (deprecated) | | {packets} | Counter | Int64 | device | (identifier) | -| | | | | | direction | transmit, receive | -| system.network.packets.transmit | Count of packets transmitted | {packets} | Counter | Int64 | device | (identifier) | -| system.network.packets.receive | Count of packets received | {packets} | Counter | Int64 | device | (identifier) | -| system.network.errors (deprecated) | Count of network errors detected | {errors} | Counter | Int64 | device | (identifier) | -| | | | | | direction | transmit, receive | -| system.network.errors.transmit\[2\] | Count of network errors detected on transmit | {errors} | Counter | Int64 | device | (identifier) | -| system.network.errors.receive\[2\] | Count of network errors detected on receive | {errors} | Counter | Int64 | device | (identifier) | -| system.network.io (deprecated) | | By | Counter | Int64 | device | (identifier) | -| | | | | | direction | transmit, receive | -| system.network.io.transmit | Bytes sent | By | Counter | Int64 | device | (identifier) | -| system.network.io.receive | Bytes received | By | Counter | Int64 | device | (identifier) | -| system.network.connections (deprecated) | | {connections} | UpDownCounter | Int64 | device | (identifier) | -| | | | | | protocol | tcp, udp, [etc.](https://en.wikipedia.org/wiki/Transport_layer#Protocols) | -| | | | | | state | If specified, SHOULD be one of: close, close_wait, closing, delete, established, fin_wait_1, fin_wait_2, last_ack, listen, syn_recv, syn_sent, time_wait. A stateless protocol MUST NOT set this attribute. | -| system.network.tcp.connections | Count of TCP connections | {connections} | UpDownCounter | Int64 | device | (identifier) | -| | | | | | state | SHOULD be one of: close, close_wait, closing, delete, established, fin_wait_1, fin_wait_2, last_ack, listen, syn_recv, syn_sent, time_wait. A stateless protocol MUST NOT set this attribute. | -| system.network.udp.connections | Count of UDP connections | {connections} | UpDownCounter | Int64 | device | (identifier) | +| Name | Description | Units | Instrument Type ([*](README.md#instrument-types)) | Value Type | Attribute Key | Attribute Values | +|----------------------------------------|-------------------------------------------------------------------------------|---------------|---------------------------------------------------|------------|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| system.network.dropped\[1\] | Count of packets that are dropped or discarded even though there was no error | {packets} | Counter | Int64 | device | (identifier) | +| | | | | | direction | transmit, receive | +| system.network.packets | | {packets} | Counter | Int64 | device | (identifier) | +| | | | | | direction | transmit, receive | +| system.network.errors\[2\] | Count of network errors detected | {errors} | Counter | Int64 | device | (identifier) | +| | | | | | direction | transmit, receive | +| system.network.io | | By | Counter | Int64 | device | (identifier) | +| | | | | | direction | transmit, receive | +| system.network.connections | | {connections} | UpDownCounter | Int64 | device | (identifier) | +| | | | | | protocol | tcp, udp, [etc.](https://en.wikipedia.org/wiki/Transport_layer#Protocols) | +| | | | | | state | [e.g. for tcp](https://en.wikipedia.org/wiki/Transmission_Control_Protocol#Protocol_operation) SHOULD be one of: close, close_wait, closing, delete, established, fin_wait_1, fin_wait_2, last_ack, listen, syn_recv, syn_sent, time_wait. A stateless protocol MUST NOT set this attribute. | 1 Measured as: