温馨提示×

centos下tomcat如何进行日志轮转

小樊
62
2025-09-05 19:46:52
栏目: 智能运维

在 CentOS 系统中,Tomcat 的日志轮转可以通过 logrotate 工具来实现。以下是配置 Tomcat 日志轮转的步骤:

  1. 确保 logrotate 已经安装在你的 CentOS 系统中。如果没有安装,可以使用以下命令安装:
sudo yum install logrotate
  1. 创建一个新的 logrotate 配置文件,用于配置 Tomcat 日志轮转。使用文本编辑器(如 vim 或 nano)创建一个名为 tomcat-logrotate.conf 的文件:
sudo vi /etc/logrotate.d/tomcat
  1. 将以下内容粘贴到 tomcat-logrotate.conf 文件中,并根据实际情况修改 <tomcat_user><tomcat_home> 和日志文件路径:
# Tomcat log rotation configuration
<tomcat_user> {
    <tomcat_home>/logs/*.log {
        daily
        rotate 7
        compress
        missingok
        notifempty
        create 640 <tomcat_user> adm
        postrotate
            if [ -f "<tomcat_home>/bin/catalina.sh" ]; then
                /bin/kill -HUP `cat <tomcat_home>/temp/tomcat.pid 2>/dev/null` 2>/dev/null || true
            fi
        endscript
    }
}

这里的配置表示:

  • 每天轮转日志文件
  • 保留最近 7 天的日志文件
  • 对旧日志文件进行压缩
  • 如果日志文件不存在,不会报错
  • 如果日志文件为空,不进行轮转
  • 创建新的日志文件,权限为 640,属主为 <tomcat_user>,属组为 adm
  • 轮转后发送 HUP 信号给 Tomcat 进程,通知其重新打开日志文件
  1. 保存并关闭 tomcat-logrotate.conf 文件。

  2. 测试 logrotate 配置是否正确。运行以下命令:

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

如果没有错误信息,说明配置正确。

现在,Tomcat 的日志轮转已经配置好了。logrotate 将根据配置自动进行日志轮转。你也可以手动触发日志轮转,只需运行以下命令:

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

0