# Semantic Conventions for OS Process Metrics **Status**: [Experimental](../../document-status.md) This document describes instruments and attributes for common OS process level metrics in OpenTelemetry. Also consider the [general metric semantic conventions](README.md#general-metric-semantic-conventions) when creating instruments not explicitly defined in this document. OS process metrics are not related to the runtime environment of the program, and should take measurements from the operating system. For runtime environment metrics see [semantic conventions for runtime environment metrics](runtime-environment-metrics.md). - [Metric Instruments](#metric-instruments) * [Process](#process) - [Attributes](#attributes) ## Metric Instruments ### Process Below is a table of Process metric instruments. | Name | Instrument | Units | Description | Labels | |------|------------|-------|-------------|--------| | `process.cpu.time` | Asynchronous 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.memory.usage` | Asynchronous UpDownCounter | By | The amount of physical memory in use. | | | `process.memory.virtual` | Asynchronous UpDownCounter | By | The amount of committed virtual memory. | | | `process.disk.io` | Asynchronous Counter | By | Disk bytes transferred. | `direction` SHOULD be one of: `read`, `write` | ## Attributes Process metrics SHOULD be associated with a [`process`](../../resource/semantic_conventions/process.md#process) resource whose attributes provide additional context about the process.