node-exporter-textfile-collector-scripts icon indicating copy to clipboard operation
node-exporter-textfile-collector-scripts copied to clipboard

Add NVME support to smartmon.py

Open psi-4ward opened this issue 3 years ago • 2 comments

TBDC: NVME-Metrics are more like nvme_metrics.sh like than smartmon.py.

closes #110

psi-4ward avatar Feb 11 '22 16:02 psi-4ward

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?

dswarbrick avatar May 23 '23 16:05 dswarbrick

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.

SuperQ avatar May 23 '23 17:05 SuperQ

Closing due to inactivity and unresolved merge conflicts.

dswarbrick avatar May 08 '24 20:05 dswarbrick