В Java Как создать свой собственный уровень ведения журнала с помощью Log4j (Настройка Log4j 2)

Опубликовано: 2017-07-26
В Java Как создать свой собственный уровень ведения журнала с помощью Log4j 2

Если вам нужно добавить свой уровень логирования в Log4j, то сделать это можно следующим образом. Вам нужно будет создать свой собственный класс, который будет расширяться от Level , Custom Log Levels с Apache Log4j 2.

Log4j — это простая и гибкая logging framework . Ведение журнала предоставляет разработчику подробный контекст сбоев приложений. С помощью log4j можно включить ведение журнала во время выполнения без изменения двоичного файла приложения.

Пакет log4j разработан таким образом, что эти операторы могут оставаться в поставляемом коде без значительных потерь производительности.

Как создать собственный уровень ведения журнала в Log4j (настройка Log4j)

Log4j позволяет регистрировать запросы на печать в несколько мест назначения. Говоря языком log4j, пункт назначения вывода называется appender . Они варьируются от консоли, файлов, компонентов графического интерфейса, удаленных серверов сокетов до JMS.

Jar-файл, который вам нужен.

Вот зависимость Maven:

Обновите Log4j до последней версии

CVE-2021-44228: функции Apache Log4j2 <= 2.14.1 JNDI, используемые в конфигурации, сообщениях журнала и параметрах, не защищают от контролируемых злоумышленниками LDAP и других конечных точек, связанных с JNDI.

Начиная с log4j 2.16.0, это поведение отключено по умолчанию.

Вы должны поместить файл log4j.xml в папку /resources :

файл log4j.xml в папке ресурсов

Вот пример кода Java для:

  • Log4j Logging для пользовательских уровней журнала в Java
  • Создание собственного уровня логирования в log4j
  • Пример пользовательского регистратора log4j

CrunchifyLog4jLevel.java

Другой должен прочитать:

  • Как запустить Stop Apache Tomcat Server через командную строку? (Установка как служба Windows)
  • Создание и развертывание простого веб-сервиса и клиента веб-сервиса в Eclipse

Вот содержимое файла log4j.xml

CrunchifyLog4jLevelTest.java

Запустите тестовую программу, и вы должны увидеть результат ниже в Eclipse's Console .

Значение int, которое вы указываете для своего уровня журнала, важно. Здесь я определил, что уровень журнала « CRUNCHIFY » должен быть выше уровня DEBUG , но ниже уровня TRACE , предоставляемого log4j.

Поэтому всякий раз, когда вы устанавливаете уровень приоритета DEBUG для категории (в вашем файле log4j.xml ), журналы уровня CRUNCHIFY НЕ попадут в файл журнала.