Semantic conventions for temperature metrics

July 24, 2026 ยท View on GitHub

Status: Development

Temperature metrics hw.temperature.*

A temperature sensor, either numeric or discrete.

Metric: hw.temperature

This metric is recommended.

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
hw.temperatureGaugeCelTemperature in degrees Celsius.Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
hw.idDevelopmentRequiredstringAn identifier for the hardware component, unique within the monitored hostwin32battery_battery_testsysa33_1
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.sensor_locationDevelopmentRecommendedstringLocation of the sensorcpu0; ps1; INLET; CPU0_DIE; AMBIENT; MOTHERBOARD; PS0 V3_3; MAIN_12V; CPU_VCORE

Metric: hw.temperature.limit

This metric is recommended.

NameInstrument TypeUnit (UCUM)DescriptionStabilityEntity Associations
hw.temperature.limitGaugeCelTemperature limit in degrees Celsius.Development

Attributes:

KeyStabilityRequirement LevelValue TypeDescriptionExample Values
hw.idDevelopmentRequiredstringAn identifier for the hardware component, unique within the monitored hostwin32battery_battery_testsysa33_1
hw.limit_typeDevelopmentRecommendedstringType of limit for hardware componentslow.critical; low.degraded; high.degraded; high.critical
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.sensor_locationDevelopmentRecommendedstringLocation of the sensorcpu0; ps1; INLET; CPU0_DIE; AMBIENT; MOTHERBOARD; PS0 V3_3; MAIN_12V; CPU_VCORE

hw.limit_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
criticalCriticalDevelopment
degradedDegradedDevelopment
high.criticalHigh CriticalDevelopment
high.degradedHigh DegradedDevelopment
low.criticalLow CriticalDevelopment
low.degradedLow DegradedDevelopment
maxMaximumDevelopment
throttledThrottledDevelopment
turboTurboDevelopment

Metric: hw.status (Temperature)

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
hw.typeDevelopmentRequiredstringType of the component [2]temperature
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.sensor_locationDevelopmentRecommendedstringLocation of the sensorcpu0; ps1; INLET; CPU0_DIE; AMBIENT; MOTHERBOARD; PS0 V3_3; MAIN_12V; CPU_VCORE

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

  • ok: The temperature is within normal range.
  • degraded: The temperature is outside the normal range but not critical.
  • failed: The temperature is at a critical level.

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


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