Если вы используете пружинную загрузку , то эта функция доступна с пружинным приводом.
Просто подключите привод (через систему сборки), и вы получите некоторые конечные точкидоступный для вашего приложения, один из них позволяет динамически изменять уровень журнала без перезапуска.
Конечно, когда перезапуск будет выполнен, конфигурация вернется обратно.
Соответствующий пример можно найти здесь например.
Итог, просто вызовите следующую конечную точку, и вы настроены
curl -i -X POST -H 'Content-Type: application/json' -d '{"configuredLevel": "DEBUG"}' http://localhost:8080/loggers/ROOT
Если вы не используете пружинную загрузку, эта функция по умолчанию недоступна, поэтому вам придется сделать это самостоятельно.
Существует множество различных подходов, вот некоторые из них:
Поскольку вы используете logback, вы можете воспользоваться его конфигуратором JMX: см. Пример Здесь Идея проста: вы конфигурируете logback для предоставления некоторых mbeans-компонентов JMX и подключения к вашему приложению через jconsole /Jvisualvm или любойдругой клиент по вашему выбору, который может работать с JMX
Вы можете использовать программный доступ к регистратору и создать некоторую конечную точку (HTTP), которая будет просто использовать что-то вроде:
Logger logger = ...;
logger.setLevel (Level.DEBUG);
Работает в сочетании с методом JMX.Вы можете использовать проект "jolokia", чтобы открыть http API через JMX, если вы не можете легко получить доступ к JMX.