Dies ist nur eine Warnung.
Befestigung von
Dies geschieht, wenn die Standardkonfigurationsdateien log4j.properties
y log4j.xml
nicht gefunden werden kann und die Anwendung keine explizite Konfiguration vornimmt.
Um dies zu beheben, erstellen/kopieren Sie einfach log4j.properties
o log4j.xml
in Ihren Standort auf der Klassenpfad (in der Regel die gleichen wie die jar-Dateien).
Setzen Sie optional die Option java: -Dlog4j.configuration=file:///path/to/log4j.properties
.
log4j
verwendet Thread.getContextClassLoader().getResource()
um die Standardkonfigurationsdateien zu finden und überprüft nicht direkt das Dateisystem. Das Wissen um den richtigen Speicherort für die log4j.properties
o log4j.xml
erfordert ein Verständnis der Suchstrategie des verwendeten Klassenladers. log4j
bietet keine Standardkonfiguration, da die Ausgabe auf die Konsole oder in das Dateisystem in einigen Umgebungen verboten sein kann.
Fehlersuche
Zur Fehlersuche können Sie versuchen, mit -Dlog4j.debug=true
Parameter.
Konfiguration von log4j.properties
Beispielhafte Konfiguration von log4j.properties
:
# Set root logger level to DEBUG and its only appender to A1.
log4j.rootLogger=DEBUG, A1
# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
# A1 uses PatternLayout.
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
# Print only messages of level WARN or above in the package com.foo.
log4j.logger.com.foo=WARN
Hier ist eine weitere Konfigurationsdatei, die mehrere Appenders verwendet:
log4j.rootLogger=debug, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=example.log
log4j.appender.R.MaxFileSize=100KB
# Keep one backup file
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
Apache Solr
Bei Verwendung von Solr , Kopie <solr>/example/resources/log4j.properties
an einer Stelle auf dem Klassenpfad .
Beispielhafte Konfiguration von log4j.properties
von Solr lautet wie folgt:
# Logging level
solr.log=logs/
log4j.rootLogger=INFO, file, CONSOLE
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%-4r [%t] %-5p %c %x \u2013 %m%n
#- size rotation with log cleanup.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.MaxFileSize=4MB
log4j.appender.file.MaxBackupIndex=9
#- File to log to and log format
log4j.appender.file.File=${solr.log}/solr.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%-5p - %d{yyyy-MM-dd HH:mm:ss.SSS}; %C; %m\n
log4j.logger.org.apache.zookeeper=WARN
log4j.logger.org.apache.hadoop=WARN
# set to INFO to enable infostream log messages
log4j.logger.org.apache.solr.update.LoggingInfoStream=OFF
Siehe auch: