Class ThreadContextMapFactory


  • public final class ThreadContextMapFactory
    extends java.lang.Object
    Creates the ThreadContextMap instance used by the ThreadContext.

    If Log4j can use ThreadLocals, a garbage-free StringMap-based context map can be installed by setting system property log4j2.garbagefree.threadContextMap to true.

    Furthermore, any custom ThreadContextMap can be installed by setting system property log4j2.threadContextMap to the fully qualified class name of the class implementing the ThreadContextMap interface. (Also implement the ReadOnlyThreadContextMap interface if your custom ThreadContextMap implementation should be accessible to applications via the ThreadContext.getThreadContextMap() method.)

    Instead of system properties, the above can also be specified in a properties file named log4j2.component.properties in the classpath.

    Since:
    2.7
    See Also:
    ThreadContextMap, ReadOnlyThreadContextMap, ThreadContext
    • Method Detail

      • init

        public static void init()
        Initializes static variables based on system properties. Normally called when this class is initialized by the VM and when Log4j is reconfigured.
      • createThreadContextMap

        public static ThreadContextMap createThreadContextMap()