Библиотека для автоматического добавления параметров в MDC.
На старте приложения BeanPostProcessor проходит по всем бинам и оборачивает их в прокси, если:
- Бин аннотирован
@MDCWrapperили включен в белый список вMdcPredefinedProperties - У любого метода этого бина есть хотя бы один параметр, аннотированный
@MDCFieldили производной от этой аннотациии, включая поля первого уровня вложенности в параметрах.
Если оба условия не выполнены - остается исходный бин, без оборачивания в прокси.
Поиск аннотаций идет как в явно объявленных методах, так и в унаследованных / перекрытых методах предков и реализуемых интерфейсов
Перечень выполняемых прокси операций при вызове метода определяется конкретной реализацией,
за которую отвечает MdcMethodInvocationWrapperFactory. Мероприятия в базовом исполнении - см. DefaultMdcMethodInvocationWrapper
и DefaultLoggedMdcMethodInvocationWrapper
- Добавить в проект зависимость от mdc-wrapper-processing-starter
- При необходимости - создать собственную реализацию бина
MdcPredefinedProperties(объявляет "белый список" бинов, см. описание интерфейса) - При необходимости - создать собственную реализацию бина
MdcMethodInvocationWrapperFactory(фабрика создания врапперов для оборачиваемых методов, см. описание интерфейса) - Аннотировать нужные поля в методах
@MDCFieldили ее производными