public class ContextDataInjectorFactory
extends java.lang.Object
ContextDataInjector instance based on the value of system
property log4j2.ContextDataInjector. Users may use this system property to specify the fully qualified class
name of a class that implements the ContextDataInjector interface.
If no value was specified this factory method returns one of the injectors defined in
ThreadContextDataInjector.ContextDataInjector,
ReadOnlyStringMap,
ThreadContextDataInjector,
LogEvent.getContextData()| Constructor and Description |
|---|
ContextDataInjectorFactory() |
| Modifier and Type | Method and Description |
|---|---|
private static ContextDataInjector |
createDefaultInjector() |
static ContextDataInjector |
createInjector()
Returns a new
ContextDataInjector instance based on the value of system property
log4j2.ContextDataInjector. |
public static ContextDataInjector createInjector()
ContextDataInjector instance based on the value of system property
log4j2.ContextDataInjector. If no value was specified this factory method returns one of the
ContextDataInjector classes defined in ThreadContextDataInjector which is most appropriate for
the ThreadContext implementation.
Users may use this system property to specify the fully qualified class name of a class that implements the
ContextDataInjector interface.
When providing a custom ContextDataInjector, be aware that this method may be invoked multiple times by
the various components in Log4j that need access to context data.
This includes the object(s) that populate log events, but also various lookups and filters that look at
context data to determine whether an event should be logged.
ReadOnlyStringMap of all LogEvent objectsLogEvent.getContextData(),
ContextDataInjectorprivate static ContextDataInjector createDefaultInjector()