java.lang.Object
ch.qos.logback.classic.spi.LoggingEvent
- All Implemented Interfaces:
ILoggingEvent,DeferredProcessingAware
The internal representation of logging events. When an affirmative decision is made to log then a
LoggingEvent instance is created. This instance is passed around to the different logback-classic
components.
Writers of logback-classic components such as appenders should be aware of that some of the LoggingEvent fields are
initialized lazily. Therefore, an appender wishing to output data to be later correctly read by a receiver, must
initialize "lazy" fields prior to writing them out. See the prepareForDeferredProcessing() method for the
exact list.
- Author:
- Ceki Gülcü, Sébastien Pennec
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddKeyValuePair(org.slf4j.event.KeyValuePair kvp) voidaddMarker(org.slf4j.Marker marker) Object[]Get the caller information for this logging event.longReturn theInstantcorresponding to the creation of this event.List<org.slf4j.event.KeyValuePair> A list ofKeyValuePairobjects.getLevel()List<org.slf4j.Marker> Since SLF4J 2.0.0, the slf4j logging API assumes the possibility of multiple Marker instances in a logging event.getMdc()Deprecated.Replaced by [@link #getMDCPropertyMap}Returns the MDC map.intReturn the number of nanoseconds past thetimestamp in seconds.longThe sequence number associated with this event.Returns the throwable information contained within this event.longReturn the number of elapsed milliseconds since epoch in UTC.booleanIf this event has caller data, then true is returned.voidThis method should be called prior to serializing an event.voidsetArgumentArray(Object[] argArray) voidsetCallerData(StackTraceElement[] callerDataArray) voidsetInstant(Instant instant) SetInstantcorresponding to the creation of this event.voidsetKeyValuePairs(List<org.slf4j.event.KeyValuePair> kvpList) voidvoidvoidsetLoggerContextRemoteView(LoggerContextVO loggerContextVO) voidsetLoggerName(String loggerName) voidsetMDCPropertyMap(Map<String, String> map) Set the MDC map for this event.voidsetMessage(String message) voidsetSequenceNumber(long sn) voidsetThreadName(String threadName) voidSet this event's throwable information.voidsetTimeStamp(long timeStamp) Set the number of elapsed milliseconds since epoch in UTC.toString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface ch.qos.logback.classic.spi.ILoggingEvent
getMarker
-
Field Details
-
VIRTUAL_THREAD_NAME_PREFIX
- See Also:
-
REGULAR_UNNAMED_THREAD_PREFIX
- See Also:
-
-
Constructor Details
-
LoggingEvent
public LoggingEvent() -
LoggingEvent
-
-
Method Details
-
setArgumentArray
-
getArgumentArray
- Specified by:
getArgumentArrayin interfaceILoggingEvent
-
addKeyValuePair
-
setKeyValuePairs
-
getKeyValuePairs
Description copied from interface:ILoggingEventA list ofKeyValuePairobjects. The returned list may be null.- Specified by:
getKeyValuePairsin interfaceILoggingEvent- Returns:
- may be null
-
getLevel
- Specified by:
getLevelin interfaceILoggingEvent
-
getLoggerName
- Specified by:
getLoggerNamein interfaceILoggingEvent
-
setLoggerName
-
getThreadName
- Specified by:
getThreadNamein interfaceILoggingEvent
-
setThreadName
- Parameters:
threadName- The threadName to set.- Throws:
IllegalStateException- If threadName has been already set.
-
getThrowableProxy
Returns the throwable information contained within this event. May benullif there is no such information.- Specified by:
getThrowableProxyin interfaceILoggingEvent
-
setThrowableProxy
Set this event's throwable information. -
prepareForDeferredProcessing
This method should be called prior to serializing an event. It should also be called when using asynchronous or deferred logging. Note that due to performance concerns, this method does NOT extract caller data. It is the responsibility of the caller to extract caller information.- Specified by:
prepareForDeferredProcessingin interfaceDeferredProcessingAware- Specified by:
prepareForDeferredProcessingin interfaceILoggingEvent
-
setLoggerContext
-
getLoggerContextVO
- Specified by:
getLoggerContextVOin interfaceILoggingEvent
-
setLoggerContextRemoteView
-
getMessage
- Specified by:
getMessagein interfaceILoggingEvent
-
setMessage
-
getInstant
Return theInstantcorresponding to the creation of this event.- Specified by:
getInstantin interfaceILoggingEvent- Returns:
- the
Instantthe event was created. - Since:
- 1.3
-
setInstant
SetInstantcorresponding to the creation of this event. The value ofgetTimeStamp()will be overridden as well. -
getTimeStamp
Return the number of elapsed milliseconds since epoch in UTC.- Specified by:
getTimeStampin interfaceILoggingEvent- Returns:
- the number of elapsed milliseconds since epoch
-
getNanoseconds
Return the number of nanoseconds past thetimestamp in seconds.- Specified by:
getNanosecondsin interfaceILoggingEvent- Returns:
- the number of elapsed nanoseconds as found in
ILoggingEvent.getInstant() - Since:
- 1.3.0
-
setTimeStamp
Set the number of elapsed milliseconds since epoch in UTC. Setting the timestamp will override the value contained ingetInstant(). Nanoseconds value will be computed form the provided millisecond value. -
getSequenceNumber
Description copied from interface:ILoggingEventThe sequence number associated with this event.Sequence numbers, if present, should be increasing monotonically.
- Specified by:
getSequenceNumberin interfaceILoggingEvent
-
setSequenceNumber
-
setLevel
-
getCallerData
Get the caller information for this logging event. If caller information is null at the time of its invocation, this method extracts location information. The collected information is cached for future use.Note that after serialization it is impossible to correctly extract caller information.
- Specified by:
getCallerDatain interfaceILoggingEvent- Returns:
- the caller data associated with this event.
- See Also:
-
hasCallerData
Description copied from interface:ILoggingEventIf this event has caller data, then true is returned. Otherwise the returned value is null.Logback components wishing to use caller data if available without causing it to be computed can invoke this method before invoking
ILoggingEvent.getCallerData().- Specified by:
hasCallerDatain interfaceILoggingEvent- Returns:
- whether this event has caller data
-
setCallerData
-
getMarkerList
Description copied from interface:ILoggingEventSince SLF4J 2.0.0, the slf4j logging API assumes the possibility of multiple Marker instances in a logging event. Consequently, ILoggingEvent needs to cater for this possibility.- Specified by:
getMarkerListin interfaceILoggingEvent- Returns:
- the marker list, may be null
-
addMarker
-
getContextBirthTime
-
getFormattedMessage
- Specified by:
getFormattedMessagein interfaceILoggingEvent
-
getMDCPropertyMap
Description copied from interface:ILoggingEventReturns the MDC map. The returned value can be an empty map but not null.- Specified by:
getMDCPropertyMapin interfaceILoggingEvent
-
setMDCPropertyMap
Set the MDC map for this event.- Parameters:
map-- Since:
- 1.0.8
-
getMdc
-
toString
-