2010-02-18 4 views
0

Je ne suis pas sûr de ce que je pourrais faire de mal et que les messages de niveau info ne s'affichent pas. Voici la situationjava log4j Problème de niveau INFO

class LogTest { 
     protected final Logger logger = Logger.getLogger(getClass()); 
     ... 
     public void start() { 
      logger.error(logger.isInfoEnabled()); 
       logger.info("blah"); 
     } 
     ... 
    } 

enregistreur n'est pas référencé nulle part ailleurs dans la classe.

est ici la sortie:

ERROR 2010-02-18 09:14:01,489 com.company.test.Test - true 

Je ne sais pas quoi d'autre pour vérifier afin d'obtenir des informations de travail .. selon l'enregistreur est activé.

+0

pouvez-vous après votre configuration log4j? log4j.properties ou log4j.xml? – fasseg

+0

Comment ressemble le fichier log4.properties? – giladbu

Répondre

4

Vous pouvez avoir un appender qui ne fonctionne que sur WARN ou supérieur ou vous pourriez avoir configuré un filtre.

+1

INFO est susceptible d'être filtré dans n'importe quelle sortie de journalisation que vous regardez (console/fichier). Vous pouvez également définir le filtre par paquet. – Dolph

+0

C'était un appender, merci. +1 à Dolph aussi puisque je n'avais pas envisagé cette possibilité. – insipid

2

Assurez-vous d'avoir défini le niveau d'enregistrement approprié. De plus, slf4j et/ou logback sont les bibliothèques de journalisation les plus récentes et préférées.

Vous pouvez modifier le niveau de journalisation en procédant comme suit: logger.setLevel(Level.INFO);

+0

Le problème est ** pas ** le niveau de journalisation de l'enregistreur, comme indiqué par la sortie du programme. –

Questions connexes