[JAVA] Log4J: Generer des logs multiples

Log4J: Generer des logs multiples [JAVA] - Java - Programmation

Marsh Posté le 01-12-2011 à 14:42:55    

Bonjour,

 

J'ai un souci avec log4j:
J'ai une classe principale avec un logger:

 
Code :
  1. private static Logger logger = Logger.getRootLogger();
 

Comme le nom du log a créer est dynamique, je ne peux que configurer le logger dans le code (au lieu du fichier properties):

 
Code :
  1. // Get the jobID
  2. myJobID = args[0];
  3. // Initialize the logger
  4. FileAppender myFileAppender;
  5. try
  6. {
  7. myFileAppender = new FileAppender(new SimpleLayout(), myJobID + ".log", false);
  8. BasicConfigurator.configure(myFileAppender);
  9. } catch (IOException e1) {
  10. // TODO Auto-generated catch block
  11. e1.printStackTrace();
  12. }
 

Ma classe principale appelle ensuite une ou plusieurs classes indépendantes (grace a une CommandFactory). Chacune de ces classes a son propre logger, définit comme suit:

 
Code :
  1. private Logger logger = Logger.getLogger(maDeuxiemeClasse.class);
 

Maintenant, quand je lance mon programme, la classe principale ET la classe secondaire loggent des trucs, tout fonctionne très bien.

 

Les problèmes commencent quand je lance mon programme 2 fois en meme temps:
La deuxieme instance du programme va continuer a logger dans le log de la premiere instance (et en meme temps dans son propre log)

 

Donc si le programme a comme sortie:

 
Citation :

1
2
3
4
5
pouf

 

Si je le lance 2 fois avec quelques secondes de decalage, j'aurais:
Log2:

Citation :

1
2
3
4
5
pouf


Log1:

Citation :

1
2
3
1
2
3
4
5
pouf
4
5
pouf

 

J'ai un probleme d'instances de logger je pense - qqun a une idee ?

 

:jap:


Message édité par ParadoX le 01-12-2011 à 22:48:26

---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Marsh Posté le 01-12-2011 à 14:42:55   

Reply

Marsh Posté le 01-12-2011 à 15:45:25    

J'ai oublié de preciser que j'utilisais des Threads ...
Je suis tombé sur ca mais je ne sais pas trop quoi en faire:
http://www.manniwood.com/log4j_stuff/index.html


---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Marsh Posté le 01-12-2011 à 16:01:44    

bah tu utilises un seul logger, et tu lui rajoute un deuxieme appender en cours de route... donc ton comportement est normal.

Reply

Marsh Posté le 01-12-2011 à 16:16:09    

J'utilise un logger mais dans chaque Thread je lui donne un fichier de sortie different !


---------------
Pier noir la mèr - La chanson par HFR Band - Topic TrueCrypt
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed