[LOG4J] [v1.2.13] Utiliser le Level.TRACE
Bonjour,
j'ai un petit soucis avec LOG4J et la fonction trace().
J'utilise la version 1.2.13 (j'ai aussi testé avec la version 1.3alpha8).
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| public class Main {
private final Logger logger = Logger.getLogger(Main.class);
public static void main(String[] args) throws ConfigurationException {
new Main().run();
}
public void run() throws ConfigurationException {
// Init log4J !
DOMConfigurator.configure("my.log4j.xml");
logger.info("Application started");
logger.debug("Debug 1");
logger.log(Level.TRACE, "Trace 1");
logger.debug("Debug 2");
System.exit(0);
}
} |
et le fichier my.log4j.xml...
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="log" class="org.apache.log4j.ConsoleAppender">
<param name="threshold" value="TRACE"/>
<param name="target" value="System.out"/>
<layout class="org.apache.log4j.SimpleLayout"/>
</appender>
<root>
<appender-ref ref="log" />
</root>
</log4j:configuration> |
Si je modifie le threshold à INFO, j'ai 1 message, à DEBUG, j'en ai 3, mais si je mets TRACE ou ALL, je ne vois toujours pas le 4e message (Trace 1).
Je cherche depuis 2 jours sans succès. J'ai même changé la méthode logger.trace("") par logger.log(Level.TRACE,""), mais c'était un bug de la version 1.2.12. J'ai testé la version 1.3alpha8, et c'est idem !
Une idée ?
Merci