collector: add nvmesubsystem collector for NVMe-oF path health - #3579
Merged
Conversation
sradco
force-pushed
the
add_collector_multipath
branch
from
March 11, 2026 19:18
742c1b1 to
a0a146e
Compare
Contributor
Author
|
Hi @SuperQ , I created this PR for a new multipath collector. |
sradco
force-pushed
the
add_collector_multipath
branch
from
March 12, 2026 08:55
a0a146e to
1fa2099
Compare
sradco
force-pushed
the
add_collector_multipath
branch
from
March 12, 2026 09:13
1fa2099 to
635b613
Compare
3 tasks
jsafrane
reviewed
Mar 13, 2026
There was a problem hiding this comment.
The code looks good to me. I tested it with 2 NVMe over TCP devices, I got:
node_nvmesubsystem_info{iopolicy="numa",model="Linux",nqn="tempdisk",serial="bab529a0f32e397e1319",subsystem="nvme-subsys0"} 1
node_nvmesubsystem_path_state{controller="nvme0",state="connecting",subsystem="nvme-subsys0",transport="tcp"} 0
node_nvmesubsystem_path_state{controller="nvme0",state="dead",subsystem="nvme-subsys0",transport="tcp"} 0
node_nvmesubsystem_path_state{controller="nvme0",state="live",subsystem="nvme-subsys0",transport="tcp"} 1
node_nvmesubsystem_path_state{controller="nvme0",state="resetting",subsystem="nvme-subsys0",transport="tcp"} 0
node_nvmesubsystem_path_state{controller="nvme0",state="unknown",subsystem="nvme-subsys0",transport="tcp"} 0
node_nvmesubsystem_path_state{controller="nvme1",state="connecting",subsystem="nvme-subsys0",transport="tcp"} 0
node_nvmesubsystem_path_state{controller="nvme1",state="dead",subsystem="nvme-subsys0",transport="tcp"} 0
node_nvmesubsystem_path_state{controller="nvme1",state="live",subsystem="nvme-subsys0",transport="tcp"} 1
node_nvmesubsystem_path_state{controller="nvme1",state="resetting",subsystem="nvme-subsys0",transport="tcp"} 0
node_nvmesubsystem_path_state{controller="nvme1",state="unknown",subsystem="nvme-subsys0",transport="tcp"} 0
node_nvmesubsystem_paths_live{subsystem="nvme-subsys0"} 2
node_nvmesubsystem_paths_total{subsystem="nvme-subsys0"} 2
Which looks reasonable.
sradco
force-pushed
the
add_collector_multipath
branch
3 times, most recently
from
March 16, 2026 10:15
51fb644 to
8acec17
Compare
3 tasks
sradco
force-pushed
the
add_collector_multipath
branch
2 times, most recently
from
March 16, 2026 17:33
17875ea to
d7d2b27
Compare
sradco
force-pushed
the
add_collector_multipath
branch
from
March 17, 2026 08:42
d7d2b27 to
1a4cac6
Compare
Contributor
Author
|
PR is failing since its based on prometheus/procfs#797, which is still not merged |
sradco
force-pushed
the
add_collector_multipath
branch
from
March 23, 2026 13:23
04fd251 to
705c86e
Compare
sradco
force-pushed
the
add_collector_multipath
branch
from
May 3, 2026 18:47
705c86e to
831958f
Compare
sradco
force-pushed
the
add_collector_multipath
branch
from
May 4, 2026 08:41
831958f to
b614bb3
Compare
sradco
force-pushed
the
add_collector_multipath
branch
from
June 29, 2026 09:20
b614bb3 to
29a9f17
Compare
Contributor
Author
|
Hi @SuperQ , Please review this PR, Thank you in advance. |
sradco
force-pushed
the
add_collector_multipath
branch
4 times, most recently
from
July 2, 2026 08:57
1177a63 to
6bb221b
Compare
jan--f
requested changes
Jul 2, 2026
sradco
force-pushed
the
add_collector_multipath
branch
from
July 2, 2026 12:12
6bb221b to
c7c93c6
Compare
SuperQ
reviewed
Jul 6, 2026
sradco
force-pushed
the
add_collector_multipath
branch
from
July 6, 2026 11:53
1d29047 to
26c3987
Compare
sradco
force-pushed
the
add_collector_multipath
branch
from
July 6, 2026 12:33
26c3987 to
ebf4bd2
Compare
Contributor
Author
sradco
force-pushed
the
add_collector_multipath
branch
from
July 6, 2026 12:47
ebf4bd2 to
97c3ee9
Compare
Contributor
Author
|
Rebased |
sradco
force-pushed
the
add_collector_multipath
branch
2 times, most recently
from
July 6, 2026 13:48
e0b6d5a to
30d6ff4
Compare
jan--f
approved these changes
Jul 6, 2026
Add a new opt-in collector that exposes NVMe-oF subsystem path health via sysfs: - node_nvmesubsystem_info (subsystem metadata) - node_nvmesubsystem_namespace_info - node_nvmesubsystem_path_state (per-state gauge) - node_nvmesubsystem_paths (total controller count) - node_nvmesubsystem_paths_live (live controllers) Controller states are normalised through a single map so adding a new kernel state requires one edit. Signed-off-by: Shirly Radco <sradco@redhat.com> Co-authored-by: AI Assistant <noreply@cursor.com>
sradco
force-pushed
the
add_collector_multipath
branch
from
July 6, 2026 14:28
30d6ff4 to
bba83bf
Compare
5 tasks
sradco
added a commit
to sradco/kubernetes-csi-addons
that referenced
this pull request
Jul 8, 2026
Propose a new component that maps CSI volumes to their underlying node block devices, exposing the mapping as Prometheus metrics. This enables correlating storage path health (multipath, NVMe-oF) with impacted Kubernetes workloads via PromQL joins. The exporter is a standalone DaemonSet — it does not introduce new gRPC RPCs or CRDs. It reads kubelet metadata and host sysfs. Related upstream work: - prometheus/node_exporter#3581 (dmmultipath collector, merged) - prometheus/node_exporter#3579 (nvmesubsystem collector, merged) - openshift-virtualization/csi-volume-device-exporter#1 (reference impl) Signed-off-by: Shirly Radco <sradco@redhat.com> Co-authored-by: Cursor <cursoragent@cursor.com>
sradco
added a commit
to sradco/kubernetes-csi-addons
that referenced
this pull request
Jul 8, 2026
Propose a new component that maps CSI volumes to their underlying node block devices, exposing the mapping as Prometheus metrics. This enables correlating storage path health (multipath, NVMe-oF) with impacted Kubernetes workloads via PromQL joins. The exporter is a standalone DaemonSet — it does not introduce new gRPC RPCs or CRDs. It reads kubelet metadata and host sysfs. Related upstream work: - prometheus/node_exporter#3581 (dmmultipath collector, merged) - prometheus/node_exporter#3579 (nvmesubsystem collector, merged) - openshift-virtualization/csi-volume-device-exporter#1 (reference impl) Signed-off-by: Shirly Radco <sradco@redhat.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Merged
SuperQ
added a commit
that referenced
this pull request
Jul 10, 2026
* [FEATURE] mountstats: Add NFS mountpoint info metric #3554 * [FEATURE] nvmesubsystem: Add new collector #3579 * [FEATURE] dmmultipath: Add new collector #3581 * [FEATURE] infiniband: Add device filtering option #3694 * [ENHANCEMENT] hwmon: disambiguate colliding chip labels #3646 * [ENHANCEMENT] cpufreq: Add support for cpuinfo_avg_freq #3712 * [ENHANCEMENT] filesystem: Support ext4 super block emergency_ro flag #3717 * [ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels #3720 * [BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values #3617 * [BUGFIX] thermal_zone: Handle EINVAL errors gracefully #3657 * [BUGFIX] filesystem: Add comma separator in mount options #3659 * [BUGFIX] diskstats: Fix rotational queue stats scrape regression #3686 * [BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names #3687 Signed-off-by: Ben Kochie <superq@gmail.com>
ajgon
pushed a commit
to deedee-ops/home-ops
that referenced
this pull request
Jul 11, 2026
….1 ➔ v1.12.0) (#297) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [quay.io/prometheus/node-exporter](https://github.com/prometheus/node_exporter) | minor | `v1.11.1` → `v1.12.0` | --- ### Release Notes <details> <summary>prometheus/node_exporter (quay.io/prometheus/node-exporter)</summary> ### [`v1.12.0`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.0): 1.12.0 / 2026-07-10 [Compare Source](prometheus/node_exporter@v1.11.1...v1.12.0) - \[FEATURE] mountstats: Add NFS mountpoint info metric [#​3554](prometheus/node_exporter#3554) - \[FEATURE] nvmesubsystem: Add new collector [#​3579](prometheus/node_exporter#3579) - \[FEATURE] dmmultipath: Add new collector [#​3581](prometheus/node_exporter#3581) - \[FEATURE] infiniband: Add device filtering option [#​3694](prometheus/node_exporter#3694) - \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#​3646](prometheus/node_exporter#3646) - \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#​3712](prometheus/node_exporter#3712) - \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#​3717](prometheus/node_exporter#3717) - \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#​3720](prometheus/node_exporter#3720) - \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#​3617](prometheus/node_exporter#3617) - \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#​3657](prometheus/node_exporter#3657) - \[BUGFIX] filesystem: Add comma separator in mount options [#​3659](prometheus/node_exporter#3659) - \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#​3686](prometheus/node_exporter#3686) - \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#​3687](prometheus/node_exporter#3687) </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Warsaw) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTcuNCIsInVwZGF0ZWRJblZlciI6IjQzLjI1Ny40IiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=--> Reviewed-on: https://git.ajgon.casa/deedee/mark13/pulls/297
eleboucher
pushed a commit
to eleboucher/homelab
that referenced
this pull request
Jul 12, 2026
….1 ➔ v1.12.0) (#1526) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [quay.io/prometheus/node-exporter](https://github.com/prometheus/node_exporter) | minor | `v1.11.1` → `v1.12.0` | --- ### Release Notes <details> <summary>prometheus/node_exporter (quay.io/prometheus/node-exporter)</summary> ### [`v1.12.0`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.0): 1.12.0 / 2026-07-10 [Compare Source](prometheus/node_exporter@v1.11.1...v1.12.0) - \[FEATURE] mountstats: Add NFS mountpoint info metric [#​3554](prometheus/node_exporter#3554) - \[FEATURE] nvmesubsystem: Add new collector [#​3579](prometheus/node_exporter#3579) - \[FEATURE] dmmultipath: Add new collector [#​3581](prometheus/node_exporter#3581) - \[FEATURE] infiniband: Add device filtering option [#​3694](prometheus/node_exporter#3694) - \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#​3646](prometheus/node_exporter#3646) - \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#​3712](prometheus/node_exporter#3712) - \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#​3717](prometheus/node_exporter#3717) - \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#​3720](prometheus/node_exporter#3720) - \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#​3617](prometheus/node_exporter#3617) - \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#​3657](prometheus/node_exporter#3657) - \[BUGFIX] filesystem: Add comma separator in mount options [#​3659](prometheus/node_exporter#3659) - \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#​3686](prometheus/node_exporter#3686) - \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#​3687](prometheus/node_exporter#3687) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMDEuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEwMS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19--> Reviewed-on: https://git.erwanleboucher.dev/eleboucher/homelab/pulls/1526
dadezzz
pushed a commit
to dadezzz/infra_docker-compose
that referenced
this pull request
Jul 12, 2026
….12.0 (#511) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [quay.io/prometheus/node-exporter](https://github.com/prometheus/node_exporter) | minor | `v1.11.1` → `v1.12.0` | --- ### Release Notes <details> <summary>prometheus/node_exporter (quay.io/prometheus/node-exporter)</summary> ### [`v1.12.0`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.0): 1.12.0 / 2026-07-10 [Compare Source](prometheus/node_exporter@v1.11.1...v1.12.0) - \[FEATURE] mountstats: Add NFS mountpoint info metric [#​3554](prometheus/node_exporter#3554) - \[FEATURE] nvmesubsystem: Add new collector [#​3579](prometheus/node_exporter#3579) - \[FEATURE] dmmultipath: Add new collector [#​3581](prometheus/node_exporter#3581) - \[FEATURE] infiniband: Add device filtering option [#​3694](prometheus/node_exporter#3694) - \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#​3646](prometheus/node_exporter#3646) - \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#​3712](prometheus/node_exporter#3712) - \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#​3717](prometheus/node_exporter#3717) - \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#​3720](prometheus/node_exporter#3720) - \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#​3617](prometheus/node_exporter#3617) - \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#​3657](prometheus/node_exporter#3657) - \[BUGFIX] filesystem: Add comma separator in mount options [#​3659](prometheus/node_exporter#3659) - \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#​3686](prometheus/node_exporter#3686) - \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#​3687](prometheus/node_exporter#3687) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTIuMSIsInVwZGF0ZWRJblZlciI6IjQzLjI1Mi4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
doonga
pushed a commit
to greyrock-labs/home-ops
that referenced
this pull request
Jul 13, 2026
….1 ➔ v1.12.0) (#47) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [quay.io/prometheus/node-exporter](https://github.com/prometheus/node_exporter) | minor | `v1.11.1` → `v1.12.0` | --- ### Release Notes <details> <summary>prometheus/node_exporter (quay.io/prometheus/node-exporter)</summary> ### [`v1.12.0`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.0): 1.12.0 / 2026-07-10 [Compare Source](prometheus/node_exporter@v1.11.1...v1.12.0) - \[FEATURE] mountstats: Add NFS mountpoint info metric [#​3554](prometheus/node_exporter#3554) - \[FEATURE] nvmesubsystem: Add new collector [#​3579](prometheus/node_exporter#3579) - \[FEATURE] dmmultipath: Add new collector [#​3581](prometheus/node_exporter#3581) - \[FEATURE] infiniband: Add device filtering option [#​3694](prometheus/node_exporter#3694) - \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#​3646](prometheus/node_exporter#3646) - \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#​3712](prometheus/node_exporter#3712) - \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#​3717](prometheus/node_exporter#3717) - \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#​3720](prometheus/node_exporter#3720) - \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#​3617](prometheus/node_exporter#3617) - \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#​3657](prometheus/node_exporter#3657) - \[BUGFIX] filesystem: Add comma separator in mount options [#​3659](prometheus/node_exporter#3659) - \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#​3686](prometheus/node_exporter#3686) - \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#​3687](prometheus/node_exporter#3687) </details> --- ### Configuration 📅 **Schedule**: (in timezone America/New_York) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNjAuMiIsInVwZGF0ZWRJblZlciI6IjQzLjI2MC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19--> Reviewed-on: https://git.greyrock.io/greyrock-labs/home-ops/pulls/47
ajgon
pushed a commit
to deedee-ops/home-ops
that referenced
this pull request
Jul 13, 2026
….1 ➔ v1.12.0) (#297) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [quay.io/prometheus/node-exporter](https://github.com/prometheus/node_exporter) | minor | `v1.11.1` → `v1.12.0` | --- ### Release Notes <details> <summary>prometheus/node_exporter (quay.io/prometheus/node-exporter)</summary> ### [`v1.12.0`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.0): 1.12.0 / 2026-07-10 [Compare Source](prometheus/node_exporter@v1.11.1...v1.12.0) - \[FEATURE] mountstats: Add NFS mountpoint info metric [#​3554](prometheus/node_exporter#3554) - \[FEATURE] nvmesubsystem: Add new collector [#​3579](prometheus/node_exporter#3579) - \[FEATURE] dmmultipath: Add new collector [#​3581](prometheus/node_exporter#3581) - \[FEATURE] infiniband: Add device filtering option [#​3694](prometheus/node_exporter#3694) - \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#​3646](prometheus/node_exporter#3646) - \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#​3712](prometheus/node_exporter#3712) - \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#​3717](prometheus/node_exporter#3717) - \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#​3720](prometheus/node_exporter#3720) - \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#​3617](prometheus/node_exporter#3617) - \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#​3657](prometheus/node_exporter#3657) - \[BUGFIX] filesystem: Add comma separator in mount options [#​3659](prometheus/node_exporter#3659) - \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#​3686](prometheus/node_exporter#3686) - \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#​3687](prometheus/node_exporter#3687) </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Warsaw) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTcuNCIsInVwZGF0ZWRJblZlciI6IjQzLjI1Ny40IiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=--> Reviewed-on: https://git.ajgon.casa/deedee/mark13/pulls/297
renovate Bot
added a commit
to sdwilsh/sOS
that referenced
this pull request
Jul 17, 2026
….12.1 ##### [\`v1.12.1\`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.1) - \[BUGFIX] perf: Fix perf profiler flag handling [#3731](prometheus/node_exporter#3731) - \[BUGFIX] edac: Fix optional csrow ue\_count collection [#3734](prometheus/node_exporter#3734) --- ##### [\`v1.12.0\`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.0) - \[FEATURE] mountstats: Add NFS mountpoint info metric [#3554](prometheus/node_exporter#3554) - \[FEATURE] nvmesubsystem: Add new collector [#3579](prometheus/node_exporter#3579) - \[FEATURE] dmmultipath: Add new collector [#3581](prometheus/node_exporter#3581) - \[FEATURE] infiniband: Add device filtering option [#3694](prometheus/node_exporter#3694) - \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#3646](prometheus/node_exporter#3646) - \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#3712](prometheus/node_exporter#3712) - \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#3717](prometheus/node_exporter#3717) - \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#3720](prometheus/node_exporter#3720) - \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#3617](prometheus/node_exporter#3617) - \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#3657](prometheus/node_exporter#3657) - \[BUGFIX] filesystem: Add comma separator in mount options [#3659](prometheus/node_exporter#3659) - \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#3686](prometheus/node_exporter#3686) - \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#3687](prometheus/node_exporter#3687) --- ##### [\`v1.11.1\`](https://github.com/prometheus/node_exporter/releases/tag/v1.11.1) - \[BUGFIX] Fix kernel\_hung for no data [#3613](prometheus/node_exporter#3613) --- ##### [\`v1.11.0\`](https://github.com/prometheus/node_exporter/releases/tag/v1.11.0) - \[CHANGE] Adds distroless container image. [#3592](prometheus/node_exporter#3592) - \[FEATURE] infiniband: Add `hw_counters` metrics [#2827](prometheus/node_exporter#2827) - \[FEATURE] kernel\_hung: Add collector for kernel hung tasks [#3470](prometheus/node_exporter#3470) - \[FEATURE] mixin: Add "All" option to cluster variable in dashboards [#3509](prometheus/node_exporter#3509) - \[FEATURE] netlink: Add node\_network\_altnames\_info metric [#3541](prometheus/node_exporter#3541) - \[FEATURE] thermal: Add support for CPU temperature metrics on Apple Silicon [#3547](prometheus/node_exporter#3547) - \[FEATURE] bcachefs: Add new collector for bcachefs [#3523](prometheus/node_exporter#3523) - \[ENHANCEMENT] mixin: Make devices in network graphs configurable [#3525](prometheus/node_exporter#3525) - \[ENHANCEMENT] nvme: Add namespace parameters [#3360](prometheus/node_exporter#3360) - \[BUGFIX] netdev: Respect deviceFilter for `node_network_address_info` metric [#3340](prometheus/node_exporter#3340) - \[BUGFIX] mountstats: Fix multiple transports statistics labeling [#3358](prometheus/node_exporter#3358) - \[BUGFIX] diskstats: Fix panic when using device-include flag only [#3603](prometheus/node_exporter#3603)
ajgon
pushed a commit
to deedee-ops/home-ops
that referenced
this pull request
Jul 20, 2026
….1 ➔ v1.12.0) (#297) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [quay.io/prometheus/node-exporter](https://github.com/prometheus/node_exporter) | minor | `v1.11.1` → `v1.12.0` | --- ### Release Notes <details> <summary>prometheus/node_exporter (quay.io/prometheus/node-exporter)</summary> ### [`v1.12.0`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.0): 1.12.0 / 2026-07-10 [Compare Source](prometheus/node_exporter@v1.11.1...v1.12.0) - \[FEATURE] mountstats: Add NFS mountpoint info metric [#​3554](prometheus/node_exporter#3554) - \[FEATURE] nvmesubsystem: Add new collector [#​3579](prometheus/node_exporter#3579) - \[FEATURE] dmmultipath: Add new collector [#​3581](prometheus/node_exporter#3581) - \[FEATURE] infiniband: Add device filtering option [#​3694](prometheus/node_exporter#3694) - \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#​3646](prometheus/node_exporter#3646) - \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#​3712](prometheus/node_exporter#3712) - \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#​3717](prometheus/node_exporter#3717) - \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#​3720](prometheus/node_exporter#3720) - \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#​3617](prometheus/node_exporter#3617) - \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#​3657](prometheus/node_exporter#3657) - \[BUGFIX] filesystem: Add comma separator in mount options [#​3659](prometheus/node_exporter#3659) - \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#​3686](prometheus/node_exporter#3686) - \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#​3687](prometheus/node_exporter#3687) </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Warsaw) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTcuNCIsInVwZGF0ZWRJblZlciI6IjQzLjI1Ny40IiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=--> Reviewed-on: https://git.ajgon.casa/deedee/mark13/pulls/297
renovate Bot
added a commit
to sdwilsh/sOS
that referenced
this pull request
Jul 24, 2026
….12.1 ##### [\`v1.12.1\`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.1) - \[BUGFIX] perf: Fix perf profiler flag handling [#3731](prometheus/node_exporter#3731) - \[BUGFIX] edac: Fix optional csrow ue\_count collection [#3734](prometheus/node_exporter#3734) --- ##### [\`v1.12.0\`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.0) - \[FEATURE] mountstats: Add NFS mountpoint info metric [#3554](prometheus/node_exporter#3554) - \[FEATURE] nvmesubsystem: Add new collector [#3579](prometheus/node_exporter#3579) - \[FEATURE] dmmultipath: Add new collector [#3581](prometheus/node_exporter#3581) - \[FEATURE] infiniband: Add device filtering option [#3694](prometheus/node_exporter#3694) - \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#3646](prometheus/node_exporter#3646) - \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#3712](prometheus/node_exporter#3712) - \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#3717](prometheus/node_exporter#3717) - \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#3720](prometheus/node_exporter#3720) - \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#3617](prometheus/node_exporter#3617) - \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#3657](prometheus/node_exporter#3657) - \[BUGFIX] filesystem: Add comma separator in mount options [#3659](prometheus/node_exporter#3659) - \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#3686](prometheus/node_exporter#3686) - \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#3687](prometheus/node_exporter#3687) --- ##### [\`v1.11.1\`](https://github.com/prometheus/node_exporter/releases/tag/v1.11.1) - \[BUGFIX] Fix kernel\_hung for no data [#3613](prometheus/node_exporter#3613) --- ##### [\`v1.11.0\`](https://github.com/prometheus/node_exporter/releases/tag/v1.11.0) - \[CHANGE] Adds distroless container image. [#3592](prometheus/node_exporter#3592) - \[FEATURE] infiniband: Add `hw_counters` metrics [#2827](prometheus/node_exporter#2827) - \[FEATURE] kernel\_hung: Add collector for kernel hung tasks [#3470](prometheus/node_exporter#3470) - \[FEATURE] mixin: Add "All" option to cluster variable in dashboards [#3509](prometheus/node_exporter#3509) - \[FEATURE] netlink: Add node\_network\_altnames\_info metric [#3541](prometheus/node_exporter#3541) - \[FEATURE] thermal: Add support for CPU temperature metrics on Apple Silicon [#3547](prometheus/node_exporter#3547) - \[FEATURE] bcachefs: Add new collector for bcachefs [#3523](prometheus/node_exporter#3523) - \[ENHANCEMENT] mixin: Make devices in network graphs configurable [#3525](prometheus/node_exporter#3525) - \[ENHANCEMENT] nvme: Add namespace parameters [#3360](prometheus/node_exporter#3360) - \[BUGFIX] netdev: Respect deviceFilter for `node_network_address_info` metric [#3340](prometheus/node_exporter#3340) - \[BUGFIX] mountstats: Fix multiple transports statistics labeling [#3358](prometheus/node_exporter#3358) - \[BUGFIX] diskstats: Fix panic when using device-include flag only [#3603](prometheus/node_exporter#3603)
ajgon
pushed a commit
to deedee-ops/home-ops
that referenced
this pull request
Jul 28, 2026
….1 ➔ v1.12.0) (#297) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [quay.io/prometheus/node-exporter](https://github.com/prometheus/node_exporter) | minor | `v1.11.1` → `v1.12.0` | --- ### Release Notes <details> <summary>prometheus/node_exporter (quay.io/prometheus/node-exporter)</summary> ### [`v1.12.0`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.0): 1.12.0 / 2026-07-10 [Compare Source](prometheus/node_exporter@v1.11.1...v1.12.0) - \[FEATURE] mountstats: Add NFS mountpoint info metric [#​3554](prometheus/node_exporter#3554) - \[FEATURE] nvmesubsystem: Add new collector [#​3579](prometheus/node_exporter#3579) - \[FEATURE] dmmultipath: Add new collector [#​3581](prometheus/node_exporter#3581) - \[FEATURE] infiniband: Add device filtering option [#​3694](prometheus/node_exporter#3694) - \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#​3646](prometheus/node_exporter#3646) - \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#​3712](prometheus/node_exporter#3712) - \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#​3717](prometheus/node_exporter#3717) - \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#​3720](prometheus/node_exporter#3720) - \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#​3617](prometheus/node_exporter#3617) - \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#​3657](prometheus/node_exporter#3657) - \[BUGFIX] filesystem: Add comma separator in mount options [#​3659](prometheus/node_exporter#3659) - \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#​3686](prometheus/node_exporter#3686) - \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#​3687](prometheus/node_exporter#3687) </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Warsaw) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTcuNCIsInVwZGF0ZWRJblZlciI6IjQzLjI1Ny40IiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=--> Reviewed-on: https://git.ajgon.casa/deedee/mark13/pulls/297
renovate Bot
added a commit
to sdwilsh/sOS
that referenced
this pull request
Jul 31, 2026
….12.1 ##### [\`v1.12.1\`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.1) - \[BUGFIX] perf: Fix perf profiler flag handling [#3731](prometheus/node_exporter#3731) - \[BUGFIX] edac: Fix optional csrow ue\_count collection [#3734](prometheus/node_exporter#3734) --- ##### [\`v1.12.0\`](https://github.com/prometheus/node_exporter/releases/tag/v1.12.0) - \[FEATURE] mountstats: Add NFS mountpoint info metric [#3554](prometheus/node_exporter#3554) - \[FEATURE] nvmesubsystem: Add new collector [#3579](prometheus/node_exporter#3579) - \[FEATURE] dmmultipath: Add new collector [#3581](prometheus/node_exporter#3581) - \[FEATURE] infiniband: Add device filtering option [#3694](prometheus/node_exporter#3694) - \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#3646](prometheus/node_exporter#3646) - \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#3712](prometheus/node_exporter#3712) - \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#3717](prometheus/node_exporter#3717) - \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#3720](prometheus/node_exporter#3720) - \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#3617](prometheus/node_exporter#3617) - \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#3657](prometheus/node_exporter#3657) - \[BUGFIX] filesystem: Add comma separator in mount options [#3659](prometheus/node_exporter#3659) - \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#3686](prometheus/node_exporter#3686) - \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#3687](prometheus/node_exporter#3687) --- ##### [\`v1.11.1\`](https://github.com/prometheus/node_exporter/releases/tag/v1.11.1) - \[BUGFIX] Fix kernel\_hung for no data [#3613](prometheus/node_exporter#3613) --- ##### [\`v1.11.0\`](https://github.com/prometheus/node_exporter/releases/tag/v1.11.0) - \[CHANGE] Adds distroless container image. [#3592](prometheus/node_exporter#3592) - \[FEATURE] infiniband: Add `hw_counters` metrics [#2827](prometheus/node_exporter#2827) - \[FEATURE] kernel\_hung: Add collector for kernel hung tasks [#3470](prometheus/node_exporter#3470) - \[FEATURE] mixin: Add "All" option to cluster variable in dashboards [#3509](prometheus/node_exporter#3509) - \[FEATURE] netlink: Add node\_network\_altnames\_info metric [#3541](prometheus/node_exporter#3541) - \[FEATURE] thermal: Add support for CPU temperature metrics on Apple Silicon [#3547](prometheus/node_exporter#3547) - \[FEATURE] bcachefs: Add new collector for bcachefs [#3523](prometheus/node_exporter#3523) - \[ENHANCEMENT] mixin: Make devices in network graphs configurable [#3525](prometheus/node_exporter#3525) - \[ENHANCEMENT] nvme: Add namespace parameters [#3360](prometheus/node_exporter#3360) - \[BUGFIX] netdev: Respect deviceFilter for `node_network_address_info` metric [#3340](prometheus/node_exporter#3340) - \[BUGFIX] mountstats: Fix multiple transports statistics labeling [#3358](prometheus/node_exporter#3358) - \[BUGFIX] diskstats: Fix panic when using device-include flag only [#3603](prometheus/node_exporter#3603)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add a new disabled-by-default
nvmesubsystemcollector that reads/sys/class/nvme-subsystem/to expose NVMe over Fabrics subsystempath health metrics.
Exposed metrics
The
namespace_infometric enables precise correlation between NVMeblock devices (e.g.
nvme0n1) and their parent subsystems, which isneeded for workload-aware storage path health alerting in Kubernetes
environments.
Enable
No special permissions required — reads only world-readable sysfs attributes.
Dependencies
build(deps): bump prometheus/procfs to v0.21.1)Test plan
testutil.GatherAndComparefor all metricsnormalizeControllerState)