[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-logirovanie-kakie-sushchestvuyut-freymvorki-logirovaniya-v-java":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":16,"progress":17,"seo":18},1304,"kakie-sushchestvuyut-freymvorki-logirovaniya-v-java",43,"logirovanie","Логирование","📝","Какие существуют фреймворки логирования в Java?","В экосистеме Java исторически сложилось несколько фреймворков логирования, которые делятся на фасады (API) и реализации.\n\n### Эволюция логирования в Java\n\n| Год | Фреймворк | Тип | Описание | Статус в 2026 |\n|-----|-----------|-----|----------|---------------|\n| 2001 | Log4j 1.x | Реализация | Первый популярный фреймворк | EOL с 2015, не использовать |\n| 2002 | java.util.logging (JUL) | Реализация | Встроен в JDK | Legacy, мелкие утилиты |\n| 2004 | Commons Logging (JCL) | Фасад | Фасад от Apache | Legacy, заменён SLF4J |\n| 2005 | SLF4J | Фасад | Современный фасад | Стандарт де-факто |\n| 2006 | Logback | Реализация | Нативная реализация SLF4J | Стандарт (Spring Boot default) |\n| 2014 | Log4j 2.x | Реализация | Полная переработка Log4j | Актуален, async через LMAX Disruptor |\n\n### Что использовать в 2026\n\n```\nРекомендуемый стек: SLF4J API + Logback (Spring Boot по умолчанию)\nАльтернатива:       SLF4J API + Log4j 2.x (для высоконагруженных систем с async logging)\n```\n\nSLF4J — всегда API, конкретный фреймворк — деталь реализации.\n\n### Log4j 2.x vs Logback\n\n| Критерий | Logback | Log4j 2.x |\n|----------|---------|-----------|\n| Async logging | AsyncAppender (BlockingQueue) | LMAX Disruptor (lock-free, быстрее) |\n| API | SLF4J (нативно) | Свой + SLF4J bridge |\n| Spring Boot | По умолчанию | Через starter-log4j2 |\n| Lambda support | Нет | Да: `log.debug(() -> expensiveOp())` |\n| GraalVM Native Image | Ограниченная совместимость | Поддерживается лучше |\n\n### Частые ошибки\n\n- Путать Log4j 1.x и Log4j 2.x — это разные проекты с разными API и зависимостями\n- Использовать Log4j 1.x — EOL, без обновлений безопасности\n- Прямой импорт Logback API — используйте SLF4J для переносимости\n- Уязвимость Log4Shell (CVE-2021-44228) была в Log4j 2.x (исправлена в 2.17+), не в Logback\n\n### Как используется в 2026\n\n- 90%+ Spring Boot проектов — SLF4J + Logback (дефолт)\n- Высоконагруженные системы — рассматривают Log4j 2.x с Async Loggers\n- GraalVM Native Image — Log4j 2.x или JUL (Logback не полностью совместим из коробки)\n\n> **На собеседовании:** покажите знание эволюции: Log4j 1.x (EOL) -> SLF4J + Logback (стандарт) -> Log4j 2.x (альтернатива для async). Частая ошибка — путать Log4j 1.x и Log4j 2.x или не знать про Log4Shell.","","junior",[15],"logging",[],null,{"title":19,"description":20,"ogTitle":19,"ogDescription":20,"keywords":21,"schemaAnswer":20,"featuredSnippetReady":22},"Какие существуют фреймворки логирования в Java? — Gymterview","В экосистеме Java исторически сложилось несколько фреймворков логирования, которые делятся на фасады (API) и реализации.",[15,13],true]