2010-01-06 14 views
5

tengo este código con log4j, yo no uso de cualquier tipo de archivos de configuracióncambio de log4j a logback

static Logger logger = Logger.getLogger(Application.class); 

... 

Appender ap = new NTEventLogAppender(); 

SimpleLayout layout = new SimpleLayout(); 
Appender fp = null; 
try { 
    fp = new FileAppender(layout, "output.txt"); 
} catch (IOException e) {   
    e.printStackTrace(); 
} 

logger.addAppender(ap); 
logger.addAppender(fp); 

logger.info("info"); 

¿Alguien puede mostrar cómo puedo hacer lo mismo con logback

Respuesta

6

Por qué ¿es que no usas archivos de configuración? ¿Es porque cambias la configuración de registro en tiempo de ejecución?

A menos que tenga una razón muy específica para hacerlo, la configuración de su estructura de registro usando archivos de configuración me parece más razonable.

Si utiliza archivos de configuración, la configuración puede ser algo por el estilo:

<configuration> 
    <appender name="FILE" class="ch.qos.logback.core.FileAppender"> 
    <file>output.txt</file> 
    <layout class="ch.qos.logback.classic.PatternLayout"> 
     <Pattern>%level - %msg%n</Pattern> 
    </layout> 
    </appender> 

    <root level="debug"> 
    <appender-ref ref="FILE" /> 
    </root> 
</configuration> 

Para el NTEventLogAppender, que yo sepa, no existe para logback. Pero transportar un appender de log4j a logback es una tarea bastante fácil, por lo que debería poder crear su propio appender.

Si necesita configurar el appender mediante programación, consulte logback documentation y examples: puede encontrar algunas ideas allí.

Espero que esto ayude ...