2010-01-06 5 views
5

Je possède ce code avec log4j, je ne l'utilise tout type de fichiers de configurationpasser de log4j à 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"); 

quelqu'un peut-il me montrer comment puis-je faire la même chose avec logback

Répondre

6

Pourquoi Est-ce que vous n'utilisez pas de fichiers de configuration? Est-ce parce que vous modifiez la configuration de la journalisation lors de l'exécution?

À moins que vous n'ayez une raison très précise de le faire, la configuration de votre infrastructure de consignation à l'aide de fichiers de configuration me semble plus raisonnable.

Si vous utilisez des fichiers de configuration, la configuration pourrait être quelque chose le long de ces lignes:

<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> 

Pour le NTEventLogAppender, à ma connaissance, il n'existe pas pour logback. Mais le portage d'un appender de log4j à logback est une tâche assez facile, donc vous devriez être capable de créer votre propre appender.

Si vous avez besoin de configurer l'appender par programmation, vérifiez les logback documentation et examples: vous pourriez trouver quelques idées là-bas.

Espérons que cela aide ...