public abstract class AbstractLogEvent extends Object implements LogEvent
Constructor and Description |
---|
AbstractLogEvent() |
Modifier and Type | Method and Description |
---|---|
ReadOnlyStringMap |
getContextData()
Returns the
ReadOnlyStringMap object holding context data key-value pairs. |
Map<String,String> |
getContextMap()
Returns
Collections.emptyMap() . |
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.
|
protected MutableInstant |
getMutableInstant() |
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()
Returns
true 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()
Subclasses should implement this method to provide an immutable version.
|
public LogEvent toImmutable()
toImmutable
in interface LogEvent
public ReadOnlyStringMap getContextData()
LogEvent
ReadOnlyStringMap
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 custom ContextDataInjector
to inject key-value pairs from any arbitrary source.
getContextData
in interface LogEvent
ReadOnlyStringMap
object holding context data key-value pairsContextDataInjector
,
ThreadContext
public Map<String,String> getContextMap()
Collections.emptyMap()
.getContextMap
in interface LogEvent
null
.public ThreadContext.ContextStack getContextStack()
LogEvent
getContextStack
in interface LogEvent
null
.public String getLoggerFqcn()
LogEvent
getLoggerFqcn
in interface LogEvent
public String getLoggerName()
LogEvent
getLoggerName
in interface LogEvent
null
.public Marker getMarker()
LogEvent
public Message getMessage()
LogEvent
getMessage
in interface LogEvent
public StackTraceElement getSource()
LogEvent
public long getThreadId()
LogEvent
getThreadId
in interface LogEvent
public String getThreadName()
LogEvent
getThreadName
in interface LogEvent
public int getThreadPriority()
LogEvent
getThreadPriority
in interface LogEvent
public Throwable getThrown()
LogEvent
Convenience method for ThrowableProxy.getThrowable();
public ThrowableProxy getThrownProxy()
LogEvent
getThrownProxy
in interface LogEvent
public long getTimeMillis()
LogEvent
LogEvent.getInstant()
to get higher precision timestamp information if available on this platform.getTimeMillis
in interface LogEvent
System.currentTimeMillis()
public Instant getInstant()
LogEvent
Caution: if this LogEvent
implementation is mutable and reused for multiple consecutive log messages,
then the Instant
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.
getInstant
in interface LogEvent
Instant
holding Instant details for this log eventprotected final MutableInstant getMutableInstant()
public boolean isEndOfBatch()
LogEvent
true
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 the immediateFlush=true
configuration.isEndOfBatch
in interface LogEvent
public boolean isIncludeLocation()
LogEvent
StackTrace
snapshot or not before handing off this event to
another thread.isIncludeLocation
in interface LogEvent
true
if the source of the logging request is required downstream, false
otherwise.LogEvent.getSource()
public void setEndOfBatch(boolean endOfBatch)
LogEvent
immediateFlush=true
configuration.setEndOfBatch
in interface LogEvent
endOfBatch
- true
if this event is the last one in a batch, false
otherwise.public void setIncludeLocation(boolean locationRequired)
LogEvent
StackTrace
snapshot or not before handing off this event to
another thread.setIncludeLocation
in interface LogEvent
locationRequired
- true
if the source of the logging request is required downstream, false
otherwise.LogEvent.getSource()
public long getNanoTime()
LogEvent
getNanoTime
in interface LogEvent
Copyright © 1999-2023 The Apache Software Foundation. All Rights Reserved.
Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.