温馨提示×

如何压缩debian tomcat日志

小樊
46
2026-09-25 13:37:51
栏目: 智能运维

在 Debian 上压缩 Tomcat 日志,常见做法有 手动压缩、logrotate 自动压缩、Tomcat 内部配置旋转+压缩。下面按实用程度给你说明。


一、使用 logrotate(推荐,Debian 标准方案)

Debian 自带 logrotate,Tomcat 日志一般位于:

/var/log/tomcat9/
# 或
/opt/tomcat/logs/

1. 创建 logrotate 配置

sudo nano /etc/logrotate.d/tomcat

示例(Tomcat 9):

/var/log/tomcat9/*.log {
    daily
    missingok
    rotate 14
    compress
    delaycompress
    notifempty
    copytruncate
}

说明:

  • compress:使用 gzip 压缩
  • daily:每天轮转
  • rotate 14:保留 14 天
  • copytruncate:不重启 Tomcat 直接截断日志(重要)

2. 测试配置

sudo logrotate -d /etc/logrotate.d/tomcat

强制执行:

sudo logrotate -f /etc/logrotate.d/tomcat

二、手动压缩已有日志

cd /var/log/tomcat9
sudo gzip catalina.out.1

或批量:

sudo gzip *.log.*

三、Tomcat 自带 logging.properties(仅控制生成,不压缩)

编辑:

/etc/tomcat9/logging.properties

可限制大小(示例):

1catalina.org.apache.juli.FileHandler.maxDays=14

⚠️ Tomcat 默认 不会压缩日志,压缩还是靠 logrotate。


四、使用 cron + 脚本(不推荐但可控)

0 0 * * * gzip /var/log/tomcat9/catalina.out.* 2>/dev/null

五、常见坑

  1. 不要直接删 catalina.out
  2. 用 copytruncate 避免 Tomcat 写错文件
  3. 如果 Tomcat 以 tomcat 用户运行,确保日志目录可写

如果你告诉我:

  • Tomcat 版本(8 / 9 / 10)
  • 日志路径
  • 是否允许重启 Tomcat

我可以给你精确配置。

0 踩