Skip to content

feat: add raid mode for monitoring storage pool raid status#63

Open
animaartificialis wants to merge 2 commits into
wernerfred:masterfrom
animaartificialis:master
Open

feat: add raid mode for monitoring storage pool raid status#63
animaartificialis wants to merge 2 commits into
wernerfred:masterfrom
animaartificialis:master

Conversation

@animaartificialis
Copy link
Copy Markdown

Adds a raid mode that monitors the status of every Synology storage pool via SNMP. Behaviour:

raid_status mapping
1 (Normal) OK
2 (Repairing), 3 (Migrating), 4 (Expanding), 5 (Deleting), 6 (Creating), 7 (RaidSyncing), 8 (RaidParityChecking), 9 (RaidAssembling), 10 (Canceling) WARNING
11 (Degrade), 12 (Crashed) CRITICAL
anything else UNKNOWN

Notes:

  • The previous severity is preserved across iterations, so a WARNING pool can never lower the state below a CRITICAL one observed earlier in the loop.
  • Repairing(2) is included in the WARNING set (it's an intermediate operation, not a failure).
  • README updated with the new mode.

This is an alternative implementation of #62 that addresses the issues raised in #62 (comment) (severity downgrade, missing status 2, README↔code mismatch, explicit Degrade/Crashed classification).

animaartificialis and others added 2 commits May 20, 2026 21:48
Adds a `raid` mode that surfaces Synology raid status (OID
1.3.6.1.4.1.6574.3.1.1.x) for every storage pool: Normal → OK,
intermediate states (Repairing/Migrating/Expanding/.../Canceling)
→ WARNING, Degrade and Crashed → CRITICAL, anything else → UNKNOWN.

The previous severity is preserved across iterations so a WARNING
pool can never downgrade a CRITICAL one. Status "2" (Repairing)
is included in the WARNING set. README updated with the new mode.

This is an alternative take on wernerfred#62 incorporating review feedback
from issuecomment-4502847249.
- New --warning-free / --critical-free args: PERC_FREE thresholds
  (check_disk -w/-c convention). Precedence over upstream -w/-c.
- Storage perfdata gets `;;;0;<storage_size>` (value;warn;crit;min;max)
  so Graphite-backed forecast plugins can compute 'days until full'.

Backwards-compatible. _parse_pct accepts '10', '10%', ' 5 % '.
Patch from Imatic IT; 6 threshold scenarios verified locally.
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.

2 participants