Reputation: 139
Hello I want to show the logs on console and write logs in file as well. Console logs are working but I'm unable to write logs in file. I m using Log4J2 and my Log4j2.xml is as follow:
<?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>
Upvotes: 0
Views: 641
Reputation: 6267
If you want all of your logs to be written on both console and file, refer both appenders to Root
logger.
<Loggers>
<Root level="debug">
<AppenderRef ref="Console"/>
<AppenderRef ref="File"/>
</Root>
</Loggers>
Upvotes: 1