Связывание журналов и трассировок
Связывайте журналы с контекстом трассировки
«Связывание журналов и трассировок» — бесплатный урок Spring Boot 4 Microservices & REST APIs на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Spring Boot 4 Microservices & REST APIs, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Spring Boot 4 Microservices & REST APIs содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Linking logs to traces
Traces show the request flow; logs show the details. Putting the traceId into every log line lets you jump from a trace to its exact logs - and vice versa.
What is MDC?
MDC (Mapped Diagnostic Context) is a per-thread key/value map provided by SLF4J/Logback. Values placed in it can be printed in every log line by the layout pattern.
Micrometer populates the MDC
Micrometer Tracing automatically puts the current traceId and spanId into the MDC, so they are available to the logging framework without manual code.
Adding IDs to the log pattern
Reference the MDC keys in your Logback pattern so each line carries the IDs.
# logback-spring.xml pattern
# %d{ISO8601} [%X{traceId:-},%X{spanId:-}] %-5level %logger - %msg%nSpring Boot default pattern
Spring Boot can inject the IDs for you. Setting the application name enables the default correlation pattern that prepends [app,traceId,spanId] to logs.
spring:
application:
name: order-service
# logs become: [order-service,4bf9...,00f0...] INFO ...A correlated log line
The result looks like this - the bracketed IDs tie the line to a specific trace and span.
// 2026-05-30 10:00:00 [order-service,4bf92f35...,00f067aa...] INFO c.a.OrderService - Order placedSearching by traceId
With IDs in logs, your log aggregator (ELK, Loki, etc.) can filter by traceId. Copy an id from Zipkin, paste it into the log search, and see every related log line.
Custom baggage in logs
You can also surface baggage (e.g. tenant id) in logs by mapping a baggage field into the MDC, enriching every line with business context.
management:
tracing:
baggage:
correlation:
fields: tenantIdTwo-way navigation
The goal is bidirectional: from a slow span in Zipkin -> open its logs by traceId; from an error log -> open its trace in Zipkin. This dramatically speeds up debugging.
Keep IDs out of business logs by accident
Because IDs come from MDC, they appear only when a trace is active. Background threads without a trace context show empty IDs (%X{traceId:-} renders blank) - which is expected.
Structured logging
For best results emit logs as JSON with traceId/spanId as proper fields, so log tools can index and link them reliably instead of parsing text.
Quick Check
Test your correlation knowledge.
Recap
You correlated logs and traces:
- Micrometer puts
traceId/spanIdinto the MDC - Reference them in the Logback pattern (or use Boot's default)
- Search logs by traceId to jump between traces and logs
- Prefer structured JSON logs for reliable indexing
Изучай Java с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 24
- Уроки
- 93
Часто задаваемые вопросы
Урок «Связывание журналов и трассировок» бесплатный?
Да — полный текст урока «Связывание журналов и трассировок» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Spring Boot 4 Microservices & REST APIs, подпишись на CoddyKit PRO. Курс Spring Boot 4 Microservices & REST APIs содержит 4 уроков всего.
Чему я научусь в уроке «Связывание журналов и трассировок»?
Связывайте журналы с контекстом трассировки Ты практикуешь Spring Boot 4 Microservices & REST APIs с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Spring Boot 4 Microservices & REST APIs?
Предыдущий опыт не требуется. Spring Boot 4 Microservices & REST APIs на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Связывание журналов и трассировок»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Spring Boot 4 Microservices & REST APIs?
Да. Каждый урок Spring Boot 4 Microservices & REST APIs включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Зачем нужна распределённая трассировка
- Трассировка Micrometer
- Экспорт трассировок в Zipkin
- Связывание журналов и трассировок