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 |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
PhysicalDisk.DeviceType(device)
Device access type reported by smartctl (device/type).
Data Type |
String |
Platforms |
All |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
PhysicalDisk.Firmware(device)
Firmware version.
Data Type |
String |
Platforms |
All |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
PhysicalDisk.Model(device)
Disk model identifier.
Data Type |
String |
Platforms |
All |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
PhysicalDisk.PowerCycles(device)
Power cycle count.
Data Type |
Unsigned Integer |
Platforms |
All |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
PhysicalDisk.PowerOnTime(device)
Total operating hours.
Data Type |
Unsigned Integer |
Platforms |
All |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
PhysicalDisk.SerialNumber(device)
Serial number.
Data Type |
String |
Platforms |
All |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
PhysicalDisk.SmartAttr(device, attribute)
Read a specific S.M.A.R.T. attribute from a physical disk.
Data Type |
String |
Platforms |
All |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
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:
-
Attempt the provided attribute name as a full path to a JSON element.
-
If not found, search inside
ata_smart_attributes/tablefor an object with a matching name or numeric attribute ID; if found, return thevalueelement. -
If not found, search inside
nvme_smart_health_information_logfor an element with the given name; if found, return its value.
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 |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
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 |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
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 |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
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 |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
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 |
| Argument | Type | Description |
|---|---|---|
device |
String |
Physical disk name (e.g., |
| Value | Description |
|---|---|
|
Health test passed |
|
Health test failed |