diff --git a/lib/php-scanner.sh b/lib/php-scanner.sh index 0953f49..95a7938 100755 --- a/lib/php-scanner.sh +++ b/lib/php-scanner.sh @@ -412,14 +412,18 @@ get_domain_peak_concurrent() { return 1 fi - # Analyze access log for peak concurrent requests (simplified) + # Analyze access log for peak concurrent requests + # Apache logs: timestamp is [DD/Mon/YYYY:HH:MM:SS] + # Extract HH:MM (hour and minute) for minute-level granularity + # Count requests per minute and return the peak + # Assumption: average PHP request takes ~0.5-1 second tail -100000 "$log_file" 2>/dev/null | \ awk '{print $4}' | \ - sed 's/\[//' | \ - awk -F: '{print $3}' | \ + sed 's/\[//; s/\].*//' | \ + awk -F: '{print $1 ":" $2}' | \ sort | uniq -c | \ sort -rn | head -1 | \ - awk '{print $1}' || echo "0" + awk '{requests=$1; print (requests > 5 ? int(requests * 0.6) : requests)}' || echo "0" } # Check if a domain is already optimized