cschantz
0a8cb302df
Add Loadwatch Health Analyzer for system monitoring analysis
...
NEW FEATURE: Loadwatch Health Analyzer
- Comprehensive system health analysis from loadwatch monitoring logs
- Time-range analysis: 1h, 6h, 24h, 7d, 30d options
- Intelligent problem detection and trending
CAPABILITIES:
- Memory pressure detection (low available memory, high swap usage)
- CPU saturation analysis (idle %, iowait, steal time)
- Load average trending and threshold detection
- Process issue detection (zombie processes, high CPU/MEM consumers)
- MySQL performance monitoring (slow queries, thread counts)
- Network connection analysis
- Historical trending across snapshots (3-minute intervals)
IMPLEMENTATION:
- modules/diagnostics/loadwatch-analyzer.sh - Main analyzer script
- Handles symlinked loadwatch directories
- Parses 7 log sections: alerts, summary, memory, CPU, tasks, MySQL, network
- Generates detailed reports with actionable recommendations
- Saves reports to tmp/ directory for review
INTEGRATION:
- Added to Performance & Diagnostics menu (option 10)
- Time range selection submenu for user-friendly access
- Updated README.md with feature documentation and usage examples
ANALYSIS FEATURES:
- Swap threshold alerts (>= 50% usage)
- CPU saturation detection (< 10% idle)
- High I/O wait warnings (> 20%)
- Zombie process tracking
- Memory availability trending (avg/min/max)
- Top CPU consumers aggregated across period
Perfect for:
- Post-incident investigation
- Capacity planning
- Performance trending
- System health monitoring
- Identifying resource bottlenecks
Works with servers that have loadwatch monitoring enabled
(logs in /root/loadwatch or /var/log/loadwatch)
2025-11-20 20:35:16 -05:00
cschantz
8a2d9f5eec
REFACTOR: Class D modules - Panel-specific conditionals
...
Completed Class D refactoring (panel-specific modules).
MODULES REFACTORED:
1. enable-cphulk.sh (ALREADY COMPLIANT)
- Already checks SYS_CONTROL_PANEL at startup (line 35)
- Exits gracefully if not cPanel
- Shows detected panel in error message
- All whmapi1 calls only reachable after panel check
- No changes needed ✅
2. system-health-check.sh (ENHANCED)
- Already had conditional checks for CPHulk (lines 606, 1706)
- Enhanced control panel version detection (line 940-947)
- Now uses SYS_CONTROL_PANEL_VERSION from system-detect.sh
- Supports cPanel, Plesk, InterWorx version reporting
- All panel-specific features properly gated
ARCHITECTURE COMPLIANCE:
✅ Panel-specific features wrapped in conditionals
✅ Graceful degradation when feature unavailable
✅ Clear error messages mentioning panel requirements
✅ Uses system-detect.sh variables
✅ All syntax validated
VERIFIED COMPLIANT:
✅ mysql-query-analyzer.sh - Already uses get_user_databases()
TESTING:
- Both modules passed `bash -n` syntax check
- enable-cphulk.sh will exit gracefully on non-cPanel
- system-health-check.sh will skip cPanel features on other panels
PROGRESS UPDATE:
- Class A: ✅ 7 modules (no changes needed)
- Class B: ✅ 6/6 modules COMPLETE
- Class C: ✅ 3/6 modules (bot-analyzer, malware-scanner, mysql-query)
- Class D: ✅ 2/2 modules COMPLETE
- Acronis: ✅ 13 modules (no changes needed)
Total: 31/38 modules architecture-compliant!
Remaining: 7 modules (website error analyzers + WordPress)
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-11-19 20:08:31 -05:00