Log4j2 ведение журнала классов в общем пути к классам Tomcat - PullRequest
0 голосов
/ 22 мая 2018

У меня есть веб-приложение с собственными классами в папке WEB-INF, которое использует log4j2 для ведения журнала.Я настроил его с помощью log4j2-web и вижу журналы этих классов.Пока все хорошо.

Я ломаю свой мозг, но вижу журналы от библиотек (jars), которые определены в common / shared classpath ofКот.Jar (например, один), который я пытаюсь, использует log4j2 api для ведения журнала.

Обратите внимание, что только когда я перемещаю jar из общего пути к классам в папку lib в WEB-INF веб-приложения, он показывает журналы,Это означает, что файл конфигурации подходит для имен приложений и логгеров ...

Есть что-то, чего мне не хватает, или так работает log4j2?Я использую Tomcat 7 Log4j2 2.11.0

Любая помощь будет приветствоваться!Спасибо.

(упрощенный) файл log4j2.xml:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
    <RollingFile name="sample.appender" fileName="server.log"
                 filePattern="server.log.%i.gz" bufferedIO="false" bufferSize="0">
        <PatternLayout pattern="%d [%t] (%F:%L) %-5p - %m%n"/>
        <Policies>
            <SizeBasedTriggeringPolicy size="5242880"/>
        </Policies>
        <DefaultRolloverStrategy max="13"/>
    </RollingFile>
</Appenders>

<Loggers>
    <Logger name="com.my.server" level="DEBUG" additivity="false">
        <AppenderRef ref="sample.appender"/>
    </Logger>

    <Logger name="com.3rd.party.sample" level="DEBUG" additivity="false">
        <AppenderRef ref="sample.appender"/>
    </Logger>

    <Root level="FATAL"/>
</Loggers>

...