Estamos migrando a logback desde log4j para varias aplicaciones web. En el cierre de nuestra aplicación actualmente llamamos:¿Debo limpiar los eventos al cerrar usando logback?
org.apache.log4j.LogManager.shutdown();
que se supone para limpiar todo el registro asíncrono y cerrar todos los recursos externos (archivos, enchufes).
¿Hay algo similar en el logback o de alguna manera se vacía automáticamente al apagarlo?
Mike
pregunta interesante - Me nunca pensé en esto. Como tiene que configurar explícitamente log4j en la salida del búfer, habría supuesto que el cierre solo debería llamarse en ese caso. Sin embargo, creo que los búfers slf4j por defecto. –
logback se vacía después de cada declaración de registro, por lo que no es necesario realizar una llamada explícita a stop() a menos que esté haciendo algo funky. –
@DavidRoussel Esa afirmación me hizo buscar [Logback Appenders] (http://logback.qos.ch/manual/appenders.html). De hecho: _Por defecto, cada evento de registro se vacía inmediatamente a la secuencia de salida subyacente. Este enfoque predeterminado es más seguro en el sentido de que los eventos de registro no se pierden en caso de que su aplicación finalice sin cerrar adecuadamente los appenders. Sin embargo, para un rendimiento de registro significativamente mayor, es posible que desee establecer la propiedad InstantFlush del Encoder subyacente en falso. Los codificadores y, en particular, LayoutWrappingEncoder se describen en un capítulo separado. –