Что такое MDC и correlation ID — как реализовать трейсинг через логи?

Middle
290 просмотров
AFK Offer AI

MDC (Mapped Diagnostic Context) — thread-local Map куда кладёшь данные для логирования. Correlation ID (trace ID) — уникальный ID запроса, передаётся через заголовок X-Correlation-ID. Servlet Filter или WebMvc interceptor при входе запроса читает заголовок или генерирует UUID, кладёт в MDC.put("correlationId", id). Все логи этого потока включают correlationId. При вызове других сервисов передаёшь ID через заголовок. В логах можно собрать весь путь запроса через grep correlationId.

Следующий вопрос

Что такое REST Maturity Model (Richardson Maturity Model)?