fccb714cce464e015861bcaa0b62398a36708a57
3 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
c8ebe4b0f0 |
Phase 2: Advanced analytics for loadwatch-analyzer - predictive and trend analysis
PHASE 2 ENHANCEMENTS (5 new features):
1. LOAD TREND DIRECTION ANALYSIS
- Analyzes 1min vs 5min vs 15min load averages
- Detects RISING (problem worsening), FALLING (resolving), or STABLE
- Provides snapshot counts for each trend type
- Critical for understanding if issue is active or resolving
2. CONNECTION STATE BREAKDOWN
- Parses network connection states from logs
- Aggregates by state (ESTABLISHED, SYN_RECV, CLOSE_WAIT, TIME_WAIT, etc)
- Shows average and total counts per state
- Detects:
* SYN flood attacks (high SYN_RECV)
* Connection leaks (high CLOSE_WAIT)
* Excessive TIME_WAIT (may need tuning)
3. MEMORY GROWTH VELOCITY TRACKING
- Calculates rate of memory consumption change
- Tracks MiB/hour growth or decline
- Predicts time until OOM if memory is declining
- Proactive alert: "Memory declining - OOM predicted in X hours"
- Shows whether memory is stable, increasing, or declining
4. R-STATE PROCESS COUNT
- Counts runnable (R-state) processes waiting for CPU
- Better CPU pressure metric than load average alone
- R-state > CPU cores = CPU contention
- Detects:
* Severe CPU pressure (R-state > 10)
* Moderate contention (R-state > 5)
* Normal range (R-state <= 5)
5. MYSQL THREAD ANOMALY DETECTION
- Parses summary line mysql[current/expected] format
- Alerts when current > 3x expected threads
- Shows anomaly delta (extra threads)
- Detects connection storms and thread explosions
- Tracks httpd process count for correlation
REPORT SECTIONS ADDED:
- MySQL Thread Anomaly alerts in Critical Alerts section
- Memory Growth Velocity in Memory Analysis section
- Load Trend Direction in CPU & Load Analysis section
- CPU Pressure Analysis (R-state) - new dedicated section
- Network Connection Analysis - new dedicated section
PARSING ENHANCEMENTS:
- Enhanced summary line parsing for mysql[X/Y] format
- R-state process counting from top output
- Network state aggregation from network stats section
- Httpd count tracking for trending
ANALYSIS IMPROVEMENTS:
- Predictive OOM warnings based on memory velocity
- Trend-based load analysis (not just absolute values)
- State-specific network connection warnings
- CPU pressure quantification via R-state
IMPACT:
- Shifts from reactive (what happened) to predictive (what will happen)
- Provides trend analysis for problem resolution tracking
- Detects attacks and leaks from connection state patterns
- Better CPU pressure understanding via R-state metrics
- MySQL connection storm early warning system
All features tested and validated on production logs.
|
||
|
|
99de72fe80 |
CRITICAL: Add advanced health indicators to loadwatch analyzer
Added 3 CRITICAL missing health indicators that were identified during
comprehensive log analysis. These detect the most severe system issues
that require immediate attention.
NEW CRITICAL DETECTIONS:
========================
1. Memory Thrashing Detection (kswapd0)
- Detects when kernel swap daemon (kswapd0) is consuming CPU
- THE definitive indicator of severe memory pressure
- System is constantly swapping pages in/out - performance destroyed
- Alert threshold: kswapd0 CPU > 1%
- Recommendation: Immediate RAM upgrade required
2. I/O Blocking Detection (D-state processes)
- Counts processes stuck in uninterruptible sleep (D-state)
- Processes blocked waiting for I/O operations
- Indicates severe disk performance issues or hardware failure
- Alert threshold: Any D-state processes detected
- Recommendation: Check disk health, look for failing drives
3. CPU Steal Time Alerts (VM resource contention)
- Detects hypervisor stealing CPU cycles from VM
- Physical host overcommitted or experiencing contention
- Critical for cloud/VPS environments
- Alert threshold: steal time > 10%
- Recommendation: Contact hosting provider, request migration
ENHANCEMENTS ADDED:
===================
4. Top Memory Consumers Tracking
- Similar to top CPU consumers
- Aggregates MEM% across all snapshots
- Shows average memory usage by process
- Helps identify memory leaks
REPORT IMPROVEMENTS:
====================
- Added 3 new alert types to Critical Alerts Summary
- Added Top Memory Consumers section
- Added critical recommendations for new alerts with action steps
- Used red circle emoji (🔴) for CRITICAL severity
- Provided specific commands to run for diagnostics
TECHNICAL IMPLEMENTATION:
=========================
- Parse ps auxf STAT column for D-state detection
- Search top processes for kswapd pattern
- Already parsing steal time, added threshold check
- Created top_mem_processes.txt for memory tracking
- All enhancements tested on production logs
IMPACT:
=======
These 3 additions close critical gaps in system health monitoring:
- Memory thrashing: Most severe memory issue, previously undetected
- I/O blocking: Indicates imminent disk failure, critical early warning
- CPU steal: Cloud/VPS-specific issue, helps identify hosting problems
The analyzer now detects ALL critical system health issues that can
be identified from loadwatch logs.
|
||
|
|
4bfade1bf3 |
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) |