Physical Disk Metrics

Physical disk metrics provide S.M.A.R.T. and device information. They are registered by the agent core on all platforms; collecting actual data requires the smartctl utility (smartmontools) to be available on the monitored host. Use the PhysicalDisk.Devices list or table to find available disk names.

PhysicalDisk.Capacity(device)

Total disk capacity (bytes).

Data Type

Unsigned Integer 64

Platforms

All

Table 1. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

PhysicalDisk.DeviceType(device)

Device access type reported by smartctl (device/type).

Data Type

String

Platforms

All

Table 2. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

PhysicalDisk.Firmware(device)

Firmware version.

Data Type

String

Platforms

All

Table 3. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

PhysicalDisk.Model(device)

Disk model identifier.

Data Type

String

Platforms

All

Table 4. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

PhysicalDisk.PowerCycles(device)

Power cycle count.

Data Type

Unsigned Integer

Platforms

All

Table 5. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

PhysicalDisk.PowerOnTime(device)

Total operating hours.

Data Type

Unsigned Integer

Platforms

All

Table 6. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

PhysicalDisk.SerialNumber(device)

Serial number.

Data Type

String

Platforms

All

Table 7. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

PhysicalDisk.SmartAttr(device, attribute)

Read a specific S.M.A.R.T. attribute from a physical disk.

Data Type

String

Platforms

All

Table 8. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

attribute

String

S.M.A.R.T. attribute name, numeric ATA attribute ID (1-255), or JSON path

The metric value is extracted from JSON output of smartctl --all --json <device> executed by the agent. Extraction logic:

  1. Attempt the provided attribute name as a full path to a JSON element.

  2. If not found, search inside ata_smart_attributes/table for an object with a matching name or numeric attribute ID; if found, return the value element.

  3. If not found, search inside nvme_smart_health_information_log for an element with the given name; if found, return its value.

Examples
PhysicalDisk.SmartAttr(/dev/sda, /trim/supported)

Returns whether TRIM is supported on the sda disk.

PhysicalDisk.SmartAttr(/dev/sda, Raw_Read_Error_Rate)

Returns the normalized value field for Raw_Read_Error_Rate. Use PhysicalDisk.SmartAttrRaw for the raw numeric value.

PhysicalDisk.SmartAttr(/dev/nvme0, available_spare)

Returns available spare from NVMe SMART health information log.

PhysicalDisk.SmartAttrRaw(device, attribute)

Raw value of the given S.M.A.R.T. attribute.

Data Type

Unsigned Integer 64

Platforms

All

Table 9. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

attribute

String

S.M.A.R.T. attribute name, numeric ATA attribute ID (1-255), or JSON path

PhysicalDisk.SmartAttrRawString(device, attribute)

Raw value (vendor-specific string) of the given S.M.A.R.T. attribute.

Data Type

String

Platforms

All

Table 10. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

attribute

String

S.M.A.R.T. attribute name, numeric ATA attribute ID (1-255), or JSON path

PhysicalDisk.SmartAttrThreshold(device, attribute)

Failure threshold of the given S.M.A.R.T. attribute.

Data Type

Unsigned Integer

Platforms

All

Table 11. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

attribute

String

S.M.A.R.T. attribute name, numeric ATA attribute ID (1-255), or JSON path

PhysicalDisk.SmartAttrWorst(device, attribute)

Worst recorded value of the given S.M.A.R.T. attribute.

Data Type

Unsigned Integer

Platforms

All

Table 12. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

attribute

String

S.M.A.R.T. attribute name, numeric ATA attribute ID (1-255), or JSON path

PhysicalDisk.SmartStatus(device)

S.M.A.R.T. overall health test result from smart_status/passed. The handler returns the text true or false, although the metric is registered as Integer. Select String as the DCI data type to compare these text values (known issue, netxms#3820).

Data Type

Integer

Platforms

All

Table 13. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)

Table 14. Return Values
Value Description

true

Health test passed

false

Health test failed

PhysicalDisk.Temperature(device)

Disk temperature in Celsius.

Data Type

Integer

Platforms

All

Table 15. Arguments
Argument Type Description

device

String

Physical disk name (e.g., /dev/sda, /dev/nvme0)