Definición de 1 archivo de inicio de sesión por nivel [duplicado]
Esta pregunta ya tiene una respuesta aquí:
¿Cómo puedo configurar Logback para registrar diferentes niveles para un registrador en diferentes destinos? 12 respuestasMe gustaría definir un archivo de configuración de inicio de sesión que pueda:
log DEBUG (y versiones superiores) en debug.loglog INFO (y versiones superiores) en info.logEs decir, cuando llamo:
logger.warn("blah"); // Logs to both info.log and debug.log
logger.debug("bleh"); // Logs to debug.log only
Es posible
He intentado algo como esto, pero parece que cuando el inicio de sesión encuentra múltiples etiquetas <root>, solo toma la última:
<appender name="infoFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${LOGS_FOLDER}/info.log</File>
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<appender name="debugFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${LOGS_FOLDER}/debug.log</File>
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="infoFile" />
</root>
<root level="DEBUG">
<appender-ref ref="debugFile" />
</root>
Aquí, info.log contiene registros de nivel de depuración:
Nota que quiero aplicar este comportamiento encad de mis paquetes.