This is a Python reimplementation of the existing nvme_metrics.sh script. It features several new metrics:
nvme_device_info (model, firmware, serial number)
nvme_physical_size_bytes
nvme_used_bytes
nvme_sector_size_bytes
nvme_unsafe_shutdowns_total
It retains backwards compatibility with the metric names of nvme_metrics.sh with one exception:
The original nvme_critical_warning_total metric is incorrect, because the source is not a counter. The NVMe critical warning field, defined in section 5.16.1.3 of the NVMe Base Specification 2.0c, is a bitmap, and thus should be a gauge in Prometheus. As such, the metric is renamed to simply nvme_critical_warning.
It is my intention that this script should (eventually) supersede and replace the existing nvme_metrics.sh script.
This is a Python reimplementation of the existing nvme_metrics.sh script. It features several new metrics:
It retains backwards compatibility with the metric names of nvme_metrics.sh with one exception: The original nvme_critical_warning_total metric is incorrect, because the source is not a counter. The NVMe critical warning field, defined in section 5.16.1.3 of the NVMe Base Specification 2.0c, is a bitmap, and thus should be a gauge in Prometheus. As such, the metric is renamed to simply nvme_critical_warning.
It is my intention that this script should (eventually) supersede and replace the existing
nvme_metrics.sh
script.