Log4J2-如何设置对新记录器的引用

时间:2019-01-06 11:02:37

标签: java log4j2

我具有用于log4j2的xml配置文件,但记录器无法正常工作。如果我在运行程序时将根记录器的引用设置为“信息”(我的新附加器)的“错误”,记录器将工作并将数据写入记录器文件,但是如果我将thouse附加器设置为新记录器(“信息”和“ ErrorLog”),记录器不会将任何数据写入我的日志文件。

这是我的配置xml文件:

<?xml version="1.0" encoding="UTF-8"?>

<Configuration>

  <Appenders>

    <Console name="Console">
      <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
    </Console>

    <File name="Info" fileName="logs/info.log">
      <PatternLayout>
        <Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
      </PatternLayout>
    </File>

        <File name="Errors" fileName="logs/errors.log">
      <PatternLayout>
        <Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
      </PatternLayout>
    </File>

  </Appenders>


  <Loggers>
      <Logger name="Information" level="debug">
      <AppenderRef ref="Info"/>
    </Logger>

        <Logger name="ErrorLog" level="error">
      <AppenderRef ref="Errors"/>
    </Logger>


    <Root level="debug">
      <AppenderRef ref="Console"/>
    </Root>
  </Loggers>



</Configuration>

1 个答案:

答案 0 :(得分:0)

解决了!

我修改了Loggers部分,并删除了这2个Logger。

    <Loggers>
    <Root level="debug">
      <level value="DEBUG" />
        <appender-ref ref="Console" />
        <appender-ref ref="Info" />
        <appender-ref ref="Errors" />
    </Root>
  </Loggers>