2015-11-01 36 views
0

我遇到了一个问题,最近升级了log4j。移动到log4j2,我看到Spring在INFO级别附加URL路径处理程序的输出。不过,我将根记录器设置为错误。Spring4启动期间的Log4j2 tomcat配置问题

下面是配置

<?xml version="1.0" encoding="UTF-8"?> 
<Configuration status="WARN" xmlns="http://logging.apache.org/log4j/2.0/config"> 
    <Properties> 
     <Property name="LOG_DIR">logs</Property> 
     <Property name="ARCHIVE">${LOG_DIR}</Property> 
     <Property name="LOG_PREFIX">logname-</Property> 
     <Property name="FILE_PATTERN">%d{ISO8601}\t%r\t%t\t%-5p\t%c{1}\t%m%n</Property> 
     <Property name="CONSOLE_PATTERN">[%d{ISO8601}|%-5p|%c{1}|%M|%L] %m%n</Property> 
    </Properties> 
    <Appenders> 
     <File name="FILE" fileName="logname.log" append="true"> 
      <PatternLayout pattern="${FILEPATTERN}" /> 
     </File> 
     <RollingFile name="fileWriter" fileName="${LOG_DIR}/${LOG_PREFIX}.log" filePattern="${ARCHIVE}/${LOG_PREFIX}-%d{yyyy-MM-dd-hh-mm}.log" immediateFlush="false"> 
      <PatternLayout pattern="${FILE_PATTERN}" /> 
      <TimeBasedTriggeringPolicy/> 
     </RollingFile> 

     <Console name="STDOUT" target="SYSTEM_OUT"> 
      <PatternLayout pattern="${CONSOLE_PATTERN}" /> 
     </Console> 
     <Async name="Async-File"> 
      <AppenderRef ref="FILE" /> 
     </Async> 
     <Async name="Async-Console"> 
      <AppenderRef ref="STDOUT" /> 
     </Async> 
    </Appenders> 
    <Loggers> 
     <Root> 
      <AppenderRef ref="Async-Console" level="error" /> 
      <AppenderRef ref="Async-File" level="error" /> 
     </Root> 
    </Loggers> 
</Configuration> 

并在启动tomcat的输出

Nov 01, 2015 5:19:34 PM org.springframework.web.servlet.handler.AbstractUrlHandlerMapping registerHandler 
INFO: Mapped URL path [/universal/applyTemplate/] onto handler 'RESTTemplate' 

有几百行本次启动的,但我想一个就足够了。在这种情况下ROOT记录器是否被覆盖?

Tomcat版本也是7.55。

回答

0

输出与您的配置不能使用的模式不匹配。您是否将log4j-web添加到您的应用程序中?您是否按照http://logging.apache.org/log4j/2.x/manual/webapp.html的说明操作?

+0

是的,我已将log4j-web添加到我的应用程序中。我已经尝试了链接中提供的步骤,但没有效果。 – Chitowns24

+0

答案是将log4j jlc jar添加到依赖项。 – Chitowns24