logrotate 无法截断 catalina.out

logrotate 无法截断 catalina.out

我在我的 centos 机器上运行 tomcat 服务器。我的文件中有以下内容/etc/logrotate.d/tomcat

/log/apache-tomcat/catalina.out{
 copytruncate
 daily
 size 256M
 rotate 8
 missingok
 maxage 7
}

我尝试logrotate在调试模式下手动运行该命令。

/usr/sbin/logrotate -d /etc/logrotate.conf

在日志中,我找到了有关该/log/apache-tomcat/catalina.out文件的以下内容。

旋转模式:/log/apache-tomcat/catalina.out 268435456 字节(8 次旋转)

空日志文件被轮换,旧日志被删除

考虑到日志 /log/apache-tomcat/catalina.out 日志需要轮换

旋转日志 /log/apache-tomcat/catalina.out,log->rotateCount 为 8

日期文本后缀 '-20190206'

全局模式 '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'

glob 查找旧的旋转日志失败

将 /log/apache-tomcat/catalina.out 复制到 /log/apache-tomcat/catalina.out-20190206

截断/log/apache-tomcat/catalina.out

但运行命令后文件大小没有改变。我不确定这里出了什么问题。此文件大小不断增加并导致很多问题。

答案1

更改文件权限后问题得到解决/etc/logrotate.d/tomcat

前:

$ ls -lht /etc/logrotate.d/tomcat
-rwxr-xr-x 1 root root 308 Apr 25  2018 /etc/logrotate.d/tomcat

后:

$ sudo chmod -x /etc/logrotate.d/tomcat
$ ls -lht /etc/logrotate.d/tomcat
-rw-r--r-- 1 root root 308 Apr 25  2018 /etc/logrotate.d/tomcat

在检查了 verbose 后才了解这一点logrotate

$ /usr/sbin/logrotate -v /etc/logrotate.conf

相关内容