Skip to content

filesystem: prevent panic on mount points with non-UTF-8 names - #3687

Merged
SuperQ merged 2 commits into
prometheus:masterfrom
bejaratommy:fix-filesystem-nonutf8-panic
Jul 10, 2026
Merged

filesystem: prevent panic on mount points with non-UTF-8 names#3687
SuperQ merged 2 commits into
prometheus:masterfrom
bejaratommy:fix-filesystem-nonutf8-panic

Conversation

@ricardbejarano

Copy link
Copy Markdown
Contributor

Summary

On Linux, mount paths are byte strings and are usually — but not always — valid UTF-8. When a filesystem is mounted on a path containing non-UTF-8 bytes, the filesystem collector passes that value straight to prometheus.MustNewConstMetric as a label value, which panics (Prometheus label values must be valid UTF-8). This crashes the whole scrape:

panic: label value "/mnt/cass\xe9" is not valid UTF-8
github.com/prometheus/client_golang/prometheus.MustNewConstMetric(...)
github.com/prometheus/node_exporter/collector.(*filesystemCollector).Update(...)

Fix

Sanitize the device, mountPoint and fsType labels with strings.ToValidUTF8(..., "�") in parseFilesystemLabels. This mirrors the approach already used elsewhere in the tree (hwmon, dmi, netclass, powersupply collectors and collector/utils), so invalid bytes are replaced with the Unicode replacement character instead of taking the exporter down.

A unit test covering non-UTF-8 device/mountPoint/fsType input is included.

Fixes #3662

Reproduce

fallocate -l 32m /root/disk.dd
mkfs -t ext2 /root/disk.dd
mount --mkdir /root/disk.dd /mnt/cass$'\xe9'
./node_exporter &
curl http://localhost:9100/metrics

On Linux, mount paths are byte strings and may contain non-UTF-8
sequences. Those values were passed straight through to
prometheus.MustNewConstMetric as label values, which panics because
Prometheus label values must be valid UTF-8, taking down the whole
scrape.

Sanitize the device, mountPoint and fsType labels with
strings.ToValidUTF8 when parsing /proc mounts, matching the approach
already used by the hwmon, dmi, netclass and powersupply collectors.

Signed-off-by: bejaratommy <tommy@bejara.net>
Signed-off-by: bejaratommy <tommy@bejara.net>

@rtreffer rtreffer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was able to reproduce on an older node_exporter for mount point and device by doing a loopback mount of a ext4 disk image. Both the image and mount point had non-utf8 names.

panic: label value "/media/cass\xe9" is not valid UTF-8

goroutine 89 [running]:
github.com/prometheus/client_golang/prometheus.MustNewConstMetric(...)
        github.com/prometheus/client_golang/prometheus/value.go:129
github.com/prometheus/node_exporter/collector.(*filesystemCollector).Update(0xc000246c40, 0xc0002956c0)
        github.com/prometheus/node_exporter/collector/filesystem_common.go:198 +0xb49
github.com/prometheus/node_exporter/collector.execute({0xcddee3, 0xa}, {0xe15280, 0xc000246c40}, 0xc0002956c0, 0xc0000491f0)
        github.com/prometheus/node_exporter/collector/collector.go:160 +0x85
github.com/prometheus/node_exporter/collector.NodeCollector.Collect.func1({0xcddee3?, 0x0?}, {0xe15280?, 0xc000246c40?})
        github.com/prometheus/node_exporter/collector/collector.go:151 +0x33
created by github.com/prometheus/node_exporter/collector.NodeCollector.Collect in goroutine 44
        github.com/prometheus/node_exporter/collector/collector.go:150 +0xce

This change aligns labels with the output of mount

/media/cass�/out.img on /media/cass� type ext2 (rw,relatime)

listmount indicates that all values can be byte strings.
I doubt that this is relevant for fsType but it does not harm to normalize all values.

@rtreffer

Copy link
Copy Markdown
Contributor

Same as #3675

@rtreffer

Copy link
Copy Markdown
Contributor

I was wrong about mount, the sanitizing is done by the terminal

$ mount |hexdump -C|grep cass
00002170  2f 6d 65 64 69 61 2f 63  61 73 73 e9 20 74 79 70  |/media/cass. typ|

@SuperQ SuperQ left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks

@SuperQ
SuperQ merged commit 868318a into prometheus:master Jul 10, 2026
17 checks passed
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 [#&#8203;3554](prometheus/node_exporter#3554)
- \[FEATURE] nvmesubsystem: Add new collector [#&#8203;3579](prometheus/node_exporter#3579)
- \[FEATURE] dmmultipath: Add new collector [#&#8203;3581](prometheus/node_exporter#3581)
- \[FEATURE] infiniband: Add device filtering option [#&#8203;3694](prometheus/node_exporter#3694)
- \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#&#8203;3646](prometheus/node_exporter#3646)
- \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#&#8203;3712](prometheus/node_exporter#3712)
- \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#&#8203;3717](prometheus/node_exporter#3717)
- \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#&#8203;3720](prometheus/node_exporter#3720)
- \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#&#8203;3617](prometheus/node_exporter#3617)
- \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#&#8203;3657](prometheus/node_exporter#3657)
- \[BUGFIX] filesystem: Add comma separator in mount options [#&#8203;3659](prometheus/node_exporter#3659)
- \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#&#8203;3686](prometheus/node_exporter#3686)
- \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#&#8203;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 [#&#8203;3554](prometheus/node_exporter#3554)
- \[FEATURE] nvmesubsystem: Add new collector [#&#8203;3579](prometheus/node_exporter#3579)
- \[FEATURE] dmmultipath: Add new collector [#&#8203;3581](prometheus/node_exporter#3581)
- \[FEATURE] infiniband: Add device filtering option [#&#8203;3694](prometheus/node_exporter#3694)
- \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#&#8203;3646](prometheus/node_exporter#3646)
- \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#&#8203;3712](prometheus/node_exporter#3712)
- \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#&#8203;3717](prometheus/node_exporter#3717)
- \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#&#8203;3720](prometheus/node_exporter#3720)
- \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#&#8203;3617](prometheus/node_exporter#3617)
- \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#&#8203;3657](prometheus/node_exporter#3657)
- \[BUGFIX] filesystem: Add comma separator in mount options [#&#8203;3659](prometheus/node_exporter#3659)
- \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#&#8203;3686](prometheus/node_exporter#3686)
- \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#&#8203;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 [#&#8203;3554](prometheus/node_exporter#3554)
- \[FEATURE] nvmesubsystem: Add new collector [#&#8203;3579](prometheus/node_exporter#3579)
- \[FEATURE] dmmultipath: Add new collector [#&#8203;3581](prometheus/node_exporter#3581)
- \[FEATURE] infiniband: Add device filtering option [#&#8203;3694](prometheus/node_exporter#3694)
- \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#&#8203;3646](prometheus/node_exporter#3646)
- \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#&#8203;3712](prometheus/node_exporter#3712)
- \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#&#8203;3717](prometheus/node_exporter#3717)
- \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#&#8203;3720](prometheus/node_exporter#3720)
- \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#&#8203;3617](prometheus/node_exporter#3617)
- \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#&#8203;3657](prometheus/node_exporter#3657)
- \[BUGFIX] filesystem: Add comma separator in mount options [#&#8203;3659](prometheus/node_exporter#3659)
- \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#&#8203;3686](prometheus/node_exporter#3686)
- \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#&#8203;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 [#&#8203;3554](prometheus/node_exporter#3554)
- \[FEATURE] nvmesubsystem: Add new collector [#&#8203;3579](prometheus/node_exporter#3579)
- \[FEATURE] dmmultipath: Add new collector [#&#8203;3581](prometheus/node_exporter#3581)
- \[FEATURE] infiniband: Add device filtering option [#&#8203;3694](prometheus/node_exporter#3694)
- \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#&#8203;3646](prometheus/node_exporter#3646)
- \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#&#8203;3712](prometheus/node_exporter#3712)
- \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#&#8203;3717](prometheus/node_exporter#3717)
- \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#&#8203;3720](prometheus/node_exporter#3720)
- \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#&#8203;3617](prometheus/node_exporter#3617)
- \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#&#8203;3657](prometheus/node_exporter#3657)
- \[BUGFIX] filesystem: Add comma separator in mount options [#&#8203;3659](prometheus/node_exporter#3659)
- \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#&#8203;3686](prometheus/node_exporter#3686)
- \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#&#8203;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 [#&#8203;3554](prometheus/node_exporter#3554)
- \[FEATURE] nvmesubsystem: Add new collector [#&#8203;3579](prometheus/node_exporter#3579)
- \[FEATURE] dmmultipath: Add new collector [#&#8203;3581](prometheus/node_exporter#3581)
- \[FEATURE] infiniband: Add device filtering option [#&#8203;3694](prometheus/node_exporter#3694)
- \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#&#8203;3646](prometheus/node_exporter#3646)
- \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#&#8203;3712](prometheus/node_exporter#3712)
- \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#&#8203;3717](prometheus/node_exporter#3717)
- \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#&#8203;3720](prometheus/node_exporter#3720)
- \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#&#8203;3617](prometheus/node_exporter#3617)
- \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#&#8203;3657](prometheus/node_exporter#3657)
- \[BUGFIX] filesystem: Add comma separator in mount options [#&#8203;3659](prometheus/node_exporter#3659)
- \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#&#8203;3686](prometheus/node_exporter#3686)
- \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#&#8203;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 [#&#8203;3554](prometheus/node_exporter#3554)
- \[FEATURE] nvmesubsystem: Add new collector [#&#8203;3579](prometheus/node_exporter#3579)
- \[FEATURE] dmmultipath: Add new collector [#&#8203;3581](prometheus/node_exporter#3581)
- \[FEATURE] infiniband: Add device filtering option [#&#8203;3694](prometheus/node_exporter#3694)
- \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#&#8203;3646](prometheus/node_exporter#3646)
- \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#&#8203;3712](prometheus/node_exporter#3712)
- \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#&#8203;3717](prometheus/node_exporter#3717)
- \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#&#8203;3720](prometheus/node_exporter#3720)
- \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#&#8203;3617](prometheus/node_exporter#3617)
- \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#&#8203;3657](prometheus/node_exporter#3657)
- \[BUGFIX] filesystem: Add comma separator in mount options [#&#8203;3659](prometheus/node_exporter#3659)
- \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#&#8203;3686](prometheus/node_exporter#3686)
- \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#&#8203;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 [#&#8203;3554](prometheus/node_exporter#3554)
- \[FEATURE] nvmesubsystem: Add new collector [#&#8203;3579](prometheus/node_exporter#3579)
- \[FEATURE] dmmultipath: Add new collector [#&#8203;3581](prometheus/node_exporter#3581)
- \[FEATURE] infiniband: Add device filtering option [#&#8203;3694](prometheus/node_exporter#3694)
- \[ENHANCEMENT] hwmon: disambiguate colliding chip labels [#&#8203;3646](prometheus/node_exporter#3646)
- \[ENHANCEMENT] cpufreq: Add support for cpuinfo\_avg\_freq [#&#8203;3712](prometheus/node_exporter#3712)
- \[ENHANCEMENT] filesystem: Support ext4 super block emergency\_ro flag [#&#8203;3717](prometheus/node_exporter#3717)
- \[ENHANCEMENT] edac: Add per-channel error metrics with DIMM labels [#&#8203;3720](prometheus/node_exporter#3720)
- \[BUGFIX] diskstats: Only enforce mutual exclusivity for non-empty values [#&#8203;3617](prometheus/node_exporter#3617)
- \[BUGFIX] thermal\_zone: Handle EINVAL errors gracefully [#&#8203;3657](prometheus/node_exporter#3657)
- \[BUGFIX] filesystem: Add comma separator in mount options [#&#8203;3659](prometheus/node_exporter#3659)
- \[BUGFIX] diskstats: Fix rotational queue stats scrape regression [#&#8203;3686](prometheus/node_exporter#3686)
- \[BUGFIX] filesystem: Prevent panic on mount points with non-UTF-8 names [#&#8203;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)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

filesystemCollector crash with non-utf8 mount point

4 participants