Details
-
New Feature
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
Kotlin 1.0.0
-
None
Description
Create support for log4j2 MDC when used with Kotlin coroutines. Since coroutines do not guarantee which underlying thread is executing code after a continuation, a standard ThreadLocal is not sufficient to keep the MDC context.
Kotlin coroutines have a mechanism by which "coroutine local" data can be stored. See the reference implementation for SLF4J here:
https://github.com/Kotlin/kotlinx.coroutines/tree/master/integration/kotlinx-coroutines-slf4j
We should implement an optional native module to add support for log4j2 MDC using the same pattern, that does not require having SLF4J and the slf4j-log4j2 implementation on the classpath.
Attachments
Issue Links
- links to