Bonjour à tous,
j'ai un problème avec log4j.
Je voudrais logger dans un fichier de log et pas dans la console mais quand j'execute mon programme il n'écrit rien dans mon fichier de log, le fichier reste vide. Au lieu de ça, je vois mes logs dans la console.
J'ai fait un fichier de configuration pour log4j que voici :
et voilà ce qu'il y a dans mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 log4j.rootLogger=DEBUG,stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%-4r %-5p [%t] %c %3x - %m%n log4j.logger.simulateurtpe=INFO,fichier log4j.appender.fichier=org.apache.log4j.DailyRollingFileAppender log4j.appender.fichier.File=/data/log/SimulateurTPE.log log4j.appender.fichier.DatePattern='.'yyyy-MM-dd log4j.appender.fichier.layout=org.apache.log4j.PatternLayout log4j.appender.fichier.layout.ConversionPattern=%d %-5p %c - %F:%-4L - %m%n
et une classe Main :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public abstract class MessageApplicatif { private static final Logger logger = Logger.getLogger("simulateurtpe"); . . . logger.log(Level.INFO, "test");
Mon programme a bien créé le fichier de log, mais ensuite il ne log pas dedans, il log sur la console. Je ne comprend pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 public class Main { /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here PropertyConfigurator.configure("/data/conf/SimulateurTPELogger.conf"); SimulateurJFrame fenetre = new SimulateurJFrame(); fenetre.setVisible(true); } }
Merci à vous pour votre aide![]()
Partager