log4j.appender.file.MaxBackupIndex=5 //означает пять файлов + один активный.
3) Файлы лога должны содержать 6 последних файлов. Если шестой файл уже заполнен (имеет размер 5Мб), то нужно удалить самый первый и создать новый. //подстава в этом пункте, не последних, а всего файлов.
ПОдскажите пожалуйста , все библиотеки аткуальные версии установил но ошибка остается
SLF4J(W): No SLF4J providers were found.
SLF4J(W): Defaulting to no-operation (NOP) logger implementation
SLF4J(W): See https://www.slf4j.org/codes.html#noProviders for further details.
SLF4J(W): Class path contains SLF4J bindings targeting slf4j-api versions 1.7.x or earlier.
SLF4J(W): Ignoring binding found at [jar:file:/C:/Users/pokro/Downloads/log4j-slf4j-impl-2.24.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J(W): See https://www.slf4j.org/codes.html#ignoredBindings for an explanation.
После подключения библиотеки slf4j.api была ошибка "SLF4J: No SLF4J providers were found.".
Подключил библиотеку slf4j.simple с той же версией как у slf4j.api и ошибка исчезла.
Для тех, у кого, как и у меня, не получалось подключить все эти темки:Тыкаете сюда, выбираете популярные сообщения, там найдете все необходимые библиотеки.
Я столкнулся с такой ошибкой, когда подключил библиотеку slf4j:
SLF4J: No SLF4J providers were found.
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#noProviders for further details.
Решить ее удалось следующим способом.
1. Подключил Maven к проекту в IntelliJ IDEA.
- для этого зашел в help -> find action -> add feamework support;
- в открывшемся окне поставил галку напротив Maven и нажал OK;
- увидел, что в корневой папке появился файл pom.xml.
Этот файл пригодится нам для установления зависимостей dependencies. Зависимости позволяют увязать подключенные библиотеки с проектом. Об этом ниже в п.4.
2. Нашел и скачал следующие библиотеки отсюда https://mvnrepository.com/:
- log4j-api-2.20.0.jar
- log4j-core-2.20.0.jar
- log4j-slf4j-impl-2.20.0.jar
- slf4j-api-1.7.36.jar
3. Вручную подключил библиотеки:
File -> Project structure -> "+" -> java -> путь к нужной библиотеке.
4. Установил зависимости с помощью файла pom.xml, добавив в него после слов <version>1.0-SNAPSHOT</version> следующее (правда, все работает и без них):
5. Потом в папке, где находится папка с пакетом - у меня имя пакета Lev_31_lec_10_2 (в моем случае все пакеты размещены в папке src) создал файл log4j2.xml с настройками логгирования такого содержания (он говорит, что логи будем писать в консоль и в файл):
Не забудьте в строке <Logger name="Lev_31_lec_10_2" level="trace" additivity="false"> Lev_31_lec_10_2 заменить на имя пакета, который у вас, а также указать путь к файлу с выводом лога.
Если такой файл не будет создан, то по умолчанию Log4j присваивает корневому регистратору уровень Level.ERROR.
В итоге ошибка ушла, а все логи выводятся в консоль и в файл.
P.S. Полезная статья на тему: https://javarush.com/groups/posts/2293-zachem-nuzhno-logirovanie
Если кто пользуется Eclipse БЕЗ сборщиков(Maven/Gradle):
1) slf4j выбираем нужную версию, жмем View All, находим обычный .jar файл (например slf4j-api-2.0.6.jar ) скачиваем, так же ставим NOP .jar файл аналогичной версии
2) находим папку с проектом (обычно в Users/<имя user>/ eclipse workspace/ <ваш прооект> кидаем туда .jar файлы
3) заходим в eclipse через Package Explorer находим наш проект и .jar файлы которые мы туда поместили - выделяем нужные jarники ПКМ build path --> add to build Path - можно пользоваться
SLF4J API Module — то, что нужно для решения задач.
1. Переходим по ссылке
2. Выбираем нужную версию (в колонке Version)
3. В строке Files нажимаем "View All"
4. Скачиваем jar файл (на данный момент последняя версия — slf4j-api-2.0.6.jar )
5. Устанавливаем в IntelliJ IDEA (по аналогии с этим алгоритмом: Как добавить библиотеку в IntelliJ IDEA)
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ