2015-06-24 118 views
0

我正在使用log4j2版本2.3。Log4j 2日志在错误的级别

记录仪de.ulrich在我的Tomcat的webapp登录级别DEBUG,虽然我配置的级别INFO(见下文)。为什么?

<?xml version="1.0" encoding="UTF-8"?> 
<Configuration status="WARN"> 
    <Filters> 
     <!-- onMatch="DENY" es wird nicht geloggt, onMatch="ACCEPT" es wird geloggt --> 
     <MarkerFilter marker="HTTP_HEADER" onMatch="DENY" onMismatch="NEUTRAL"/> 
     <MarkerFilter marker="XML_FILTER" onMatch="DENY" onMismatch="NEUTRAL"/> 
     <MarkerFilter marker="FLOW" onMatch="ACCEPT" onMismatch="NEUTRAL"/> 
    </Filters> 
    <Appenders> 
     <Console name="Console" target="SYSTEM_OUT"> 
      <PatternLayout 
        pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> 
     </Console> 
     <RollingFile name="dmFileAppender" fileName="logs/doorman.log" 
        filePattern="logs/doorman-%i.log"> 
      <PatternLayout> 
       <!--<pattern>%d{HH:mm:ss.SSS} [%t] %X{id} %X{username} %-5level %c{36} %l: %msg%n</pattern>--> 
       <pattern>%d{yyyyMMdd-HHmmss} %-5level [%t] %msg%n</pattern> 
      </PatternLayout> 
      <Policies> 
       <SizeBasedTriggeringPolicy size="2 MB"/> 
      </Policies> 
      <DefaultRolloverStrategy min="1" max="5"/> 
     </RollingFile> 
    </Appenders> 
    <Loggers> 
     <Root level="warn"> 
      <AppenderRef ref="Console"/> 
     </Root> 
     <Logger name="de.ulrich" level="INFO" additivity="false"> 
      <AppenderRef ref="dmFileAppender"/> 
      <AppenderRef ref="Console" /> 
     </Logger> 

     <Logger name="org.apache.http.impl.conn" level="error"> 
      <AppenderRef ref="dmFileAppender"/> 
      <AppenderRef ref="Console"/> 
     </Logger> 
     <Logger name="org.apache.http.impl.client" level="error"> 
      <AppenderRef ref="dmFileAppender"/> 
      <AppenderRef ref="Console"/> 
     </Logger> 
     <Logger name="org.apache.http.client" level="error"> 
      <AppenderRef ref="dmFileAppender"/> 
      <AppenderRef ref="Console"/> 
     </Logger> 

    </Loggers> 
</Configuration> 

附加信息
这是通向log4j2.xml:
.../webapp/myApp/WEB-INF/classes

我敢肯定,log4j的可以找到这个文件,因为它使用了关于RollingFile所有设置。

+0

这个配置文件在哪里?在默认位置或者您是否使用系统属性指定其位置? –

+0

@SotiriosDelimanolis - 我已更新我的问题 – JimHawkins

+0

请在声明后尝试删除声明,直到找到最低配置,但仍然会重现问题。 – slartidan

回答

0

我感动Filters元素Logger元素里面,现在我得到预期的日志输出。

片段:

<Loggers> 
    <Root level="warn"> 
     <AppenderRef ref="Console"/> 
    </Root> 
    <Logger name="de.lgn" level="${lgnDefaultLogLevel}" additivity="false"> 
     <AppenderRef ref="dmFileAppender"/> 
     <AppenderRef ref="Console" /> 
     <Filters> 
      <!-- onMatch="DENY" es wird nicht geloggt, onMatch="ACCEPT" es wird geloggt --> 
      <MarkerFilter marker="HTTP_HEADER" onMatch="DENY" onMismatch="NEUTRAL"/> 
      <MarkerFilter marker="XML_FILTER" onMatch="DENY" onMismatch="NEUTRAL"/> 
      <MarkerFilter marker="FLOW" onMatch="DENY" onMismatch="NEUTRAL"/> 
     </Filters> 
    </Logger> 
    ... 
    ... 
</Loggers> 

谢谢。