2012-08-16 43 views
2

以下是我公司正在使用的log4j.xml文件的代码。我们一直试图将它改为只记录org.xxxx中的类的输出。有人可以让我知道这是可以做到和如何做到这一点如何让log4j仅记录我的公司类别

<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 
    <appender name="console" class="org.apache.log4j.ConsoleAppender"> 
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" /> 
     </layout> 
    </appender> 


    <appender name="logfile" class="org.apache.log4j.FileAppender"> 
     <param name="File" value="logs/disater_relief.log" /> 
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" /> 
     </layout> 
    </appender> 


    <appender name="rollinglogfile" class="org.apache.log4j.RollingFileAppender"> 
     <param name="file" value="logs/ennrollment.log" /> 
     <param name="immediateFlush" value="true" /> 
     <param name="append" value="true" /> 
     <param name="maxFileSize" value="1MB" /> 
     <param name="maxBackupIndex" value="3" /> 

     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" /> 
     </layout> 

    </appender> 

    <appender name="dailyrollinglogfile" class="org.apache.log4j.DailyRollingFileAppender"> 
     <param name="file" value="logs/ennrollment.log" /> 
     <param name="immediateFlush" value="true" /> 
     <param name="append" value="true" /> 
     <param name="datePattern" value=" '.' yyyy-MM-dd "/> 
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" /> 
     </layout> 

    </appender> 

    <root> 
     <priority value="debug" /> 
     <appender-ref ref="console" /> 
     <appender-ref ref="dailyrollinglogfile" /> 
    </root> 

</log4j:configuration> 
+0

为什么不合理? – ivowiblo 2012-08-17 16:18:00

回答

4

您的root looger为所有组件定义调试日志记录。你应该将其更改为warn(所以你仍然可以看到警告),并添加一个额外的记录为自己的组件:

<logger name="com.xxx.mycomponent"> 
    <level value="trace"/> 

    <!-- appenders ... --> 

</logger> 

<root> 
    <priority value="warn" /> 
    <appender-ref ref="console" /> 
    <appender-ref ref="dailyrollinglogfile" /> 
</root> 
+0

这给了我一个错误 – 2012-09-05 12:25:42

1

简单地关掉你不想在你的日志来查看包装上的日志记录...

<!-- Limit JBoss categories --> 
<category name="org.jboss"> 
    <priority value="OFF"/> 
</category>