Files
e233d663c3 refactor(agent): simplify SMART collection with per-device smartctl attempts (#2620)
Rebuild the SMART device list on every refresh instead of keeping
per-device type and parser state across rescans. Each device gets a
short ordered list of smartctl queries, and the three parsers are merged
into one that rejects output without health data so the next query runs.

- scsi devices try auto-detect, then -d sat (#2295)
- NVMe controllers fall back to their n1 namespace
- disks in standby reuse their last reading; a disk not yet collected
  is woken once per agent run
- the last good reading survives temporary read failures
- failed or empty rescans keep the previous device list
- a missing SMART status is UNKNOWN instead of FAILED
- the reported disk type is the type that worked (e.g. sat)
- disks seen through two paths are reported once

---------

Co-authored-by: hank <hank@henrygd.me>
2026-10-19 10:57:25 -04:00

21 lines
530 B
JSON

{
"smartctl": {
"exit_status": 0
},
"device": {
"name": "/dev/sda",
"info_name": "/dev/sda",
"type": "scsi",
"protocol": "SCSI"
},
"scsi_vendor": "TOSHIBA",
"scsi_product": "MG03ACA200",
"scsi_model_name": "TOSHIBA MG03ACA200",
"scsi_revision": "5701",
"serial_number": "Z4K2A01FS",
"user_capacity": { "blocks": 5860533168, "bytes": 3000592982016 },
"smart_status": { "passed": null },
"temperature": { "current": 0, "drive_trip": 0 },
"power_on_time": { "hours": 0, "minutes": 0 }
}