Log4j2 does not write logs to a file

2019-08-29 10:26发布

问题:

I am using log4j2 with slf4j and I want to write my logs to a file. This is my log4j2.xml configuration file:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
        </Console>
        <RandomAccessFileAppender name="Logfile"
            fileName="\\domain\path\logs\log.txt">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
        </RandomAccessFileAppender>
    </Appenders>
    <Loggers>
        <Root level="info">
            <AppenderRef ref="Logfile" />
            <AppenderRef ref="Console" />
        </Root>
    </Loggers>
</Configuration>

Logging to the console works, but I do not get any logs in the file. I get the following error message on the console:

2014-05-28 10:17:01,164 ERROR Error processing element RandomAccessFileAppender: CLASS_NOT_FOUND
2014-05-28 10:17:01,309 ERROR Unable to locate appender Logfile for logger

Why does log4j not find the class? Do I have to use additional dependencies?