Log4j - Realisierung mehrere Ausgabedateien

Status
Nicht offen für weitere Antworten.

Krabat

Bekanntes Mitglied
Die Konfigurationsdatei von Log4j verstehe ich noch nicht so ganz. Man kann das Logging level zwar einstellen und verschiedene Appender definieren, aber wie kann ich mehrere unterschiedliche Logdateien als Ausgaben für verschiedene Klassen definieren, so daß beispielsweise die Logs der Klasse "pkg.myapp.class1" nach "class1.log" geloggt werden und die Logs der Klasse "pkg.myapp.class2" nach "class2.log"? Ohne, daß die logs von class1 in class2.log auftauchen?

Meine log4j.properties sieht testweise bisher so aus:
Code:
log4j.rootCategory=WARN, CONSOLE, LOGFILE

# CONSOLE is set to be a ConsoleAppender using a PatternLayout.
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout

# LOGFILE is set to be a File appender using a PatternLayout.
log4j.appender.LOGFILE=org.apache.log4j.FileAppender
log4j.appender.LOGFILE.File=test.log
log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.Threshold=INFO
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n


log4j.logger.pkg.myapp.class1=DEBUG, KRBFILE

# LOGFILE is set to be a File appender using a PatternLayout.
log4j.appender.KRBFILE=org.apache.log4j.DailyRollingFileAppender
log4j.appender.KRBFILE.File=../log/class1.log
log4j.appender.KRBFILE.Append=true
log4j.appender.KRBFILE.Threshold=DEBUG
log4j.appender.KRBFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.KRBFILE.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
 

Gumble

Bekanntes Mitglied
hab vor kurzem selber mit log4j herumgewurschtelt: http://www.java-forum.org/de/viewtopic.php?p=179114#179114

finde das 'properties' konfigurieren nicht sonderlich uebersichtlich, deshalb schlag ich vor, du tust das im xml.
Da einfach deine zwei Limiter auf zwei unterschiedliche Appender (hier KRBFILE und FILE) referenzieren:
Code:
<category name="pkg.myapp.class2">
    <priority value="DEBUG"/>
    <appender-ref ref="KRBFILE"/>
 </category>  

<category name="pkg.myapp.class2">
    <priority value="INFO"/>
    <appender-ref ref="FILE"/>
 </category>
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben