Estoy tratando de hacer que una llamada al registro dirija diferentes niveles de salida a diferentes ubicaciones. Quiero que todos los registros siempre vayan al archivo, y solo INFO y arriba para ir a la consola. ¿No es eso posible? Tengo lo siguiente y no funciona. Ambos son siempre los mismos:¿Cómo uso el archivo logback.groovy para registrar el nivel TRACE en el archivo y INFO en la consola
def bySecond = timestamp("yyyyMMdd'.'HHmmss", context.birthTime)
appender("STDOUT", ConsoleAppender) {
encoder(PatternLayoutEncoder) {
pattern = "%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"
}
}
appender("FILE", FileAppender) {
file = "./logs/log-${bySecond}.log"
encoder(PatternLayoutEncoder) {
pattern = "%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"
}
}
logger("com.crystal", WARN, ["STDOUT"])
logger("com.crystal", TRACE, ["FILE"])
root(TRACE)
scan()
¿Es posible dirigir el mismo mensaje de registro a dos lugares diferentes según niveles diferentes?
Etiquetado de su pregunta como "logback" sería de gran ayuda. – Ceki