prometheus / prometheus/node_exporter
Linux mdadm collector fails if any software RAID array has a delayed check or resync
@mehrdadbn9 is already working on this.
Since Feb 23, 2026.
- Dominant language
- Go
- Stars
- 13.8k
- Forks
- 2.7k
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 8
Description
Under some situations, if you (or system cron jobs/systemd timers/etc) trigger a check or a resync of multiple software RAID arrays at the same time, the action will be delayed for all arrays but one. When this happens, the mdadm collector fails, reporting:
time=2025-12-07T01:28:23.387-05:00 level=ERROR source=collector.go:168 msg="collector failed" name=mdadm duration_seconds=0.125841512 err="error parsing mdraids: expected integer"
The underlying cause of this is prometheus/procfs/issues/770 but I'm filing this issue against the node_exporter too so you can track this and pick up the fix when it's made.
People who have such software RAID setups are likely to experience this issue regularly (which may trigger alarms if they alert on unexpected collector failures), because most Linux distributions perform periodic software RAID 'check' operations and it seems common to nominally start them at the same time on all software RAID arrays. Specifically, Ubuntu LTS releases do this weekly.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.