2016-11-11 4 views
3

У меня есть приложение загрузки Spring, в котором используется logback.xml для регистрации конфигураций. Я ищу варианты динамического изменения уровня журнала. Например, если я развернул приложение с loglevel как ERROR, предположим, что я хочу изменить его на INFO, но я не хочу повторно развертывать/перезапускать JVM.Как изменить динамический журнал журнала в приложении весенней загрузки

Есть ли возможность, мы можем настроить logback.xml как конфигурации сервера для достижения этой цели

ответ

1

Да, это вполне возможно. Экспозиция конечной точки отдыха, в которой вы указываете уровень className и log. С slf4j вы можете получить LoggerContext и изменить уровень.

LoggerContext context = (LoggerContext) LoggerFactory.getILoggerFactory(); 
    context.getLogger(className).setLevel(Level.valueOf(level)); 

История регистрации Apache Commons и другие аналогичные функции.

2

Если вы используете пружинный облако, то вы можете иметь это в файле YML

logging: 
    level: 
    root: INFO 

Затем вы можете изменить его и обновить конфигурацию с помощью обновления привода для извлечения новой конфигурации не изменяет никакой необходимости перезапуска службы.

Также, если вам нужен какой-то пользовательский интерфейс, чтобы сделать это, вы можете изучить Spring-cloud-dashboard Это довольно круто и использует функции исполнительного механизма, чтобы сделать и показать вам много вещей, не только изменяющих уровни журналов.

Смежные вопросы