我想使用logrotate在我的服务器上管理日志轮换,但是Tomcat执行自己的日志轮换,与logrotate交互不良,我找不到关闭它的方法。我的Tomcat实例目前生成5种类型的日志:
经过一些谷歌搜索后,我发现我可以通过将rotatable="false"
添加到server.xml中相应的<Value>
元素中来禁用'mysite'日志的旋转,但其他日志都没有对应的{ {1}}元素。
日志似乎是由logging.properties文件配置的,但我找不到此文件的“关闭旋转关闭”选项。有人可以帮忙吗?我正在使用Tomcat 8.5
答案 0 :(得分:3)
日志似乎是由logging.properties文件配置的,但是我找不到&#39;关闭&#39;此文件的选项
您可以尝试使用其他日志处理程序并将其配置为避免轮换
您的属性文件可能包含此配置(如果您尚未更改默认设置)
1catalina.org.apache.juli.AsyncFileHandler.level = DEBUG
1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
您可以将其更改为java.util.logging.FileHandler
并禁用轮播的大小限制
1catalina.java.util.logging.FileHandler.level = DEBUG
1catalina.java.util.logging.FileHandler.pattern = ${catalina.base}/logs/catalina.%g.log
# set below limit to 0 !!
1catalina.java.util.logging.FileHandler.limit = 0
1catalina.java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
来自the docs
java.util.logging.FileHandler.limit
文件的最大大小(以字节为单位)。如果为0,则没有限制。默认值为1000000(1 MB)。大于1MB的日志将转到下一个日志文件
由于没有限制,因此永远不会发生文件轮换。
答案 1 :(得分:1)
org.apache.juli.AsyncFileHandler中有可用的选项可用于切换rotatable
功能。您可以直接添加以下参数以禁用日志轮换:
1catalina.org.apache.juli.AsyncFileHandler.rotatable = false