【问题标题】:How can I make the log rotation work in Tomcat如何使日志轮换在 Tomcat 中工作
【发布时间】:2023-03-21 12:06:01
【问题描述】:

我刚刚在conf/logging.properties 中进行了更改,以便在特定时间后轮换日志文件。但是,它不起作用。

变化如下:

#.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler



#1catalina.org.apache.juli.FileHandler.level = FINE
#1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
#1catalina.org.apache.juli.FileHandler.prefix = catalina.
1catalina.java.util.logging.FileHandler.level = FINE 
1catalina.java.util.logging.FileHandler.pattern = ${catalina.base}/logs/catalina.%g.log 
1catalina.java.util.logging.FileHandler.limit = 13107200 
1catalina.java.util.logging.FileHandler.count = 5 
1catalina.java.util.logging.FileHandler.formatter =  java.util.logging.SimpleFormatter

【问题讨论】:

  • 提供更多细节。想做什么?你期望会发生什么?发生了什么? java.util.logging.FileHandler 按文件大小而不是时间旋转。
  • 我正在尝试旋转 catalina.out 文件,该文件最终在服务器上变得太大。要点是如果大小变为 1GB,则 catalina.out 会在不重启 tomcat 服务的情况下旋转。我不想使用 OS logrotate,因为它在我们的设置中没有按预期工作。通过上述更改,没有任何效果。

标签: java apache tomcat java.util.logging


【解决方案1】:

您似乎混淆了org.apache.juli.FileHandlerjava.util.logging.FileHandler

从您想要使用的配置文件中java.util.logging.FileHandler so you need to install that handler on the logger

handlers = 1catalina.java.util.logging.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.java.util.logging.FileHandler

1catalina.java.util.logging.FileHandler.level = FINE 
1catalina.java.util.logging.FileHandler.pattern = ${catalina.base}/logs/catalina.%g.log 
1catalina.java.util.logging.FileHandler.limit = 13107200 
1catalina.java.util.logging.FileHandler.count = 5 
1catalina.java.util.logging.FileHandler.formatter =  java.util.logging.SimpleFormatter

另一种选择是使用tomcat FileHandler:

handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler
1catalina.org.apache.juli.FileHandler.level = FINE
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina. 
1catalina.org.apache.juli.FileHandler.rotatable = true 
1catalina.org.apache.juli.FileHandler.formatter =  java.util.logging.SimpleFormatter

【讨论】:

  • 我也尝试过你的建议,但是没有成功
  • 这里相同 - Tomcat 7.0.22
  • @JackTheKnife 您可能想提出一个新问题。这样您就可以发布您的日志配置和任何其他调试信息。这个问题混淆了按时间旋转和按大小旋转。
  • @jmehrens 是的,我已经做到了:stackoverflow.com/questions/49322523/…
猜你喜欢
  • 2018-06-30
  • 2010-12-02
  • 1970-01-01
  • 1970-01-01
  • 2017-09-25
  • 2021-03-22
  • 2016-06-03
  • 2011-12-26
  • 2018-08-23
相关资源
最近更新 更多