1

我目前正在使用 Tomcat 通过我的 servlet 中最简单的方法进行日志记录。我使用 ServletConfig.getServletContext().log 来记录活动。这将写入 $TOMCAT_HOME/logs 中的 localhost.YYYY-MM-DD.log。

除非绝对必要,否则我不想摆脱这种日志记录机制的简单性。但我想命名我的日志文件。而不是“localhost”.YYYY-MM-DD.log,有没有办法让它写入“myAppName”.YYYY-MM-DD.log。我知道我可以创建自己的机制,但我再次在这里寻找简单性。

我希望远离像 Log4j 这样的完整框架。

4

2 回答 2

0

对于 Tomcat 6.x,您可以在 conf/logging.properties 中更改日志记录配置。

但我更喜欢使用 Log4j 进行单独配置...

于 2008-10-14T16:10:42.780 回答
0

所以有一种方法可以通过 $TOMCAT_HOME/conf/logging.properties 而不用接触我的 servlet 代码......

前...

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4admin.org.apache.juli.FileHandler, 5host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

后...

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4admin.org.apache.juli.FileHandler, 5host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler, 6localhost.org.apache.juli.FileHandler

然后加...

6localhost.org.apache.juli.FileHandler.level = FINE
6localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
6localhost.org.apache.juli.FileHandler.prefix = myAppName.

并添加...

org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/myAppName].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/myAppName].handlers = 6localhost.org.apache.juli.FileHandler

和反弹tomcat。这仅使用我简单的 ServletConfig.getServletContext().log() 消息创建了 $TOMCAT_HOME/logs/myAppName.2008-10-14.log。

于 2008-10-14T17:08:21.090 回答