无法使用log4j2在文件中写入日志

时间:2016-12-27 07:37:42

标签: logging log4j2

您好我想在控制台上显示日志并在文件中写入日志。控制台日志正在运行,但我无法在文件中写入日志。我使用的是Log4J2,我的Log4j2.xml如下:

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

      <Properties>
        <Property name="filename">target/test.log</Property>
      </Properties>

      <Appenders>

        <File name="File" fileName="${filename}">
          <PatternLayout>
            <pattern>%d %p %C{1.} [%t] %m%n</pattern>
          </PatternLayout>
        </File>

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

      </Appenders>


      <Loggers>
        <Logger name="org.apache.logging.log4j.test2" level="debug" additivity="false">
          <Property name="user">${sys:user.name}</Property>
          <AppenderRef ref="File">
          </AppenderRef>
        </Logger>
        <Root level="debug">
          <AppenderRef ref="Console"/>
        </Root>
      </Loggers>

    </Configuration>

1 个答案:

答案 0 :(得分:1)

如果您希望在控制台和文件上都写入所有日志,请将两个appender引用到Root logger。

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