Це лише попередження.
Закріплення
Це відбувається, коли конфігураційні файли за замовчуванням log4j.properties
і log4j.xml
їх неможливо знайти, і програма не виконує явної конфігурації.
Щоб виправити це, просто створювати / копіювати log4j.properties
або log4j.xml
в ваше місце на шляху до класів ( як правило , такі ж , як в банку файли).
За бажанням можна вказати варіант Java: -Dlog4j.configuration=file:///path/to/log4j.properties
.
log4j
використовує Thread.getContextClassLoader().getResource()
для пошуку файлів конфігурації за замовчуванням і не перевіряє безпосередньо файлову систему. Знання відповідного місця для розміщення log4j.properties
або log4j.xml
вимагає розуміння стратегії пошуку використовуваного завантажувача класів. log4j
не забезпечує конфігурацію за замовчуванням, оскільки вихід у консоль або у файлову систему може бути заборонений у деяких середовищах.
Налагодження
Для налагодження ви можете спробувати використовувати -Dlog4j.debug=true
параметр.
Конфігурація log4j.properties
Зразок конфігурації 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
Ось ще один файл конфігурації, який використовує кілька додатків:
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
Якщо ви використовуєте Solr , скопіюйте <solr>/example/resources/log4j.properties
в місце розташування на шляху .
Зразок конфігурації log4j.properties
від Solr виглядає так:
# 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
Дивись також: