Bonjour,
Je développe actuellement une appli dont les threads écrivent tous dans le même fichier de log.
Je cherche le moyen de configurer log4j pour que chaque thread écrive dans un fichier différent.
Qqun aurait une idée ?
Merci d'avance !
Bonjour,
Je développe actuellement une appli dont les threads écrivent tous dans le même fichier de log.
Je cherche le moyen de configurer log4j pour que chaque thread écrive dans un fichier différent.
Qqun aurait une idée ?
Merci d'avance !
C'est possible si tu passes par des loggers nommés (et non pas le logger par défaut de ta classe).
Il te faut connaître le nombre maximal de threads de ton application, créer autant de loggers nommés "monLogger1", "monLogger2", "monLogger3", etc., et associer chacun de ces loggers à un fichier différent.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Logger logger = Logger.getLogger("nomDuLogger");
Tu associes un id numérique (de 1 à N) à chacun de tes threads, et tu utilises le logger associé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Logger logger = Logger.getLogger("monLogger" + idThread);
Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
Mes articles et tutoriaux & Mon blog informatique
Désolé de ne répondre que maintenant.
Merci pour l'info, je vais tester ça![]()
J'ai procédé comme indiqué, mais je n'arrive pas du tout à configurer le log4j.properties.
Pourrais-tu me montrer un exemple pour une classe du genre :
class Toto {
private final static Logger logger = Logger.getLogger("loggerToto");}
public Toto () {logger.info ("Démarrage de Toto");}
...
Partager