2017-05-16 3 views
0

Nach Arbeiten ist der Inhalt meiner Datei log4j.properties:Grund log4j Beispiel nicht

log4j.logger.main = INFO, main 
log4j.logger.secondary = INFO, secondary 

log4j.appender.main=org.apache.log4j.RollingFileAppender 
log4j.appender.main.File=C:\\Workspace\\test\\main.log 
log4j.appender.main.MaxFileSize=1MB 
log4j.appender.main.MaxBackupIndex=1 
log4j.appender.main.layout=org.apache.log4j.PatternLayout 
log4j.appender.main.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1} - %m%n 

log4j.appender.secondary=org.apache.log4j.RollingFileAppender 
log4j.appender.secondary.File=C:\\Workspace\\test\\secondary.log 
log4j.appender.secondary.MaxFileSize=1MB 
log4j.appender.secondary.MaxBackupIndex=1 
log4j.appender.secondary.layout=org.apache.log4j.PatternLayout 
log4j.appender.secondary.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1} - %m%n 

Dies ist, wie meine Haupt-Methode sieht:

public static void main(final String[] args) 
    { 
     final Logger mainLogger = Logger.getLogger("main"); 
     final Logger secondaryLogger = Logger.getLogger("secondary"); 
     mainLogger.info("In main logger"); 
     secondaryLogger.info("In secondary logger"); 
    } 

Auf dieses Programm ausgeführt wird, ich bin in der Lage zu Sehen Sie sich die Protokollnachrichten in der Eclipse-Konsole an, aber ich bekomme meine zwei Protokolldateien nicht wie erwartet erstellt.

Kann mir bitte jemand sagen, was ich vermisse?

+0

Haben Sie versehentlich den java.util Logger verwendet? – Ishnark

+1

@Ishnark Vielen Dank, dass Sie darauf hingewiesen haben! Ja, es hatte tatsächlich java.util.Logger verwendet. Wenn es zu org.apache.log4j.Logger geändert wird, funktioniert das Programm wie erwartet. –

Antwort

0

Wie von Ishnark Eclipse die falsche Logger Klasse importiert aus Versehen hatte. Es hatte java.util.Logger anstelle von org.apache.log4j.Logger importiert. Beim Importieren der entsprechenden Logger-Klasse (von org.apache.log4j) funktioniert das Programm wie erwartet.

0

Haben Sie versuchen, zu definieren:

log4j.rootLogger=INFO, main, secondary 

statt:

log4j.logger.main = INFO, main 
log4j.logger.secondary = INFO, secondary