Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

log4j : vider la log

4 réponses
Avatar
Cenekemoi
Bonjour à tous,

j'utilise log4j et j'ai un "appender" de type FileAppender (défini dans
un "log4j.propreties").

SVP, connaissez-vous le moyen le plus propre de "vider / réinitialiser"
cette log ?
Je ne trouve pas de méthode adéquate avec log4j...
Doit-on obligatoirement passer par un "write natif" ?

Merci d'avance de vos idées...

--
Cordialement, Thierry ;-)

4 réponses

Avatar
Antoine
Je ne pense pas que Log4J offre des methodes pour vider le contenu de
ton fichier de log.
Oui, tu dois donc le vider via le "write natif".
Sinon, si ton probleme est que tes fichiers de logs deviennent trop
volumineux, tu peux utiliser le RollingFileAppender qui va ecrire dans
des nouveaux fichiers tous les jours par ex.

Antoine.


Bonjour à tous,

j'utilise log4j et j'ai un "appender" de type FileAppender (défini dans
un "log4j.propreties").

SVP, connaissez-vous le moyen le plus propre de "vider / réinitialiser"
cette log ?
Je ne trouve pas de méthode adéquate avec log4j...
Doit-on obligatoirement passer par un "write natif" ?

Merci d'avance de vos idées...

--
Cordialement, Thierry ;-)


Avatar
Cenekemoi
Je ne pense pas que Log4J offre des methodes pour vider le contenu de
ton fichier de log.


dommage...

Oui, tu dois donc le vider via le "write natif".
Sinon, si ton probleme est que tes fichiers de logs deviennent trop
volumineux, tu peux utiliser le RollingFileAppender qui va ecrire dans
des nouveaux fichiers tous les jours par ex.


Non, le besoin est de pouvoir facilement "vider" la log pour un test
particulier sans devoir en récupérer un mo (ou +).
Et ceci sans avoir à aller sur le serveur d'application pour modifier le
fichier "à la main".

C'est pourquoi je reste étonné que ce besoin ne soit pas plus courant...

--
Cordialement, Thierry ;-)

Avatar
Jean
...
SVP, connaissez-vous le moyen le plus propre de "vider / réinitialiser"
cette log ?
Je ne trouve pas de méthode adéquate avec log4j...
Doit-on obligatoirement passer par un "write natif" ?
...


Bonjour,
Je ne sais pas si cela répond à votre question, du fait qu'il n'y ait
pas un vidage des logs mais un genre de logrotate.
Ceci est parfaitement paramétrable dans votre fichier de propriété de log4j.

Par exemple:

# logs vers logFile.log
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=./path/to/logFile.log

# Rotate tous les 2000Kb et 5 fichiers de backup de log.
log4j.appender.R.MaxFileSize 00KB
log4j.appender.R.MaxBackupIndex=5

Bonne journée.

--

- Jean -
(jiheshem chez yahoo en france)

Avatar
Cenekemoi
...
SVP, connaissez-vous le moyen le plus propre de "vider /
réinitialiser" cette log ?
Je ne trouve pas de méthode adéquate avec log4j...
Doit-on obligatoirement passer par un "write natif" ?
...


Bonjour,
Je ne sais pas si cela répond à votre question, du fait qu'il n'y ait
pas un vidage des logs mais un genre de logrotate.
Ceci est parfaitement paramétrable dans votre fichier de propriété de
log4j.
Par exemple:

# logs vers logFile.log
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=./path/to/logFile.log

# Rotate tous les 2000Kb et 5 fichiers de backup de log.
log4j.appender.R.MaxFileSize 00KB
log4j.appender.R.MaxBackupIndex=5

Bonne journée.


Merci pour votre réponse, mais j'utilise déjà ces possibilités...

Pour conclure -et si cela intéresse quelqu'un, voici ce que j'ai fait :

<code_java>
FileAppender fa = mon_fileAppender();
if (fa != null) {
try {
fa.setFile(fa.getFile(), false, fa.getBufferedIO(),
fa.getBufferSize());
} catch (Exception e) {
System.out.println("Erreur setFile("+fa.getFile()+"): "+ e);
}
}

</code_java>

...et ça fonctionne parfaitement !

Tout se joue dans le deuxième paramètre (false) qui réinitialise le
fichier à son ouverture par le "setFile"...

--
Cordialement, Thierry ;-)