https://github.com/oldratlee/log4j2-ttl-thread-context-map
🌳 Log4j2 TTL ThreadContextMap, Log4j2 extension integrated TransmittableThreadLocal to MDC
https://github.com/oldratlee/log4j2-ttl-thread-context-map
context log log4j log4j2 logging logging-facilities mapped-diagnostic-context mdc thread-context-map transmittable-thread-local
Last synced: 2 months ago
JSON representation
🌳 Log4j2 TTL ThreadContextMap, Log4j2 extension integrated TransmittableThreadLocal to MDC
- Host: GitHub
- URL: https://github.com/oldratlee/log4j2-ttl-thread-context-map
- Owner: oldratlee
- License: apache-2.0
- Created: 2015-07-10T18:27:06.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2025-03-03T03:54:28.000Z (3 months ago)
- Last Synced: 2025-03-29T11:06:36.974Z (2 months ago)
- Topics: context, log, log4j, log4j2, logging, logging-facilities, mapped-diagnostic-context, mdc, thread-context-map, transmittable-thread-local
- Language: Java
- Homepage: https://github.com/oldratlee/log4j2-ttl-thread-context-map
- Size: 227 KB
- Stars: 91
- Watchers: 4
- Forks: 21
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
#
🌳 Log4j2 TTL ThreadContextMap--------------------------
- [🔧 Functions](#-functions)
- [👥 Usage](#-usage)
- [🏃 Run Demo](#-run-demo)
- [🍪 Dependency](#-dependency)
- [📚 Related resources](#-related-resources)--------------------------
# 🔧 Functions
👉 Enable the transmitting `Log4j2` `ThreadContext`(`ThreadLocal` value) between threads even using thread pooling components by [Transmittable ThreadLocal(`TTL`)](https://github.com/alibaba/transmittable-thread-local).
> From `v1.4+` upgrade to `Java 8`.
> If you need `Java 6` support, use version `1.3.x`# 👥 Usage
Just add this dependency into your project to activate the Log4j2 TTL ThreadContextMap. ✨
# 🏃 Run Demo
Run Demo Code
```bash
./mvnw clean test-compile -Dexec.classpathScope=test -Dexec.mainClass=com.alibaba.ttl.log4j2.Log4j2Demo exec:java./mvnw clean test-compile -Dexec.classpathScope=test -Dexec.mainClass=com.alibaba.ttl.log4j2.Slf4jMdcDemo exec:java
```- [Log4j2Demo.java](src/test/java/com/alibaba/ttl/log4j2/Log4j2Demo.java)
- [Slf4jMdcDemo.java](src/test/java/com/alibaba/ttl/log4j2/Slf4jMdcDemo.java)
- [`TtlThreadContextMap` implementation class: TtlThreadContextMap.java](src/main/java/com/alibaba/ttl/log4j2/TtlThreadContextMap.java).# 🍪 Dependency
```xml
com.alibaba
log4j2-ttl-thread-context-map
1.4.0
runtime```
Find up-to-date available versions at [search.maven.org](https://search.maven.org/artifact/com.alibaba/log4j2-ttl-thread-context-map).
# 📚 Related resources
- log4j2 documentation
- [log4j 2 Thread Context](https://logging.apache.org/log4j/2.x/manual/thread-context.html)
- [Changelog](https://logging.apache.org/log4j/2.x/changelog.html)
- [Mapped Diagnostic Context (MDC) support - slf4j official documentation](https://www.slf4j.org/manual.html#mdc)
- [Transmittable ThreadLocal(TTL)](https://github.com/alibaba/transmittable-thread-local), 📌 The missing Java™ std lib(simple & 0-dependency) for framework/middleware, provide an enhanced InheritableThreadLocal that transmits ThreadLocal value between threads even using thread pooling components.