Как препятствовать тому, чтобы logback произвел свое собственное состояние в начале каждого журнала?

Это походит на ошибку небрежности, но я, может казаться, не нахожу причину. Регистрируясь с logback/slf4j (новая версия slf4j-api-1.6.1, logback базовые/классические 0.9.24). Самая простая конфигурация журнала для тестирования:

<configuration>
 <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
  <layout class="ch.qos.logback.classic.PatternLayout">
   <!-- DONT USE THIS FORMATTER FOR LIVE LOGGING THE %L LINE NUMBER OUTPUTTER IS SLOW -->
   <pattern>%le %-1r [%c{1}:%L] %m%n</pattern>
  </layout>
 </appender>
 <root level="DEBUG">
  <appender-ref ref="stdout" />
 </root>
</configuration>

Каждая установка журнала запускается с внутренних строк состояния logback:

11:21:27,825 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
11:21:27,826 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback-test.xml] at [file:.../logback-test.xml]
11:21:28,116 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
11:21:28,124 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
11:21:28,129 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [stdout]
11:21:28,180 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Pushing component [layout] on top of the object stack.
11:21:28,206 |-WARN in ch.qos.logback.core.ConsoleAppender[stdout] - This appender no longer admits a layout as a sub-component, set an encoder instead.
11:21:28,206 |-WARN in ch.qos.logback.core.ConsoleAppender[stdout] - To ensure compatibility, wrapping your layout in LayoutWrappingEncoder.
11:21:28,206 |-WARN in ch.qos.logback.core.ConsoleAppender[stdout] - See also http://logback.qos.ch/codes.html#layoutInsteadOfEncoder for details
11:21:28,207 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to DEBUG
11:21:28,207 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [stdout] to Logger[ROOT]

который является, согласно документам, формат logback использование для значения по умолчанию. Это затем заканчивает читать конфигурацию (который настраивается для вывода другого формата), и продолжает правильно отформатированный вывод. Существует параметр конфигурации <configuration debug="false"> который не влияет на это.

Кто-либо знает, как отключить это?

132
задан approxiblue 9 August 2017 в 20:01
поделиться

1 ответ

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

Следуйте http://logback.qos.ch/codes.html#layoutInsteadOfEncoder, т.е. ссылке, указанной logback в предупреждающем сообщении. Если вы выполните указанные там шаги, то есть замените элемент на , logback перестанет выводить сообщения на консоль.

45
ответ дан 24 November 2019 в 00:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: