Quiero usar logback logging con maven-jetty-plugin. Aparentemente, la propiedad del sistema logback.configurationFile se lee después de maven-jetty-plugin se inicia y ha inicializado slf4j, por lo que el archivo ./src/test/resources/logback.xml no se lee por el embarcadero. Como resultado, recibo todos los mensajes de registro configurados en nivel de depuración e impresos en la consola (una configuración de inicio de sesión predeterminada). Lanzar maven con -Dlogback.configurationFile = ... resuelve el problema. Sin embargo, preferiría configurar la propiedad en el pom ya que es posible con log4j y maven-jetty-plugin. Algunas ideas ?logback logging con maven-jetty-plugin
Aquí es mi pom.xml:
...
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.0.4.v20111024</version>
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.1</version>
</dependency>
</dependencies>
<configuration>
<systemProperties>
<systemProperty>
<name>logback.configurationFile</name>
<value>./src/test/resources/logback.xml</value>
</systemProperty>
</systemProperties>
...
Y aquí es logback.xml:
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logFile.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>logFile.%d{yyyy-MM-dd}.log</fileNamePattern>
</rollingPolicy>
<encoder>
<pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="FILE" />
</root>
</configuration>
Respuesta agradable y limpia. Como comparación, hago algo similar usando Gradle: http://thegreenoak.blogspot.com/2013/02/using-slf4j-and-logback-with-gradle.html – djangofan