mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-05-13 06:56:06 +00:00
Implements comprehensive mdadm RAID array monitoring for Linux hosts via pulse-host-agent. Arrays are automatically detected and monitored with real-time status updates, rebuild progress tracking, and automatic alerting for degraded or failed arrays. Key changes: **Backend:** - Add mdadm package for parsing mdadm --detail output - Extend host agent report structure with RAID array data - Integrate mdadm collection into host agent (Linux-only, best-effort) - Add RAID array processing in monitoring system - Implement automatic alerting: - Critical alerts for degraded arrays or arrays with failed devices - Warning alerts for rebuilding/resyncing arrays with progress tracking - Auto-clear alerts when arrays return to healthy state **Frontend:** - Add TypeScript types for RAID arrays and devices - Display RAID arrays in host details drawer with: - Array status (clean/degraded/recovering) with color-coded indicators - Device counts (active/total/failed/spare) - Rebuild progress percentage and speed when applicable - Green for healthy, amber for rebuilding, red for degraded **Documentation:** - Document mdadm monitoring feature in HOST_AGENT.md - Explain requirements (Linux, mdadm installed, root access) - Clarify scope (software RAID only, hardware RAID not supported) **Testing:** - Add comprehensive tests for mdadm output parsing - Test parsing of healthy, degraded, and rebuilding arrays - Verify proper extraction of device states and rebuild progress All builds pass successfully. RAID monitoring is automatic and best-effort - if mdadm is not installed or no arrays exist, host agent continues reporting other metrics normally. Related to #676 |
||
|---|---|---|
| .. | ||
| backoff.go | ||
| backoff_test.go | ||
| backup_guard_test.go | ||
| ceph.go | ||
| circuit_breaker.go | ||
| circuit_breaker_test.go | ||
| container_disk_usage.go | ||
| diagnostic_snapshots.go | ||
| docker_commands.go | ||
| docker_commands_test.go | ||
| fake_executor_integration.go | ||
| fs_filters.go | ||
| fs_filters_test.go | ||
| harness_integration.go | ||
| helpers_test.go | ||
| integration_integration_test.go | ||
| main_test.go | ||
| metrics.go | ||
| metrics_history.go | ||
| metrics_history_concurrency_test.go | ||
| monitor.go | ||
| monitor_docker_test.go | ||
| monitor_health_test.go | ||
| monitor_host_agents_test.go | ||
| monitor_memory_test.go | ||
| monitor_pmg_test.go | ||
| monitor_polling.go | ||
| monitor_snapshots_test.go | ||
| monitor_storage_test.go | ||
| poller.go | ||
| ratetracker.go | ||
| ratetracker_concurrency_test.go | ||
| reload.go | ||
| scheduler.go | ||
| staleness_tracker.go | ||
| staleness_tracker_test.go | ||
| task_queue.go | ||
| temperature.go | ||
| temperature_service.go | ||
| temperature_test.go | ||