logging - Log4j:每个 war 一个日志文件

标签 logging log4j classloader war

是否可以为每个 war 文件设置单独的日志文件?我们有两场应用程序“ war ”,每场都与特定功能有关,并由不同的团队管理。我们希望将各个 war 的日志输出到它自己的日志文件中。请注意,这两个 war 都使用一些通用代码,因此我们可以在包级别进行攻击。任何意见都将受到赞赏。

谢谢

最佳答案

如果您在 JBoss 中部署应用程序,则可以设置 <filter>对于<appender>jboss-log4j.xml 中声明。安example from the JBoss Wiki :

<appender name="App1Log" class="org.apache.log4j.FileAppender">
  <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"></errorHandler>
  <param name="Append" value="false"/>
  <param name="File" value="${jboss.server.home.dir}/log/app1.log"/>
  <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="%d %-5p %c{1} %m%n"/>
  </layout>
  <filter class="org.jboss.logging.filter.TCLFilter">
     <param name="AcceptOnMatch" value="true"/>
     <!-- value="app1.war" is incorrect. -->
     <param name="DeployURL" value="app1-exp.war"/>
  </filter>    

关于logging - Log4j:每个 war 一个日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5156772/

相关文章:

java - 类级别注释的定义类加载器是否始终是该类的启动类加载器的父级?

logging - 您可以为 Phoenix 的不同路线设置不同的日志级别吗?

java - 在 tomcat/shared/lib 中获取 jar 以使用调用它们的 webapp 的配置进行记录

logging - 在 grails-app 之外的 Grails 类中注入(inject)日志对象

java - 使用 log4j 为每个应用程序创建单独的日志文件

java - log4j:WARN 在 Java 项目中找不到记录器的附加程序

java - JBoss7 : loader constraint violation with ReastEasy and httpclient with custom HttpRequestInterceptor

logging - 记录单独的日志级别以分隔 log4j2 属性文件中的文件

log4j - 如何检查给定 slf4j 使用的 log4j 版本?

java - 为什么 java newInstance 卡在 getDeclaredConstructors0 处?