Ich möchte, dass meine Anwendung in zwei Dateien protokolliert wird: die erste ist bereits vorhanden und protokolliert alles. Der zweite wird nur bedingt protokolliert.
Das ist meine log4j.properties:
log4j.rootCategory=DEBUG, FILE
log4j.logger.es.vf.pegaso=DEBBUG
log4j.logger.org=ERROR
log4j.logger.org.hibernate=ERROR
log4j.logger.org.displaytag=ERROR
log4j.logger.es.vf.pegaso.common.form.el.ElEvaluator=ERROR
log4j.logger.es.vf.pegaso.common.util.csvreader.CsvReaderElEvaluator=ERROR
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.file=log/test.log
log4j.appender.FILE.Threshold=DEBUG
log4j.appender.FILE.MaxFileSize=3MB
log4j.appender.FILE.MaxBackupIndex=10
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss,SSS}t%tt%-5pt[%c{1}]t%m%n
Um das Protokoll zu erstellen, mache ich es so:
private static final Logger logger = Logger.getLogger(*className*.class);
Ich habe es versucht, aber es schien nicht zu funktionieren:
log4j.category.App=FILE2
log4j.appender.FILE2=org.apache.log4j.FileAppender
log4j.appender.FILE2.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE2.layout.ConversionPattern=%-22d{dd/MMM/yyyy HH:mm:ss} - %m%n
log4j.appender.FILE2.file=application.log
Um den zweiten Logger anzurufen, mache ich das so:
private static final Logger applogger = Logger.getLogger("App");
Kann mir jemand sagen wo "s mein Fehler ist.
Danke im Voraus und beste Grüße.
Antworten:
0 für die Antwort № 1Versuche dies:
log4j.category.APP=DEBUG, FILE2
log4j.appender.FILE2.threshold=DEBUG
log4j.appender.FILE2=org.apache.log4j.FileAppender
log4j.appender.FILE2.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE2.layout.ConversionPattern=%-22d{dd/MMM/yyyy HH:mm:ss} - %m%n
log4j.appender.FILE2.file=application.log
0 für die Antwort № 2
Vielleicht musst du den zweiten Logger hinzufügen ... wie
log4j.logger.your.package=FILE2