Bonjour,

j'ai une classe "maClassePrincipale.java" qui m'affiche un fichier de log, pour ça pas de soucis.
Cette classe, selon certains cas fait appel à une autre classe "maClasseSecondaire.java" et j'aimerais que lorsque cette classe est appelée, un deuxième fichier de log soit créé.
Je voudrais en gros que le premier log m'affiche les messages de maClassePrincipale et le deuxième fichier m'affiche les messages de maClasseSecondaire.

J'arrive donc à créer les deux fichiers de log. SEULEMENT, le 2e fichier de log est TOUJOURS créé ! je voudrais qu'il ne soit généré que lorsque maClasseSecondaire est appelée. Si cette dernière n'est pas appelée, je ne dois pas générer de log

Voici la configuration de mon log4j
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
17
 
log4j.rootLogger = DEBUG, logger_principal
 
log4j.appender.logger_principal = org.apache.log4j.RollingFileAppender
log4j.appender.logger_principal.FILE=principal.log
log4j.appender.logger_principal.MaxFileSizz=10MB
log4j.appender.logger_principal.MaxBackupIndex=10
log4j.appender.logger_principal.layout=org.apache.log4j.PatternLayout
log4j.appender.logger_principal.layout.ConversionPatter=%d{yyyy-MM-dd HH:mm:ss.SSS} - %p - %c -%m%n
 
log4j.logger.com.package.MaClasseSecondaire=DEBUG, logger_secondaire
log4j.appender.logger_principal = org.apache.log4j.RollingFileAppender
log4j.appender.logger_principal.FILE=secondaire.log
log4j.appender.logger_principal.MaxFileSize=10MB
log4j.appender.logger_principal.MaxBackupIndex=10
log4j.appender.logger_principal.layout=org.apache.log4j.PatternLayout
log4j.appender.logger_principal.layout.ConversionPatter=%m%n
et voici comment je les déclare en java:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
public class MaClassePrincipale extends JavaTask implements JavaTaskListener {
 
private static final Logger logger = Logger.getLogger(MaClassePrincipale.class)
 ...
 
}

et la seconde classe:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
public class MaClasseSecondaire {
 
private static final Logger logger = Logger.getLogger(MaClasseSecondaire.class);
...
}
Si quelqu'un peut m'aider ça m’enlèverait une sacré épine du pied!