在 Debian 上备份 Tomcat 日志,常见做法有手动备份、脚本+定时任务、logrotate几种方式。下面按实用程度给你说明。
一般默认路径:
/var/log/tomcat9/
# 或
/opt/tomcat/logs/
常见日志文件:
catalina.outcatalina.yyyy-mm-dd.loglocalhost_access_log.*.txthost-manager.*.logcp -r /var/log/tomcat9 /backup/tomcat_logs_$(date +%F)
或打包:
tar czf /backup/tomcat_logs_$(date +%F).tar.gz /var/log/tomcat9
vim /usr/local/bin/backup_tomcat_logs.sh
内容示例:
#!/bin/bash
LOG_DIR=/var/log/tomcat9
BACKUP_DIR=/backup/tomcat_logs
DATE=$(date +%F)
mkdir -p $BACKUP_DIR
tar czf $BACKUP_DIR/tomcat_logs_$DATE.tar.gz $LOG_DIR
# 保留 30 天
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete
赋权:
chmod +x /usr/local/bin/backup_tomcat_logs.sh
crontab -e
每天凌晨 2 点备份:
0 2 * * * /usr/local/bin/backup_tomcat_logs.sh
Debian 默认已安装 logrotate。
vim /etc/logrotate.d/tomcat
内容:
/var/log/tomcat9/*.log
/var/log/tomcat9/catalina.out {
daily
missingok
rotate 30
compress
delaycompress
notifempty
copytruncate
}
说明:
copytruncate:不重启 Tomcat 也能切日志compress:自动压缩rotate 30:保留 30 天测试:
logrotate -d /etc/logrotate.d/tomcat
备份到远程服务器:
rsync -avz /backup/tomcat_logs/ user@backupserver:/backup/tomcat/
如果你告诉我:
我可以帮你写一份可直接用的配置。