Можно ли одновременно настроить Log4j2 с помощью .xml и .properties?

#java #logging #log4j #log4j2

#java #ведение журнала #log4j #log4j2

Вопрос:

Как указано выше, можно ли настроить log4j2 одновременно с .xml и .properties? И если это возможно, что имеет приоритет при изменении общей конфигурации?

Ответ №1:

Это прямой ответ

Во-первых: зачем вам иметь несколько файлов конфигурации? Мне кажется, вам следует попытаться собрать всю вашу конфигурацию в один файл, если это вообще возможно.

В документации для Log4J2 говорится, что автоматическая настройка сначала будет искать системное свойство «log4j.configurationFile», которое указывает на один конфигурационный файл в файловой системе, который загружается в зависимости от типа файла.

Если это не найдено, он будет искать:

  1. .properties
  2. .yml
  3. .json
  4. .xml

В таком порядке.

Для меня это означает, что вы можете использовать только один.

Это обеспечивает другой подход

Однако вы можете программно настроить регистратор, который может комбинировать файл конфигурации с другим набором конфигураций.

Если вы хотите, например, объединить метод Configurator с конфигурацией XML, то, по-видимому, вам нужно использовать ConfigurationFactory, чего я никогда раньше не делал, хотя, если вы понимаете структуру Log4J2, это не выглядит слишком сложным — в основном расширение ConfigurationFactory , переопределение методов для настройки, а затем предоставлениезавод Configurator .

Дополнительные ссылки:

Вот документация по программной конфигурации

Вот полезная статья Baeldung для программной настройки