Я использую весеннюю загрузку для создания микросервисов. Один из сгенерированных журналов:
2019-06-19 09:31:05.875 INFO [tkc,37b5f215d418d0ff,d5501f25ae8599bf,false] 13 --- [ntainer#0-1-C-1] a.b.c.d.sample.ClassName : This is log message
В этом журнале я не могу понять значение значений: [tkc,37b5f215d418d0ff,d5501f25ae8599bf,false].
Шаблон журнала, который я вижу в DefaultLogbackConfiguration.java,
private static final String FILE_LOG_PATTERN = "%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}
${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}";
Где я не могу понять, как ${LOG_LEVEL_PATTERN:-%5p} переводится на INFO[tkc,37b5f215d418d0ff,d5501f25ae8599bf,false]?




Вероятно, вы используете корреляцию журнала Весенний облачный сыщик. Поскольку вы регистрируете запуск более чем одной микрослужбы, необходимо различать, из какой микрослужбы исходит журнал.
См. документацию 1.2.4 Корреляция логов, где появляется первый образец, и поймите, что его описание находится в части чуть ниже в 3. Особенности:
notice the
[appname,traceId,spanId,exportable]entries from the MDC:
spanId - идентификатор конкретной операции, которая произошла
Название приложения — имя приложения, которое зарегистрировало диапазон
идентификатор трассировки — идентификатор графика задержки, содержащего интервал
экспортируемый — экспортировать лог в Zipkin или нет. Когда вы хотите, чтобы диапазон не экспортировался? В случае, когда вы хотите обернуть какую-либо операцию в Span и записать ее только в журналы.
Расшифровка [tkc,37b5f215d418d0ff,d5501f25ae8599bf,false]:
tkc — это имя микросервиса37b5f215d418d0ff — это идентификатор трассировкиd5501f25ae8599bf — это spanIdfalse журнал не экспортируется в Zipkin