一尘不染

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

tomcat

要求是这个…

我们在RHEL-5服务器中部署了3个Web应用程序,我们在tomcat
6.0.16中部署了应用程序。我们要配置stdout,stderr,它们会出现在应用程序特定日志文件中的tomcat / logs /
catalina.out中,例如,

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

我们正在使用log4j,但它仅生成日志详细信息,我们需要每个应用程序的stdout,该信息将在tomcat / logs / catalina.out中提供

任何帮助…


阅读 381

收藏
2020-06-16

共1个答案

一尘不染

尝试这个,

  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,stderr将转到您自己的日志。

我们在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>
2020-06-16