log4j
configuratie
Zoeken…
Log4j-eigenschappenbestand
Hieronder staat een configuratiebestand voor log4j. Log4j2 kan dezelfde syntaxis gebruiken, maar er zijn verschillende appender-klassen:
log4j.rootLogger=INFO, FOO
## ConsoleAppender
log4j.appender.CA=org.apache.log4j.ConsoleAppender
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
log4j.appender.CA.layout.ConversionPattern= %d{hh:mm:ss,SSS} [%t] %-5p %c %x - %m%n
## FileAppender
log4j.appender.FOO=org.apache.log4j.RollingFileAppender
log4j.appender.FOO.File=${catalina.home}/logs/app.log
log4j.appender.FOO.Append=true
log4j.appender.FOO.layout=org.apache.log4j.PatternLayout
log4j.appender.FOO.layout.ConversionPattern= %d{hh:mm:ss,SSS} [%t] %-5p %c %x - %m%n
## attaching appender to specific package:
log4j.logger.com.example.package=INFO, CA
Richtlijn log4j.rootLogger definieert log-niveau en appender voor een klasse die niet voldoet aan logger criteria. Merk op dat de name appender wordt gedefinieerd na het woord 'appender'.
Runtime-probleem met log4j-configuratie oplossen
Gebruikers kunnen geconfronteerd worden met het volgende probleem:
log4j:WARN No appenders could be found for logger (dao.hsqlmanager).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Een reden hiervoor kan zijn dat het bestand log4j.properties of .xml zich niet binnen het project zelf bevindt. (Dit kan gebeuren wanneer u een tool verzendt, waarbij de tool / JAR zich in één map bevindt en alle configuratie een andere map is).
U moet dan het pad naar het bestand log4j.properties of .xml opgeven. In het opdrachtregelprogramma
java -Dlog4j.configuration=file:///path/To/log4j.properties YourProject.jar
of als u een script hebt om de tool uit te voeren die u kunt toevoegen
-Dlog4j.configuration=file:///path/To/log4j.properties
naar de plaats waar u de equivalente actie van de opdrachtregelversie uitvoert. Niet dat log4j.configuration is opgegeven in een URL-indeling, voorafgegaan door file:/// .