Package org.apache.log4j.bridge
Class LogEventWrapper
- java.lang.Object
-
- org.apache.log4j.bridge.LogEventWrapper
-
- All Implemented Interfaces:
Serializable
,LogEvent
public class LogEventWrapper extends Object implements LogEvent
Exposes a Log4j 1 logging event as a Log4j 2 LogEvent.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description LogEventWrapper(LoggingEvent event)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ReadOnlyStringMap
getContextData()
Returns theReadOnlyStringMap
object holding context data key-value pairs.Map<String,String>
getContextMap()
Gets the context map (also know as Mapped Diagnostic Context or MDC).ThreadContext.ContextStack
getContextStack()
Gets the context stack (also known as Nested Diagnostic Context or NDC).Instant
getInstant()
Returns the Instant when the message was logged.Level
getLevel()
Gets the level.String
getLoggerFqcn()
Returns the fully qualified class name of the caller of the logging API.String
getLoggerName()
Gets the logger name.Marker
getMarker()
Gets the Marker associated with the event.Message
getMessage()
Gets the message associated with the event.long
getNanoTime()
Returns the value of the running Java Virtual Machine's high-resolution time source when this event was created, or a dummy value if it is known that this value will not be used downstream.StackTraceElement
getSource()
Gets the source of logging request.long
getThreadId()
Gets the thread ID.String
getThreadName()
Gets the thread name.int
getThreadPriority()
Gets the thread priority.Throwable
getThrown()
Gets throwable associated with logging request.ThrowableProxy
getThrownProxy()
Gets throwable proxy associated with logging request.long
getTimeMillis()
Gets event time in milliseconds since midnight, January 1, 1970 UTC.boolean
isEndOfBatch()
Returnstrue
if this event is the last one in a batch,false
otherwise.boolean
isIncludeLocation()
Returns whether the source of the logging request is required downstream.void
setEndOfBatch(boolean endOfBatch)
Sets whether this event is the last one in a batch.void
setIncludeLocation(boolean locationRequired)
Sets whether the source of the logging request is required downstream.LogEvent
toImmutable()
Returns an immutable version of this log event, which MAY BE a copy of this event.
-
-
-
Constructor Detail
-
LogEventWrapper
public LogEventWrapper(LoggingEvent event)
-
-
Method Detail
-
toImmutable
public LogEvent toImmutable()
Description copied from interface:LogEvent
Returns an immutable version of this log event, which MAY BE a copy of this event.- Specified by:
toImmutable
in interfaceLogEvent
- Returns:
- an immutable version of this log event
-
getContextMap
public Map<String,String> getContextMap()
Description copied from interface:LogEvent
Gets the context map (also know as Mapped Diagnostic Context or MDC).- Specified by:
getContextMap
in interfaceLogEvent
- Returns:
- The context map, never
null
.
-
getContextData
public ReadOnlyStringMap getContextData()
Description copied from interface:LogEvent
Returns theReadOnlyStringMap
object holding context data key-value pairs.Context data (also known as Mapped Diagnostic Context or MDC) is data that is set by the application to be included in all subsequent log events. The default source for context data is the
ThreadContext
(and properties configured on the Logger that logged the event), but users can configure a customContextDataInjector
to inject key-value pairs from any arbitrary source.- Specified by:
getContextData
in interfaceLogEvent
- Returns:
- the
ReadOnlyStringMap
object holding context data key-value pairs - See Also:
ContextDataInjector
,ThreadContext
-
getContextStack
public ThreadContext.ContextStack getContextStack()
Description copied from interface:LogEvent
Gets the context stack (also known as Nested Diagnostic Context or NDC).- Specified by:
getContextStack
in interfaceLogEvent
- Returns:
- The context stack, never
null
.
-
getLoggerFqcn
public String getLoggerFqcn()
Description copied from interface:LogEvent
Returns the fully qualified class name of the caller of the logging API.- Specified by:
getLoggerFqcn
in interfaceLogEvent
- Returns:
- The fully qualified class name of the caller.
-
getLoggerName
public String getLoggerName()
Description copied from interface:LogEvent
Gets the logger name.- Specified by:
getLoggerName
in interfaceLogEvent
- Returns:
- logger name, may be
null
.
-
getMarker
public Marker getMarker()
Description copied from interface:LogEvent
Gets the Marker associated with the event.
-
getMessage
public Message getMessage()
Description copied from interface:LogEvent
Gets the message associated with the event.- Specified by:
getMessage
in interfaceLogEvent
- Returns:
- message.
-
getTimeMillis
public long getTimeMillis()
Description copied from interface:LogEvent
Gets event time in milliseconds since midnight, January 1, 1970 UTC. UseLogEvent.getInstant()
to get higher precision timestamp information if available on this platform.- Specified by:
getTimeMillis
in interfaceLogEvent
- Returns:
- the milliseconds component of this log event's timestamp
- See Also:
System.currentTimeMillis()
-
getInstant
public Instant getInstant()
Description copied from interface:LogEvent
Returns the Instant when the message was logged.Caution: if this
LogEvent
implementation is mutable and reused for multiple consecutive log messages, then theInstant
object returned by this method is also mutable and reused. Client code should not keep a reference to the returned object but make a copy instead.- Specified by:
getInstant
in interfaceLogEvent
- Returns:
- the
Instant
holding Instant details for this log event
-
getSource
public StackTraceElement getSource()
Description copied from interface:LogEvent
Gets the source of logging request.
-
getThreadName
public String getThreadName()
Description copied from interface:LogEvent
Gets the thread name.- Specified by:
getThreadName
in interfaceLogEvent
- Returns:
- thread name, may be null. TODO guess this could go into a thread context object too. (RG) Why?
-
getThreadId
public long getThreadId()
Description copied from interface:LogEvent
Gets the thread ID.- Specified by:
getThreadId
in interfaceLogEvent
- Returns:
- thread ID.
-
getThreadPriority
public int getThreadPriority()
Description copied from interface:LogEvent
Gets the thread priority.- Specified by:
getThreadPriority
in interfaceLogEvent
- Returns:
- thread priority.
-
getThrown
public Throwable getThrown()
Description copied from interface:LogEvent
Gets throwable associated with logging request.Convenience method for
ThrowableProxy.getThrowable();
-
getThrownProxy
public ThrowableProxy getThrownProxy()
Description copied from interface:LogEvent
Gets throwable proxy associated with logging request.- Specified by:
getThrownProxy
in interfaceLogEvent
- Returns:
- throwable, may be null.
-
isEndOfBatch
public boolean isEndOfBatch()
Description copied from interface:LogEvent
Returnstrue
if this event is the last one in a batch,false
otherwise. Used by asynchronous Loggers and Appenders to signal to buffered downstream components when to flush to disk, as a more efficient alternative to theimmediateFlush=true
configuration.- Specified by:
isEndOfBatch
in interfaceLogEvent
- Returns:
- whether this event is the last one in a batch.
-
isIncludeLocation
public boolean isIncludeLocation()
Description copied from interface:LogEvent
Returns whether the source of the logging request is required downstream. Asynchronous Loggers and Appenders use this flag to determine whether to take aStackTrace
snapshot or not before handing off this event to another thread.- Specified by:
isIncludeLocation
in interfaceLogEvent
- Returns:
true
if the source of the logging request is required downstream,false
otherwise.- See Also:
LogEvent.getSource()
-
setEndOfBatch
public void setEndOfBatch(boolean endOfBatch)
Description copied from interface:LogEvent
Sets whether this event is the last one in a batch. Used by asynchronous Loggers and Appenders to signal to buffered downstream components when to flush to disk, as a more efficient alternative to theimmediateFlush=true
configuration.- Specified by:
setEndOfBatch
in interfaceLogEvent
- Parameters:
endOfBatch
-true
if this event is the last one in a batch,false
otherwise.
-
setIncludeLocation
public void setIncludeLocation(boolean locationRequired)
Description copied from interface:LogEvent
Sets whether the source of the logging request is required downstream. Asynchronous Loggers and Appenders use this flag to determine whether to take aStackTrace
snapshot or not before handing off this event to another thread.- Specified by:
setIncludeLocation
in interfaceLogEvent
- Parameters:
locationRequired
-true
if the source of the logging request is required downstream,false
otherwise.- See Also:
LogEvent.getSource()
-
getNanoTime
public long getNanoTime()
Description copied from interface:LogEvent
Returns the value of the running Java Virtual Machine's high-resolution time source when this event was created, or a dummy value if it is known that this value will not be used downstream.- Specified by:
getNanoTime
in interfaceLogEvent
- Returns:
- The value of the running Java Virtual Machine's high-resolution time source when this event was created.
-
-