Ну что же, сыщик получает traceId и spanId в журналы, перезаписывая / расширяя «поле» уровня журнала шаблона журнала (внутри org.springframework.cloud.sleuth.autoconfig.TraceEnvironmentPostProcessor
)
, поэтому в defaults.xml
(импортируется в base.xml
) пружина определяет pattern
как:
<property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
, как вы можете видеть, определена ли переменная LOG_LEVEL_PATTERN
, она взята (а затем переписана / расширена в TraceEnvironmentPostProcessor
, если нет, то по умолчанию используется шаблон уровня по умолчанию %5p
, поэтому, если вы включите , а не включите базу. xml sleuth не сможет "настроить" шаблон уровня журнала как LOG_LEVEL_PATTERN
тогда просто не существует в шаблоне.
Как указано в документации (https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto -logging ), вы всегда должны включать base. xml в свой пользовательский вход . xml, и все в порядке.
не рекомендуется: попытайтесь определить ваш шаблон уровня журнала как ${LOG_LEVEL_PATTERN:-%5p}
вместо просто %5p
или %-5level
(но решение с включением базы. xml - правильное решение, если вы спросите меня.
также: https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot -features-custom-log-configuration перечисляет поля приложения (свойства | yml) для настройки ведения журнала при начальной загрузке из свойств.
например, у меня есть пользовательский BaggageFields
для распространения вниз по течению и мои application.properties, чтобы увидеть их в лог-файлах. Я определяю свойства приложения следующим образом: (я не определяю собственный logback. xml!)
для sleuth 2.0 +
logging:
pattern:
level: "%5p [${spring.zipkin.service.name:${spring.application.name:-}},%X{X-B3-TraceId:-},%X{X-B3-SpanId:-},%X{X-Span-Export:-}] [%X{ddd:-},%X{bp:-},%X{bpids:-}] [%X{op:-},%X{chunk:-},%X{i:-}]"
для сыщика 3.0 +
logging:
pattern:
level: "%5p [${spring.zipkin.service.name:${spring.application.name:}},%X{traceId:-},%X{spanId:-}] [%X{ddd:-},%X{bp:-},%X{bpids:-}] [%X{op:-},%X{chunk:-},%X{i:-}]"