All Classes Interface Summary Class Summary Enum Summary Exception Summary Annotation Types Summary 
| Class | Description | 
| AbstractLogger | Base implementation of a Logger. | 
| AbstractLoggerAdapter<L> | Provides an abstract base class to use for implementing LoggerAdapter. | 
| AbstractMessageFactory |  | 
| Activator | Consider this class private.
 OSGi bundle activator. | 
| AsynchronouslyFormattable | Annotation that signals to asynchronous logging components that messages of this type can safely be passed to
 a background thread without calling  Message.getFormattedMessage() first. | 
| Base64Util | Base64 encodes Strings. | 
| BiConsumer<K,V> | An operation that accepts two input arguments and returns no result. | 
| BridgeAware | Extended interface to allow bridges between logging systems to convey the
 correct location information. | 
| Chars | Consider this class private. | 
| CleanableThreadContextMap | Extension service provider interface to implement additional custom MDC behavior for
  ThreadContext. | 
| CloseableThreadContext | Adds entries to the  stack or map and them removes them when the object is closed, e.g. | 
| CloseableThreadContext.Instance |  | 
| Constants | Log4j API Constants. | 
| CopyOnWrite | Marker interface indicating that the implementing class is a copy-on-write data structure. | 
| DefaultFlowMessageFactory | Default factory for flow messages. | 
| DefaultLogBuilder | Collects data for a log event and then logs it. | 
| DefaultThreadContextMap | The actual ThreadContext Map. | 
| DefaultThreadContextStack | A copy-on-write thread-safe variant of org.apache.logging.log4j.spi.ThreadContextStackin which all mutative
 operations (add, pop, and so on) are implemented by making a fresh copy of the underlying list. | 
| EnglishEnums | Consider this class private. | 
| EntryMessage | Entry flow messages | 
| EnvironmentPropertySource | PropertySource implementation that uses environment variables as a source. | 
| EventLogger |  | 
| ExitMessage | Exit flow messages | 
| ExtendedLogger | Extends the Loggerinterface with methods that facilitate implementing or extendingLoggers. | 
| ExtendedLoggerWrapper | Wrapper class that exposes the protected AbstractLogger methods to support wrapped loggers. | 
| FilteredObjectInputStream | Extends  ObjectInputStream to only allow some built-in Log4j classes and caller-specified classes to be
 deserialized. | 
| FlowMessage | Flow messages | 
| FlowMessageFactory | Creates flow messages. | 
| FormattedMessage | Handles messages that contain a format String. | 
| FormattedMessageFactory |  | 
| IndexedReadOnlyStringMap | An extension of ReadOnlyStringMapthat imposes a total ordering on its keys. | 
| IndexedStringMap | An extension of StringMapthat imposes a total ordering on its keys. | 
| LambdaUtil | Utility class for lambda support. | 
| Level | Levels used for identifying the severity of an event. | 
| LoaderUtil | Consider this class private. Utility class for ClassLoaders. | 
| LocalizedMessage | Provides some level of compatibility with Log4j 1.x and convenience but is not the recommended way to Localize
 messages. | 
| LocalizedMessageFactory |  | 
| LocationAwareLogger | Logger that accepts the location of the caller. | 
| LogBuilder | Interface for constructing log events before logging them. | 
| Logger | This is the central interface in the log4j package. | 
| LoggerAdapter<L> | A basic registry for  LoggerContext objects and their associated external
 Logger classes. | 
| LoggerContext | Anchor point for logging implementations. | 
| LoggerContextFactory |  | 
| LoggerContextKey | Deprecated. | 
| LoggerContextShutdownAware | Interface allowing interested classes to know when a LoggerContext has shutdown - if the LoggerContext
 implementation provides a way to register listeners. | 
| LoggerContextShutdownEnabled | LoggerContexts implementing this are able register LoggerContextShutdownAware classes. | 
| LoggerNameAwareMessage | Message that is interested in the name of the Logger. | 
| LoggerRegistry<T extends ExtendedLogger> | Convenience class to be used by LoggerContextimplementations. | 
| LoggerRegistry.ConcurrentMapFactory<T extends ExtendedLogger> | Generates ConcurrentHashMaps for use by the registry to store the Loggers. | 
| LoggerRegistry.MapFactory<T extends ExtendedLogger> | Interface to control the data structure used by the registry to store the Loggers. | 
| LoggerRegistry.WeakMapFactory<T extends ExtendedLogger> | Generates WeakHashMaps for use by the registry to store the Loggers. | 
| LoggingException | Exception thrown when an error occurs while logging. | 
| LogManager | The anchor point for the Log4j logging system. | 
| LogManagerStatus | Keeps track of LogManager initialization status; | 
| MapMessage<M extends MapMessage<M,V>,V> | Represents a Message that consists of a Map. | 
| MapMessage.MapFormat | When set as the format specifier causes the Map to be formatted as XML. | 
| Marker | Markers are objects that are used to add easily filterable information to log messages. | 
| MarkerManager | Applications create Markers by using the Marker Manager. | 
| MarkerManager.Log4jMarker | Consider this class private, it is only public to satisfy Jackson for XML and JSON IO. | 
| Message | An interface for various Message implementations that can be logged. | 
| MessageCollectionMessage<T> | A Message that is a collection of Messages. | 
| MessageFactory | Creates messages. | 
| MessageFactory2 | Creates messages. | 
| MessageFactory2Adapter | Adapts a legacy MessageFactory to the new MessageFactory2 interface. | 
| MessageFormatMessage | Handles messages that consist of a format string conforming to java.text.MessageFormat. | 
| MessageFormatMessageFactory |  | 
| MessageSupplier | Classes implementing this interface know how to supply  Messages. | 
| MultiformatMessage | A Message that can render itself in more than one way. | 
| MultiFormatStringBuilderFormattable | A Message that can render itself in more than one way. | 
| MutableThreadContextStack | TODO | 
| NoOpThreadContextMap | ThreadContextMapimplementation used when either of system propertiesdisableThreadContextMapor .
 | 
| ObjectArrayMessage | Handles messages that contain an Object[]. | 
| ObjectMessage | Handles messages that contain an Object. | 
| ObjectThreadContextMap | Extension service provider interface to allow putting Object values in the
  ThreadContext. | 
| OsgiServiceLocator |  | 
| ParameterConsumer<S> | An operation that accepts two input arguments and returns no result. | 
| ParameterizedMessage | A  Message accepting argument placeholders in the formatting pattern. | 
| ParameterizedMessageFactory |  | 
| ParameterizedNoReferenceMessageFactory |  | 
| ParameterVisitable | Allows message parameters to be iterated over without any allocation
 or memory copies. | 
| PerformanceSensitive | Indicates that a particular annotated construct was written with certain performance constraints in mind that
 should be considered when modifying or testing. | 
| ProcessIdUtil |  | 
| PropertiesPropertySource |  | 
| PropertiesUtil | Consider this class private. | 
| PropertyFilePropertySource | PropertySource backed by a properties file. | 
| PropertySource | A source for global configuration properties. | 
| PropertySource.Comparator | Comparator for ordering PropertySource instances by priority. | 
| PropertySource.Util | Utility methods useful for PropertySource implementations. | 
| Provider | Model class for a Log4j 2 provider. | 
| ProviderActivator | Utility class to register Log4j2 providers in an OSGI environment. | 
| ProviderUtil | Consider this class private. Utility class for Log4j  Providers. | 
| ReadOnlyStringMap | A read-only collection of String keys mapped to values of arbitrary type. | 
| ReadOnlyThreadContextMap | Read-only view of the data structure that implements MDC behavior for  ThreadContext. | 
| ReusableMessage | Messages implementing this interface are reused between logging calls. | 
| ReusableMessageFactory | Implementation of the  MessageFactory interface that avoids allocating temporary objects where possible. | 
| ReusableObjectMessage | Mutable Message wrapper around an Object message. | 
| ReusableParameterizedMessage | Reusable parameterized message. | 
| ReusableSimpleMessage | Mutable Message wrapper around a String message. | 
| ServiceLoaderUtil | This class should be considered internal. | 
| SimpleLogger | This is the default logger that is used when no suitable logging implementation is available. | 
| SimpleLoggerContext |  | 
| SimpleLoggerContextFactory |  | 
| SimpleMessage | The simplest possible implementation of Message. | 
| SimpleMessageFactory |  | 
| SortedArrayStringMap | Consider this class private.
 Array-based implementation of the ReadOnlyStringMapinterface. | 
| StackLocator | Consider this class private. Provides various methods to determine the caller class. | 
| StackLocatorUtil | Consider this class private. Provides various methods to determine the caller class. | 
| StandardLevel | Standard Logging Levels as an enumeration for use internally. | 
| StatusConsoleListener |  | 
| StatusData | The Status data. | 
| StatusListener | Interface that allows implementers to be notified of events in the logging system. | 
| StatusLogger | Records events that occur in the logging system. | 
| StringBuilderFormattable | Objects that implement this interface can be converted to text, ideally without allocating temporary objects. | 
| StringBuilders | Consider this class private. | 
| StringFormattedMessage | Handles messages that consist of a format string conforming to  Formatter. | 
| StringFormatterMessageFactory |  | 
| StringMap | Exposes methods to add and remove key-value pairs to and from ReadOnlyStringMap. | 
| StringMapMessage |  | 
| Strings | Consider this class private. | 
| StructuredDataCollectionMessage | A collection of StructuredDataMessages. | 
| StructuredDataId | The StructuredData identifier. | 
| StructuredDataMessage | Represents a Message that conforms to an RFC 5424 StructuredData element along with the syslog message. | 
| StructuredDataMessage.Format | Supported formats. | 
| Supplier<T> | Consider this class private.
 Classes implementing this interface know how to supply a value. | 
| SystemPropertiesPropertySource | PropertySource backed by the current system properties. | 
| Terminable | Interface to be implemented by LoggerContext's that provide a shutdown method. | 
| ThreadContext | The ThreadContext allows applications to store information either in a Map or a Stack. | 
| ThreadContext.ContextStack | The ThreadContext Stack interface. | 
| ThreadContextMap | Service provider interface to implement custom MDC behavior for  ThreadContext. | 
| ThreadContextMap2 | Extension service provider interface to implement additional custom MDC behavior for
  ThreadContext. | 
| ThreadContextMapFactory | Creates the ThreadContextMap instance used by the ThreadContext. | 
| ThreadContextStack | Service provider interface to implement custom NDC behavior for  ThreadContext. | 
| ThreadDumpMessage | Captures information about all running Threads. | 
| ThreadDumpMessage.ThreadInfoFactory | Factory to create Thread information. | 
| ThreadInformation | Interface used to print basic or extended thread information. | 
| Timer | Primarily used in unit tests, but can be used to track elapsed time for a request or portion of any other operation
 so long as all the timer methods are called on the same thread in which it was started. | 
| Timer.Status |  | 
| TimestampMessage | Messages that use this interface will cause the timestamp in the message to be used instead of the timestamp in
 the LogEvent. | 
| TriConsumer<K,V,S> | An operation that accepts three input arguments and returns no result. | 
| Unbox | Utility for preventing primitive parameter values from being auto-boxed. |