log4j - Java - Programmation
Marsh Posté le 22-07-2004 à 14:41:59
OK, j'ai compris... j'avais mal lu la doc de log4j :
log4j.configuration sert à donner un autre nom que log4j.properties
et ça marche très bien.
Marsh Posté le 22-07-2004 à 17:15:25
si ton appli est exécutée dans un serveur d'application, tu peux aussi utiliser les classloaders pour faire ca.
Par exemple tu mets ton log4j.properties dans le WEB-INF/classes de ton appli, et log4j le trouvera à cet endroit là en premier.
Marsh Posté le 22-07-2004 à 22:07:46
t'as aussi l'option d'initializer log4j toi meme pour ta vm avec les xxxConfigurator
(au lieu de le laisser trouver un log4j.properties sur le classpath)
http://logging.apache.org/log4j/do [...] rator.html
Marsh Posté le 22-07-2004 à 22:09:31
d'ailleurs je crois avoir déjà posté du code ici qui utilisait le DomConfigurator (dans un ServletContextListener mais bon)
Marsh Posté le 22-07-2004 à 23:22:02
tu devrais mettre un appender static une fois pour toute dans ton application, puisque tu vas tout le temps utiliser le même.
Marsh Posté le 22-07-2004 à 14:32:45
grr... je sèche lamentablement depuis 1h...
Soit une appli.
Elle utilise log4j.
Elle utilise la classpath standard du système $CLASSPATH
Dans ce classpath que je ne contrôle pas et que je ne peux pas changer se trouve un fichier log4j.properties.
Je veux que mon appli utilise son propre log4j.properties.
Si je ne fais rien, elle utilise celui qu'elle trouve dans le classpath et pollue les logs d'une autre appli.
Si je passe à mon appli -classpath $MONLOG4J:$CLASSPATH, elle utilise quand même le log4j qu'elle trouve dans $CLASSPATH
Quand j'essaye de passer à mon appli -Dlog4j.configuration=/monChemin/log4j.properties
Je me prends :
Une idée ??
Message édité par krosso le 22-07-2004 à 14:33:38