tomcat - 如何配置每个应用程序的日志/catalina 跳出 tomcat 6. ( 为 sys.out, sys.err 配置web应用程序特定日志文件)

  显示原文与译文双语对照的内容
0 0

要求是。

我们的3 web-applications部署在RHEL-5服务器上,我们部署了带有 tomcat 6.0.16的应用程序。 我们想配置 stdout,stderr,它们在应用程序特定日志文件中的tomcat/logs/catalina.out,比如

tomcat/logs/app1.log tomcat/logs/app2.log tomcat/logs/app3.log

我们正在使用 Log4J,但是它只生成日志记录,我们需要的是 per-app,它是 tomcat/logs/catalina.out

任何帮助都有帮助。

时间: 原作者:

0 0

试试这个

  1. 每个应用程序必须使用自己的Log4J 。 你可以通过将 log4j.jar 放在每个应用程序的WEB-INF/lib来实现。
  2. 在 Log4J 文件( 默认位置是 WEB-INF/classes )的每个配置中,指定日志文件名,比如 log4j.appender.AppLog.File=${catalina.home}/logs/app1.log
  3. 为每个上下文添加 swallowOutput="true",这样stdout就会进入你自己的日志。

我们在 Tomcat 5.5上这么做,但我认为它应该在 6.0上工作。

编辑:这里是我们的META-INF/context 。xml,


<?xml version="1.0" encoding="UTF-8"?>
<Context override="true" swallowOutput="true" useNaming="false">
 <WatchedResource>WEB-INF/web.xml</WatchedResource>
 <Manager pathname=""/>
</Context>

...