node-exporter-textfile-collector-scripts
node-exporter-textfile-collector-scripts copied to clipboard
Add NVME support to smartmon.py
TBDC: NVME-Metrics are more like nvme_metrics.sh like than smartmon.py.
closes #110
The smartmon.py script has recently undergone non-trivial refactoring to use the official Prometheus client_python library, and this PR would need to be updated accordingly.
I still feel that the best place to implement NVMe metrics collection is in the nvme_metrics collector. Yes, smartctl now supports NVMe also. However, nvme-cli is the de facto tool for managing / querying NVMe devices, and goes a lot further than smartctl, since it also supports NVMeoF devices and vendor extensions which likely won't land in smartctl anytime soon (or ever).
If we implement NVMe metrics in two completely different collectors, this is going to be confusing for users. I expect that many setups will run both collectors anyway, which would essentially result in duplicated metrics if the smartmon collector also gathered NVMe metrics. I think it's best to leave smartctl to do what it is best at - handling ATA / SCSI / SAS drives and hardware RAID controllers.
The only way I would condone adding NVMe metrics to the smartmon collector would be if it were behind a CLI switch, and disabled by default.
@SuperQ WDYT?
If we implement NVMe metrics in two completely different collectors, this is going to be confusing for users.
We can provide more than one way to do things in this repo.
The only way I would condone adding NVMe metrics to the smartmon collector would be if it were behind a CLI switch, and disabled by default.
This is probably a good idea.
Closing due to inactivity and unresolved merge conflicts.