如何从tomcat中部署的特定包中记录异常

时间:2010-11-18 13:18:22

标签: exception tomcat logging

我被迫在我在tomcat 6中部署的web应用程序中使用自定义封闭源库。它通过printStackTrace在我的stdout日志(catalina.out)中记录了很多异常,然后重新抛出它们供我处理。有没有办法防止或重新路由来自webapp中部署的特定包的异常记录?

2 个答案:

答案 0 :(得分:2)

e.printStackTrace打印到控制台,类似于System.err

在Tomcat中,catalina.sh有这一行,它将所有控制台错误重定向到catalina.out 这适用于整个Tomcat服务器。

"$CATALINA_BASE"/logs/catalina.out 2>&1 & 

简而言之,如果您无法修改源代码以使用log4j,您可以尝试将其发送到catalina.sh中的另一个文件,但同样这不是特定于程序包的所需。

这会以类似的方式膨胀另一个文件。

答案 1 :(得分:1)

如何在try / catch段中调用该段,从而在应用程序死亡之前捕获异常,将其添加到log4j(或任何其他日志记录机制)