J'utilise le code suivant dans mon projet pour enregistrer les messages de débogage avec log4j
private static final Logger LOG = Logger.getLogger(MyClass.class)
// ...
if(LOG.isDebugEnabled()) {
LOG.debug("my log message");
}
Je peux confirmer que ma configuration log4j est correcte en ajoutant un point d'arrêt à la ligne où le message de débogage est écrit, c'est-à-dire que LOG.isDebugEnabled()
renvoie true
. Fait intéressant, mon message de débogage n'apparaît pas dans la console de mon IDE (IntelliJ), toutefois, lorsque vous remplacez LOG.debug()
par LOG.info()
, le message d’information est enregistré comme prévu.
Des idées que je devrais rechercher afin de découvrir ce qui ne va pas ici?
EDIT: voici mon fichier log4j.properties
log4j.appender.Stdout=org.Apache.log4j.ConsoleAppender
log4j.appender.Stdout.layout=org.Apache.log4j.PatternLayout
log4j.appender.Stdout.layout.conversionPattern=%-5p [%d{dd.MM.yy HH:mm:ss}] %C{1} - %m [thread: %t]\n
log4j.appender.Stdout.threshold=info
log4j.appender.StandaloneFile=org.Apache.log4j.RollingFileAppender
log4j.appender.StandaloneFile.File=logs/standalone.log
log4j.appender.StandaloneFile.MaxFileSize=5MB
log4j.appender.StandaloneFile.MaxBackupIndex=20
log4j.appender.StandaloneFile.layout=org.Apache.log4j.PatternLayout
log4j.appender.StandaloneFile.layout.ConversionPattern=%-5p [%d{dd.MM.yy HH:mm:ss}] %C{1} - %m [thread: %t]\n
log4j.appender.StandaloneFile.threshold=info
log4j.rootLogger=info, Stdout, StandaloneFile
log4j.logger.com.myPacke.package1=info, Stdout, StandaloneFile
log4j.logger.com.myPacke.package2=DEBUG
log4j.appender.Stdout.threshold=info
Devrait être:
log4j.appender.Stdout.threshold=debug
Vous définissez simplement le seuil de la console sur info, vous n'obtiendrez donc pas de journaux de niveau de débogage.
Sachez que vous définissez également le seuil RollingFileAppender sur info en tant que commentaire @Stephen C.
Assurez-vous que votre configuration est inférieure à appender ... Nous avons utilisé log4j.xml, donc j'ajoute du xml
<appender name="console" class="org.Apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<param name="Threshold" value="info" />
<layout class="org.Apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p: %c - %m%n" />
</layout>
</appender>
<appender name="logfile" class="org.Apache.log4j.RollingFileAppender">
<param name="File" value="log/dcm_migration.log" />
<param name="Append" value="false" />
<layout class="org.Apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p [%c{1}] %m %n" />
</layout>
</appender>