web-dev-qa-db-fra.com

les propriétés de log4j DailyRollingFileAppender ne fonctionnent pas

Je veux des journaux quotidiens avec le fichier journal ajouté avec la date au format aaaa-jj-mm. Lorsque j'utilise DailyRollingFileAppender, un nouveau fichier journal n'est pas créé. Les journaux sont écrits dans le même fichier journal. De plus, le modèle de date fourni n'est pas pris en compte. Le fichier journal créé est LoggerFile.log. Et chaque contenu (même le lendemain) est écrit dans ce fichier. 

J'utilise le bocal log4j-1.2.17. Je développe sous Netbeans 7.3.1 en Java. 

Quelqu'un utilise-t-il ce fichier JAR et est-il confronté à un tel problème? S'il vous plaît aider!

Voici le contenu du fichier de propriétés que j'utilise:

# Root logger option
log4j.rootLogger=ERROR,FILE,stdout

# Define the file appender
log4j.appender.FILE=org.Apache.log4j.DailyRollingFileAppender

log4j.appender.FILE.File=.//..//logs//LoggerFile.log

# Define the layout for file appender
log4j.appender.FILE.DatePattern='.'yyyy-MM-dd
log4j.appender.FILE.layout=org.Apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS zzz} %5p     %c{1}:%L - %m%n

log4j.appender.FILE.MaxFileSize=10MB


# Direct log messages to stdout
log4j.appender.stdout=org.Apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.Apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L -  %m%n`
12
Nitin Kundapur Bhat

J'avais des exigences similaires en ce qui concerne la rotation quotidienne des fichiers journaux. (Bien que la question soit plus ancienne, je pensais que la réponse aiderait les autres) ..

Points clés:

  1. Tout d'abord, nous pouvons éviter d'utiliser DailyRollingFileAppender. Pourquoi? On a observé que DailyRollingFileAppender présentait des problèmes de synchronisation et une perte de données. Le complément log4j inclut des alternatives qui devraient être prises en compte pour les nouveaux déploiements et qui sont décrites dans la documentation d’org.Apache.log4j.rolling.RollingFileAppender. Référence: Documentation de l'applicateur de fichier roulant quotidien

  2. Apache extras log4j, Suggérerait d’utiliser org.Apache.log4j.rolling.RollingFileAppender avec la règle évolutive basée sur le temps }

  3. Peut trouver une configuration exemple pour la rotation du journal en fonction du temps.

J'espère que cela t'aides.

4

Tout d’abord, vous avez une erreur car la variable DailyRollingFileAppender ne prend pas en charge la propriété MaxFileSize.

Ensuite, vous pouvez essayer de supprimer le caractère ' de la DatePattern:

Essayez de changer

log4j.appender.FILE.DatePattern='.'yyyy-MM-dd

à

log4j.appender.FILE.DatePattern=.yyyy-MM-dd
0
Enrico Lebanane