Semantic conventions for memory metrics

July 24, 2026 ยท View on GitHub

Status: Development

Memory metrics hw.memory.*

A memory module in a computer system.

Metric: hw.errors (Memory)

This metric is recommended.

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
hw.errorsCounter{error}Number of errors encountered on this memory module.Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
hw.idDevelopmentRequiredstringAn identifier for the hardware component, unique within the monitored hostwin32battery_battery_testsysa33_1
hw.typeDevelopmentRequiredstringType of the component [1]memory
error.typeStableConditionally Required if and only if an error has occurredstringThe type of error encountered by the component. [2]uncorrected; zero_buffer_credit; crc; bad_sector
hw.memory.typeDevelopmentRecommendedstringType of the memory moduleDDR4; DDR5; LPDDR5
hw.modelDevelopmentRecommendedstringDescriptive model name of the hardware componentPERC H740P; Intel(R) Core(TM) i7-10700K; Dell XPS 15 Battery
hw.nameDevelopmentRecommendedstringAn easily-recognizable name for the hardware componenteth0
hw.parentDevelopmentRecommendedstringUnique identifier of the parent component (typically the hw.id attribute of the enclosure, or disk controller)dellStorage_perc_0
hw.serial_numberDevelopmentRecommendedstringSerial number of the hardware componentCNFCP0123456789
hw.vendorDevelopmentRecommendedstringVendor name of the hardware componentDell; HP; Intel; AMD; LSI; Lenovo

[1] hw.type: MUST be set to memory.

[2] error.type: The error.type SHOULD match the error code reported by the component, the canonical name of the error, or another low-cardinality error identifier. Instrumentations SHOULD document the list of errors they report.


error.type has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.

ValueDescriptionStability
_OTHERA fallback error value to be used when the instrumentation doesn't define a custom value.Stable

hw.type has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.

ValueDescriptionStability
batteryBatteryDevelopment
cpuCPUDevelopment
disk_controllerDisk controllerDevelopment
enclosureEnclosureDevelopment
fanFanDevelopment
gpuGPUDevelopment
logical_diskLogical diskDevelopment
memoryMemoryDevelopment
networkNetworkDevelopment
physical_diskPhysical diskDevelopment
power_supplyPower supplyDevelopment
tape_driveTape driveDevelopment
temperatureTemperatureDevelopment
voltageVoltageDevelopment

Metric: hw.memory.size

This metric is recommended.

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
hw.memory.sizeUpDownCounterBySize of the memory module.Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
hw.idDevelopmentRequiredstringAn identifier for the hardware component, unique within the monitored hostwin32battery_battery_testsysa33_1
hw.memory.typeDevelopmentRecommendedstringType of the memory moduleDDR4; DDR5; LPDDR5
hw.modelDevelopmentRecommendedstringDescriptive model name of the hardware componentPERC H740P; Intel(R) Core(TM) i7-10700K; Dell XPS 15 Battery
hw.nameDevelopmentRecommendedstringAn easily-recognizable name for the hardware componenteth0
hw.parentDevelopmentRecommendedstringUnique identifier of the parent component (typically the hw.id attribute of the enclosure, or disk controller)dellStorage_perc_0
hw.serial_numberDevelopmentRecommendedstringSerial number of the hardware componentCNFCP0123456789
hw.vendorDevelopmentRecommendedstringVendor name of the hardware componentDell; HP; Intel; AMD; LSI; Lenovo

Metric: hw.status (Memory)

This metric is recommended.

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
hw.statusUpDownCounter1Operational status: 1 (true) or 0 (false) for each of the possible states. [1]Development

[1]: hw.status is currently specified as an UpDownCounter but would ideally be represented using a StateSet as defined in OpenMetrics. This semantic convention will be updated once StateSet is specified in OpenTelemetry. This planned change is not expected to have any consequence on the way users query their timeseries backend to retrieve the values of hw.status over time.

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
hw.idDevelopmentRequiredstringAn identifier for the hardware component, unique within the monitored hostwin32battery_battery_testsysa33_1
hw.stateDevelopmentRequiredstringThe current state of the component [1]ok; degraded; failed; predicted_failure
hw.typeDevelopmentRequiredstringType of the component [2]memory
hw.memory.typeDevelopmentRecommendedstringType of the memory moduleDDR4; DDR5; LPDDR5
hw.modelDevelopmentRecommendedstringDescriptive model name of the hardware componentPERC H740P; Intel(R) Core(TM) i7-10700K; Dell XPS 15 Battery
hw.nameDevelopmentRecommendedstringAn easily-recognizable name for the hardware componenteth0
hw.parentDevelopmentRecommendedstringUnique identifier of the parent component (typically the hw.id attribute of the enclosure, or disk controller)dellStorage_perc_0
hw.serial_numberDevelopmentRecommendedstringSerial number of the hardware componentCNFCP0123456789
hw.vendorDevelopmentRecommendedstringVendor name of the hardware componentDell; HP; Intel; AMD; LSI; Lenovo

[1] hw.state: MUST be set to one of the following values:

  • ok: The memory module is operating normally.
  • degraded: The memory module is operating with reduced functionality or performance.
  • failed: The memory module has failed and is not operational.
  • predicted_failure: The memory module is currently operational but is predicted to fail soon.

[2] hw.type: MUST be set to memory.


hw.state has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.

ValueDescriptionStability
degradedDegradedDevelopment
failedFailedDevelopment
needs_cleaningNeeds CleaningDevelopment
okOKDevelopment
predicted_failurePredicted FailureDevelopment

hw.type has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.

ValueDescriptionStability
batteryBatteryDevelopment
cpuCPUDevelopment
disk_controllerDisk controllerDevelopment
enclosureEnclosureDevelopment
fanFanDevelopment
gpuGPUDevelopment
logical_diskLogical diskDevelopment
memoryMemoryDevelopment
networkNetworkDevelopment
physical_diskPhysical diskDevelopment
power_supplyPower supplyDevelopment
tape_driveTape driveDevelopment
temperatureTemperatureDevelopment
voltageVoltageDevelopment