Я использую slf4j в своем приложении на основе akka и используя его функцию MDC для регистрации контекстной информации. У меня есть один базовый актер, который отправляет и получает сообщения от множества актеров, которые, в свою очередь, общаются и с одним другим актером и так далее. Как распространять настройку MDC в базовом актере другим актерам? Я хотел бы избежать использования дополнительных фреймворков, таких как Play.Propagate MDC using slf4j
ответ
подход 1: Использование функции Receive трубопровода Акку - http://doc.akka.io/docs/akka/2.4.16/contrib/receive-pipeline.html
раствора образца с помощью Receive трубопровода - https://stackoverflow.com/a/39320938/3076069
подхода 2: 1.Creating черта, которая простирается Actor 2.Override причем способ aroundReceive для заполнения MDC 3.Создание новых методов для ask_and_forget и отправьте их, чтобы отправить сообщение с помощью mdc и извлечь его изнутри
Подход 3: 1. Создайте признак, который обрабатывает MDC при получении сообщения и микширования каждого Актера. (предполагает, что входящее сообщение каждому Актеру всегда будет иметь необходимые поля для заполнения MDC).
Я предпочитаю подход 1 и 3, поскольку они вносят наименее разрушающие изменения в приложение и кажутся более интуитивными для любого нового разработчика, который будет работать с существующим приложением, использующим любой из подходов.
- 1. SLF4J MDC Memory Leak
- 2. MDC не работает с SLF4J
- 3. Non-Static Slf4j MDC Pattern
- 4. Log4j (SLF4J) MDC Контекст в Struts 2 перехватчик
- 5. Propagate ServiceSecurityContext
- 6. MDC (Mapped Diagnostic Context) поддержка JUL (Java.util.Logging)
- 7. Logback MDC put() измененный объект
- 8. Propagate исключения следующего улов
- 9. Propagate = False в BIML
- 10. Использование MDC Регистрация в JBoss 6.1.0-Final
- 11. Использование MDC с интеграцией с весной
- 12. Почему я получаю дубликат идентификатора в моем MDC SLF4J для двух запросов?
- 13. log4j 1.2.17 + MDC + UDP
- 14. Камон MDC не работает
- 15. Ошибка проектирования, злоупотребление MDC
- 16. MDC Calculated Member SubCube
- 17. клики Propagate из Ember ракурса
- 18. Propagate весной сделка двойников называют
- 19. EasyStream и slf4j API Выпуск
- 20. Добавление пути контекста к операторам журнала SLF4J
- 21. Фаза перехватчика CXF для очистки MDC
- 22. Как использовать MDC с ForkJoinPool?
- 23. Изменено поведение наследства MDC весны?
- 24. Имеет ли MDC систему сетки?
- 25. SLF4J: путь класса содержит несколько привязок SLF4J; exclude slf4j
- 26. Slf4j, используя простой slf4j вместо logger4j
- 27. конфликты между slf4j-log4j13 и slf4j-log4j12
- 28. Propagate SoapFault с простым Camel прокси
- 29. Propagate PropertyChanged в MVVM Windows Phone 8,1
- 30. Propagate AccessDeniedException to Spring Security 3.2