Add Website Slowness Diagnostics - Multi-framework analysis tool

Features:
- Support for 8 frameworks: WordPress, Drupal, Joomla, Magento, Laravel, Node.js, Static HTML, Custom PHP
- Auto-detect framework and perform framework-specific analysis
- 40+ slowness indicators across database, configuration, resources, performance
- Comprehensive diagnostics: database optimization, table fragmentation, indexes, PHP config
- Resource analysis: swap usage, I/O performance, process saturation, file descriptors
- Domain-specific analysis with no server-wide impact
- Handles custom WordPress table prefixes automatically
- Graceful error handling for users without shell access
- Domain input sanitization (accepts https://www.example.com, etc.)
- Temp file management with automatic cleanup
- Production-ready with full testing

Fixes applied:
- Fixed temp session initialization using exported variables
- Fixed database credential extraction with proper grep/awk
- Added automatic WordPress table prefix detection
- Added proper error handling for shell-less cPanel users
- Removed problematic progress display calls
- Added domain input sanitization for better UX

Added to menu:
- Main Website Diagnostics menu (Option 3)
- Not limited to WordPress, supports all frameworks

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
cschantz
2026-02-26 17:31:06 -05:00
parent 01801cfe24
commit e53ea6f866
2 changed files with 2233 additions and 4 deletions
+10 -4
View File
@@ -292,13 +292,18 @@ show_website_menu() {
echo -e " ${BLUE}1)${NC} 🔍 Website Error Analyzer - Find 500/config errors (filters bots)" echo -e " ${BLUE}1)${NC} 🔍 Website Error Analyzer - Find 500/config errors (filters bots)"
echo -e " ${RED}2)${NC} 🔥 Fast 500 Error Tracker - ONLY 500s + root cause diagnosis" echo -e " ${RED}2)${NC} 🔥 Fast 500 Error Tracker - ONLY 500s + root cause diagnosis"
echo "" echo ""
echo -e "${BOLD}Performance & Slowness:${NC}"
echo ""
echo -e " ${MAGENTA}3)${NC} 🐢 Website Slowness Diagnostics - Multi-framework analysis"
echo " └─ WordPress, Drupal, Joomla, Magento, Laravel, Node.js, etc."
echo ""
echo -e "${BOLD}WordPress Management:${NC}" echo -e "${BOLD}WordPress Management:${NC}"
echo "" echo ""
echo -e " ${BLUE}3)${NC} 📦 WordPress Tools → WP-Cron manager & diagnostics" echo -e " ${BLUE}4)${NC} 📦 WordPress Tools → WP-Cron manager & more tools"
echo "" echo ""
echo -e "${BOLD}Domain Analysis:${NC}" echo -e "${BOLD}Domain Analysis:${NC}"
echo "" echo ""
echo -e " ${BLUE}4)${NC} 🔶 Cloudflare Detector - Which domains use Cloudflare + location" echo -e " ${BLUE}5)${NC} 🔶 Cloudflare Detector - Which domains use Cloudflare + location"
echo "" echo ""
echo -e " ${RED}0)${NC} Back to Main Menu" echo -e " ${RED}0)${NC} Back to Main Menu"
echo "" echo ""
@@ -314,8 +319,9 @@ handle_website_menu() {
case $choice in case $choice in
1) run_module "website" "website-error-analyzer.sh" ;; 1) run_module "website" "website-error-analyzer.sh" ;;
2) run_module "website" "500-error-tracker.sh" ;; 2) run_module "website" "500-error-tracker.sh" ;;
3) bash "$MODULES_DIR/website/wordpress-menu.sh" ;; 3) run_module "website" "website-slowness-diagnostics.sh" ;;
4) run_module "website" "cloudflare-detector.sh" ;; 4) bash "$MODULES_DIR/website/wordpress-menu.sh" ;;
5) run_module "website" "cloudflare-detector.sh" ;;
0) return ;; 0) return ;;
*) echo -e "${RED}Invalid option${NC}"; sleep 1 ;; *) echo -e "${RED}Invalid option${NC}"; sleep 1 ;;
esac esac
File diff suppressed because it is too large Load Diff