[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-logirovanie-kakie-urovni-logirovaniya-sushchestvuyut":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},1297,"kakie-urovni-logirovaniya-sushchestvuyut",43,"logirovanie","Логирование","📝","Какие уровни логирования существуют?","Уровни логирования — это иерархия важности сообщений, позволяющая фильтровать вывод. Установка уровня INFO означает, что логируются INFO, WARN и ERROR, а TRACE и DEBUG отбрасываются.\n\n### Стандартные уровни (SLF4J \u002F Logback)\n\nОт наименее до наиболее критичного:\n\n| Уровень | Назначение | Пример | Когда включать |\n|---------|-----------|--------|---------------|\n| TRACE | Максимально детальная трассировка | Входящие\u002Fисходящие параметры каждого метода | Только при глубокой отладке |\n| DEBUG | Диагностическая информация | SQL-запросы, состояние кэша, промежуточные вычисления | Разработка, диагностика в production |\n| INFO | Значимые события нормальной работы | Запуск сервиса, подключение к БД, обработка запроса | Всегда в production |\n| WARN | Потенциальная проблема, не мешающая работе | Устаревший API, fallback на default, retry | Всегда |\n| ERROR | Ошибка, требующая внимания | Недоступен внешний сервис, неожиданное исключение | Всегда |\n\n### Иерархия фильтрации\n\n```\nTRACE \u003C DEBUG \u003C INFO \u003C WARN \u003C ERROR\n```\n\nВ production стандартный уровень — INFO. DEBUG и TRACE включаются временно для диагностики конкретных проблем.\n\n\u003Cdetails>\n\u003Csummary>Пример использования уровней\u003C\u002Fsummary>\n\n```java\nimport org.slf4j.Logger;\nimport org.slf4j.LoggerFactory;\n\npublic class OrderService {\n    private static final Logger log = LoggerFactory.getLogger(OrderService.class);\n\n    public void processOrder(Order order) {\n        log.trace(\"Вход в processOrder, order={}\", order);\n        log.debug(\"Обработка заказа: {}\", order.getId());\n        try {\n            \u002F\u002F бизнес-логика\n            log.info(\"Заказ {} успешно обработан\", order.getId());\n        } catch (TemporaryException e) {\n            log.warn(\"Временная ошибка при обработке заказа {}, retry\", order.getId(), e);\n        } catch (Exception e) {\n            log.error(\"Ошибка обработки заказа {}\", order.getId(), e);\n        }\n    }\n}\n```\n\n\u003C\u002Fdetails>\n\n### Правила выбора уровня\n\n- ERROR — ситуация требует реакции (алерт), что-то сломалось\n- WARN — потенциальная проблема, система справилась сама (retry, fallback)\n- INFO — нормальное бизнес-событие, полезное для понимания поведения системы\n- DEBUG — информация для разработчика при отладке\n- TRACE — пошаговая трассировка для глубокой диагностики\n\n### Частые ошибки\n\n- Все на уровне INFO — теряется возможность фильтрации; DEBUG-информация засоряет production-логи\n- ERROR для бизнес-ошибок — \"пользователь ввёл неверный пароль\" — это INFO или WARN, но не ERROR\n- WARN для нормальных ситуаций — если retry всегда успешен, это штатное поведение\n- Третий аргумент `log.error(\"msg\", id, exception)` — исключение, Logback автоматически выводит стек-трейс. Не используйте `exception.getMessage()`\n\n### Как используется в 2026\n\n- Spring Boot позволяет менять уровни логирования на лету через Actuator: `POST \u002Factuator\u002Floggers\u002Fcom.example`\n- В Kubernetes уровни можно менять через ConfigMap без перезапуска пода\n\n> **На собеседовании:** покажите, что понимаете разницу между WARN и ERROR. ERROR — когда нужна реакция человека или алерт. WARN — система справилась сама, но ситуация нештатная. Частая ошибка — ставить ERROR на все исключения, включая NotFoundException.","","junior",[15],"logging",[],null,{"title":19,"description":20,"ogTitle":19,"ogDescription":21,"keywords":22,"schemaAnswer":23,"featuredSnippetReady":24},"Какие уровни логирования существуют? — Gymterview","Уровни логирования — это иерархия важности сообщений, позволяющая фильтровать вывод. Установка уровня INFO означает, что логируются INFO, WARN и ERROR, а TRACE ","Уровни логирования — это иерархия важности сообщений, позволяющая фильтровать вывод. Установка уровня INFO означает, что",[15,13],"Уровни логирования — это иерархия важности сообщений, позволяющая фильтровать вывод. Установка уровня INFO означает, что логируются INFO, WARN и ERROR, а TRACE и DEBUG отбрасываются.",true]