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 :
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 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
 
public abstract class MessageApplicatif {
 
    private static final Logger logger = Logger.getLogger("simulateurtpe");
  .
  .
  .
 
logger.log(Level.INFO, "test");
et une classe Main :
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);
 
    }
 
}
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.

Merci à vous pour votre aide