I'm trying to save some logs from Apache James to specific appender.
Apache James by default uses Apache Commons Logging with added Logback. Logback.xml configuration looks like:
<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
<resetJUL>true</resetJUL>
</contextListener>
<!-- Appenders for console and logs -->
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} %highlight([%-5level]) %thread %logger{15}:%line - %msg%n%rEx</pattern>
<immediateFlush>false</immediateFlush>
</encoder>
</appender>
<appender name="JAMES" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>./logs/james.log</file>
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%-5level] %thread %logger{15}:%line - %msg%n%rEx</pattern>
<immediateFlush>false</immediateFlush>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>./logs/james.%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
</appender>
<appender name="JAMES-SERVER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>./logs/james-server.log</file>
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%-5level] %thread %logger{15}:%line - %msg%n%rEx</pattern>
<immediateFlush>false</immediateFlush>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>./logs/james-server.log.%d{yyyy-MM-dd}</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
</appender>
<logger name="org.domain.mypackage" level="DEBUG">
<appender-ref ref="JAMES-SERVER" />
</logger>
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="JAMES"/>
</root>
Apache James starting as
java -classpath "james-server-jpa-guice.jar:james-server-jpa-guice.lib/*:james-server-jpa-guice.lib" -javaagent:james-server-jpa-guice.lib/openjpa-3.0.0.jar -Dlogback.configurationFile=./conf/logback.xml -Dworking.directory=. org.apache.james.JPAJamesServerMain >> ./logs/james.log
All logs fine to james.log
but specific package above org.domain.mypackage
is not logged to james-server.log
but appears to be in james.log
Any thoughts on that?