[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-logirovanie-kak-nastroit-logirovanie-v-spring-boot":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},1300,"kak-nastroit-logirovanie-v-spring-boot",43,"logirovanie","Логирование","📝","Как настроить логирование в Spring Boot?","Spring Boot использует Logback по умолчанию и предоставляет два уровня конфигурации: простой через `application.yml` и расширенный через `logback-spring.xml`.\n\n### Простая настройка через application.yml\n\n```yaml\nlogging:\n  level:\n    root: INFO\n    com.example: DEBUG\n    org.hibernate.SQL: DEBUG\n    org.hibernate.type.descriptor.sql.BasicBinder: TRACE  # параметры SQL\n  file:\n    name: logs\u002Fapplication.log\n  logback:\n    rollingpolicy:\n      max-file-size: 100MB\n      max-history: 30\n      total-size-cap: 3GB\n  pattern:\n    console: \"%d{HH:mm:ss.SSS} %highlight(%-5level) [%thread] %cyan(%logger{36}) - %msg%n\"\n    file: \"%d{ISO8601} %-5level [%thread] %logger{36} - %msg%n\"\n```\n\n### Расширенная настройка через logback-spring.xml\n\nФайл `logback-spring.xml` (не `logback.xml`) поддерживает Spring-профили и Spring-свойства:\n\n```xml\n\u003Cconfiguration>\n    \u003CspringProfile name=\"dev\">\n        \u003Croot level=\"DEBUG\">\n            \u003Cappender-ref ref=\"CONSOLE\"\u002F>\n        \u003C\u002Froot>\n    \u003C\u002FspringProfile>\n\n    \u003CspringProfile name=\"prod\">\n        \u003Croot level=\"INFO\">\n            \u003Cappender-ref ref=\"CONSOLE\"\u002F>\n            \u003Cappender-ref ref=\"FILE\"\u002F>\n        \u003C\u002Froot>\n    \u003C\u002FspringProfile>\n\u003C\u002Fconfiguration>\n```\n\n### Изменение уровней на лету через Actuator\n\n```bash\n# Посмотреть текущий уровень\ncurl http:\u002F\u002Flocalhost:8080\u002Factuator\u002Floggers\u002Fcom.example\n\n# Изменить уровень без перезапуска\ncurl -X POST http:\u002F\u002Flocalhost:8080\u002Factuator\u002Floggers\u002Fcom.example \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"configuredLevel\": \"DEBUG\"}'\n```\n\n### Какой способ конфигурации выбрать\n\n| Способ | Когда использовать |\n|--------|-------------------|\n| `application.yml` | Простые сценарии: уровни, файл, паттерн |\n| `logback-spring.xml` | Сложные сценарии: фильтры, несколько appenders, условная конфигурация |\n| Actuator | Динамическая диагностика в runtime без перезапуска |\n\n### Частые ошибки\n\n- `logback.xml` вместо `logback-spring.xml` — теряется поддержка `\u003CspringProfile>` и `\u003CspringProperty>`\n- Включить `org.hibernate.SQL=DEBUG` в production — огромный объём логов; только для временной диагностики\n- Не настроить Actuator security — endpoint `\u002Factuator\u002Floggers` должен быть защищён\n\n### Как используется в 2026\n\n- `application.yml` + `logback-spring.xml` — стандартная комбинация\n- В Kubernetes: логирование в stdout (ConsoleAppender), сбор через Promtail\u002FFluentd\n- Actuator + Kubernetes probes — мониторинг и динамическая диагностика\n\n> **На собеседовании:** ключевой момент — знание разницы между `logback.xml` и `logback-spring.xml`. Второй поддерживает Spring-профили. Также упомяните Actuator для изменения уровней на лету — это показывает production-опыт.","","middle",[15],"logging",[],null,{"title":19,"description":20,"ogTitle":19,"ogDescription":21,"keywords":22,"schemaAnswer":20,"featuredSnippetReady":23},"Как настроить логирование в Spring Boot? — Gymterview","Spring Boot использует Logback по умолчанию и предоставляет два уровня конфигурации: простой через `application.yml` и расширенный через `logback-spring.xml`.","Spring Boot использует Logback по умолчанию и предоставляет два уровня конфигурации: простой через `application.yml` и р",[15,13],true]