CRITICAL FIX: Update InterWorx log file name from access_log to transfer.log

VALIDATION RESULTS from real InterWorx server revealed:
InterWorx uses 'transfer.log' NOT 'access_log' for access logs!

VERIFIED FINDINGS:
• Log location: /home/USER/var/DOMAIN/logs/ ✓ CORRECT
• Access log name: transfer.log (NOT access_log) ✓ FIXED
• Error log name: error.log ✓ CORRECT
• Logs are symlinks to dated files (transfer-2025-11-20.log)
• Older logs automatically zipped

UPDATED MODULES (9 files):
1. modules/security/tail-apache-access.sh
2. modules/security/web-traffic-monitor.sh
3. modules/security/bot-analyzer.sh (3 locations)
4. modules/security/malware-scanner.sh
5. modules/security/live-attack-monitor.sh
6. modules/website/website-error-analyzer.sh (3 locations)
7. modules/website/500-error-tracker.sh

UPDATED DOCUMENTATION:
• REFDB_FORMAT.txt - Added VERIFIED comment
• .sysref - Updated PATH|interworx|access_log

ALL REFERENCES CHANGED:
• find /home/*/var/*/logs -name "access_log" → "transfer.log"
• /home/USER/var/DOMAIN/logs/access_log → transfer.log

This was discovered by running validate-interworx.sh on real server:
  Server: interworx-3rdshift.raptorburn.com
  InterWorx Version: 6.14.5
  Test Date: 2025-11-20

All modules now use correct log file names for InterWorx!
This commit is contained in:
cschantz
2025-11-20 15:50:45 -05:00
parent eca362da07
commit d651a8b94f
8 changed files with 20 additions and 20 deletions
+2 -2
View File
@@ -194,8 +194,8 @@ done < <(
find "$DOMLOGS_DIR" -type f ! -name "*bytes_log" ! -name "*offset*" ! -name "*error_log" ! -name "*ftpxferlog*" ! -name "*-ssl_log" 2>/dev/null
;;
interworx)
# InterWorx: Per-domain logs in user homes
find /home/*/var/*/logs -type f -name "access_log" 2>/dev/null
# InterWorx: Per-domain logs in user homes (uses 'transfer.log')
find /home/*/var/*/logs -type f -name "transfer.log" 2>/dev/null
;;
plesk)
# Plesk: System vhosts logs
+4 -4
View File
@@ -240,7 +240,7 @@ case "$CONTROL_PANEL" in
local user=$(grep -l "ServerName ${FILTER_DOMAIN}" /etc/httpd/conf.d/vhost_*.conf 2>/dev/null | head -1 | \
xargs grep "SuexecUserGroup" 2>/dev/null | awk '{print $2}')
if [ -n "$user" ]; then
local log="/home/${user}/var/${FILTER_DOMAIN}/logs/access_log"
local log="/home/${user}/var/${FILTER_DOMAIN}/logs/transfer.log"
[ -f "$log" ] && echo "$log|domlog_$FILTER_DOMAIN" >> "$LOG_FILES_LIST"
fi
elif [ -n "$FILTER_USER" ]; then
@@ -248,13 +248,13 @@ case "$CONTROL_PANEL" in
local user_domains=$(get_user_domains "$FILTER_USER" 2>/dev/null)
if [ -n "$user_domains" ]; then
while IFS= read -r domain; do
local log="/home/${FILTER_USER}/var/${domain}/logs/access_log"
local log="/home/${FILTER_USER}/var/${domain}/logs/transfer.log"
[ -f "$log" ] && echo "$log|domlog_$domain" >> "$LOG_FILES_LIST"
done <<< "$user_domains"
fi
else
# All domains - find all access_log files
find /home/*/var/*/logs -type f -name "access_log" 2>/dev/null | while read -r log; do
# All domains - find all transfer.log files (InterWorx uses 'transfer.log' not 'access_log')
find /home/*/var/*/logs -type f -name "transfer.log" 2>/dev/null | while read -r log; do
local domain=$(echo "$log" | grep -oE '/var/[^/]+' | sed 's|/var/||')
echo "$log|domlog_$domain" >> "$LOG_FILES_LIST"
done