Невозможно настроить уровень журнала моего приложения для отладки, мой log4j2.properties вообще читается?JAVA

Программисты JAVA общаются здесь
Anonymous
Невозможно настроить уровень журнала моего приложения для отладки, мой log4j2.properties вообще читается?

Сообщение Anonymous »

Я пытаюсь инициализировать log4j2 в своем приложении сервлета (apache-tomcat 9).
Этот код

Код: Выделить всё

private static Logger logger = LogManager.getLogger(MyClass.class) ;
...
Enumeration enumerator = LogManager.getLoggerRepository().getCurrentLoggers() ;
while(enumerator.hasMoreElements()) {
System.out.println("Logger ->"+((Logger)enumerator.nextElement()).getLevel().toString()) ;
}
enumerator = LogManager.getLoggerRepository().getCurrentLoggers() ;
while(enumerator.hasMoreElements()) {
System.out.println("Logger ->"+((Logger)enumerator.nextElement()).getName().toString()) ;
}
выводит на консоль приведенное ниже сообщение

Код: Выделить всё

Logger ->ERROR
Logger ->DEBUG
Logger ->my.package.first.MyClass
Logger ->root
В моем коде в этой папке есть файл log4j2.properties

src/main/webapp/WEB-INF /

Это мой контент log4j2.properties

Код: Выделить всё

# Set root logger level to DEBUG and its only appender to Console
log4j.rootLogger=DEBUG, Console

# Console appender configuration
log4j.appender.Console.type=Console
log4j.appender.Console.name=STDOUT
log4j.appender.Console.layout.type=PatternLayout
log4j.appender.Console.layout.pattern=%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1} - %m%n

# Define appenders
appender.console.type = Console
appender.console.name = CONSOLE
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %highlight{%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n}{FATAL=red, ERROR=red, WARN=yellow, INFO=green, DEBUG=blue}

appender.file.type = File
appender.file.name = FILE
appender.file.fileName = logs/application.log
appender.file.layout.type = PatternLayout
appender.file.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n

# Define loggers
rootLogger.level = INFO
rootLogger.appenderRef.console.ref = CONSOLE
rootLogger.appenderRef.file.ref = FILE

logger.my.package.first.name = my.package.first
logger.my.package.first.level = DEBUG
logger.my.package.first.appenderRef.file.ref = FILE

logger.my.package.second.name = my.package.second
logger.my.package.second.level = DEBUG
logger.my.package.second.appenderRef.file.ref = FILE
Мой src/main/webapp/WEB-INF/web.xml имеет следующее содержимое

Код: Выделить всё

[*]
org.apache.logging.log4j.web.Log4jServletContextListener



log4jConfiguration
log4j2.properties



log4j2.debug
true


log4j2.verbose
true


log4j.shutdownHookEnabled
true

Я скачал следующие файлы и скопировал их в папку tomcat/lib
  • log4j-web-2.24. 0
  • log4j-core-2.24.0
  • log4j-api-2.24.0
  • log4j- jul-2.24.0
Я ссылался на множество ссылок на SO
  • Одна ссылка намекала, что не удалось найти файл log4j2.properties, поэтому я скопировал log4j2.properties в папки lib, conf, webapps, webapps/myapp, webapps/myapp/classes и проверил, не повезло, та же ошибка
  • Другие ссылки намекают на то, что контент может быть неправильным.
Почему мой файл log4j2.properties не выполняет Отладку для моего. пакет?

Подробнее здесь: https://stackoverflow.com/questions/790 ... being-read

Вернуться в «JAVA»