簡體   English   中英

log4j-在文件和控制台中同時顯示日志

[英]log4j - show logs both in file and console

我有兩個追加程序,一個用於文件,另一個用於控制台。 我希望Eclipse控制台顯示文件日志和控制台日志,但同時文件僅顯示其自己的日志。 我怎么做?

這是conf。

<appender name="FILE" class="org.apache.log4j.DailyRollingFileAppender">
 <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
 <param name="Append" value="true"/>
 <param name="Threshold" value="INFO"/>
 <param name="File" value="${jboss.server.log.dir}/file.log"/>
 <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="%d %-5p %m%n"/>
 </layout>

<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
  <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
  <param name="Target" value="System.out"/>
  <param name="Threshold" value="INFO"/>
  <layout class="org.apache.log4j.PatternLayout">
     <param name="ConversionPattern" value="%d %-5p [%c{1}] %m%n"/>
  </layout>

此外,文件日志僅顯示來自特定程序包的日志。

<category name="com.project.example" additivity="false">
   <appender-ref ref="FILE"/>
   <priority value="INFO"/>
</category>

和根:

<root>
  <priority value="${jboss.server.log.threshold}"/>
  <appender-ref ref="CONSOLE"/>
  <appender-ref ref="FILE"/>
</root>

您必須按如下所示在logger標簽中配置您的appender

<logger name="com.project.example">
    <appender-ref ref="FILE" />
    <appender-ref ref="CONSOLE" />
</logger>
<root>
    <level value="debug" />
    <appender-ref ref="CONSOLE" />
</root> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM