2010-11-10 170 views
2

我已经在我的系统中安装了Apache Tomcat 5.5作为服务。另外,我还为web应用程序添加了一个使用log4j的自定义日志文件。每当我在我的JSP页面中默认使用system.out.println(“some text”)语句时,它会转到位于tomcat.i的logs目录下的stdout.log文件。我想要system.out.println(“some text” )语句的输出写入自定义日志文件而不是stdout.log文件是可能的。Tomcat使用log4j进行日志记录?

回答

0

不知道你是否可以重定向System.out,即使你可能会很混乱,但你为什么不使用log4j设施,如果你已经设置了它?

log.info("my message");而不是System.out.println("my message");

如果您确定如何在Tomcat中使用log4j,那么教程here应该可以帮助您开始。

3

作为服务启动时,可以从服务管理器配置stdout和stderr消息的文件位置。

虽然我同意@Brabster,但当您想要进入生产时,您应该使用log4j日志记录而不是System.out。

This link has a screenshot和参考。请参阅部分“测试#2”

+0

我能够将stdout.log文件的位置更改为我的自定义日志文件,但滚动不可能。此外,当我停止并重新启动服务时,整个文件内容消失了。 – Lalchand 2010-11-10 09:47:42

+0

@Lalchand:不能帮助你,我没有安装Tomcat作为服务,因此没有标准输出。//日志中的所有其他日志文件是否按预期旋转? – JoseK 2010-11-10 09:53:19

+0

没有所有的文件不断增长文件名就像stdout_20101110.log这意味着默认情况下,tomcat创建一天的stdout日志。 – Lalchand 2010-11-10 10:00:19