您好我想在控制台上显示日志并在文件中写入日志。控制台日志正在运行,但我无法在文件中写入日志。我使用的是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>
答案 0 :(得分:1)
如果您希望在控制台和文件上都写入所有日志,请将两个appender引用到Root
logger。
<Loggers>
<Root level="debug">
<AppenderRef ref="Console"/>
<AppenderRef ref="File"/>
</Root>
</Loggers>