【发布时间】:2013-09-24 02:59:46
【问题描述】:
我正在尝试使用 logrotate 在网络服务器上滚动日志 catalina.out。
我已经能够滚动日志并创建日志catalina.out-dateext。
但我注意到日志正在写入新文件catalina.out-dateext。
有什么需要在网络服务器上完成的吗?
谢谢
【问题讨论】:
-
你在 /etc/logrotate.d/tomcat 中写了什么,我觉得你想说当前日志正在写入 catalina.out-datext 和 catalina.out 与否.
-
嗨,/home/Tomcat/logs/catalina.out { daily rotate 7 missingok create 0644 tomcat tomcat dateext } 我没有把文件放在 /etc/logrotate.d/ 而是把文件在另一个目录中,然后从 java 我执行命令: /usr/sbin/logrotate /etc/pex/tomcat 日志滚动到 catalina.out-20130919 并且 catalina.out 为 0kb。但日志正在写入 catalina.out-20130919 而不是 catalina.out。
-
使用 copytruncate 选项 - 创建副本后在原地截断原始日志文件,而不是移动旧日志文件并选择性地创建新文件,当某些程序无法被告知时可以使用它关闭其日志文件,因此可能会继续写入(附加)到前一个日志文件。
-
在 /etc/pex/tomcat 文件中添加 copytruncate。有关所有选项的更多信息vineetmanohar.com/2010/03/howto-rotate-tomcat-catalina-out
-
谢谢...它成功了。非常感谢:)
标签: linux redhat catalina logrotate