有没有办法将所有标准输出记录到Tomcat中的catalina.log文件中?(即打印到System.out.println()
的所有内容)
运行TOMCAT/bin/startup.bat
时打开的控制台窗口显示来自标准输出的输出,但不会保存到TOMCAT/logs/catalina.<date>.log
。
我的具体问题是,我在log4j中定义了一个控制台附加器来输出到控制台。这些日志消息会正确显示在Tomcat控制台窗口中,但不会写入catalina.log。我在Windows上运行Tomcat5.5。谢谢。
编辑:
这是我的log4j.properties文件。它位于TOMCAT/webapps/app/WEB-INF/classes/log4j.properties
log4j.rootCategory=DEBUG, console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%d{ABSOLUTE} %-5p %c{1}]: %m%n
发布于 2011-10-12 22:51:58
如果我在logging.properties中查看Tomcat5.5的默认日志记录配置:
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler
在我看来,似乎web应用程序的标准输出可能只被记录到级别信息和更高级别的文件中,http://tomcat.apache.org/tomcat-5.5-doc/logging.html声明在tomcat JULI日志记录配置中,当记录器被分配到自己的处理程序时,不使用父级的处理程序。另外,文件的前缀应该是localhost
,而不是catalina
。但是我不明白输出是如何出现在你的输出窗口中的:/
https://stackoverflow.com/questions/7740257
复制相似问题