Questo è solo un avvertimento.
Fissaggio
Ciò si verifica quando i file di configurazione di default log4j.propertiese log4j.xmlnon può essere trovato e le esegue applicazioni alcuna configurazione esplicita.
Per risolvere il problema, è sufficiente creare / copiare log4j.propertieso log4j.xmlnella propria posizione sul percorso di classe (di solito lo stesso dei file jar).
Opzionalmente impostare l'opzione java: -Dlog4j.configuration=file:///path/to/log4j.properties.
log4jutilizza Thread.getContextClassLoader().getResource()per individuare i file di configurazione predefiniti e non controlla direttamente il file system. Conoscere la posizione appropriata da posizionare log4j.propertieso log4j.xmlrichiede la comprensione della strategia di ricerca del caricatore di classi in uso. log4jnon fornisce una configurazione predefinita poiché l'output sulla console o sul file system potrebbe essere vietato in alcuni ambienti.
Debug
Per il debug, puoi provare a utilizzare il -Dlog4j.debug=trueparametro.
Configurazione di log4j.properties
Esempio di configurazione di 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
Ecco un altro file di configurazione che utilizza più appendici:
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
Se si utilizza Solr , copiarlo <solr>/example/resources/log4j.propertiesin una posizione sul percorso di classe .
La configurazione di esempio di log4j.propertiesda Solr è simile a:
# 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
Guarda anche: