Class RingBufferLogEventTranslator
java.lang.Object
org.apache.logging.log4j.core.async.RingBufferLogEventTranslator
- All Implemented Interfaces:
com.lmax.disruptor.EventTranslator<RingBufferLogEvent>
public class RingBufferLogEventTranslator
extends Object
implements com.lmax.disruptor.EventTranslator<RingBufferLogEvent>
This class is responsible for writing elements that make up a log event into
the ringbuffer
RingBufferLogEvent
. After this translator populated
the ringbuffer event, the disruptor will update the sequence number so that
the event can be consumed by another thread.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate AsyncLogger
private Clock
private ThreadContext.ContextStack
protected String
private static final ContextDataInjector
protected Level
private StackTraceElement
(package private) String
protected Marker
protected Message
private NanoClock
private long
private String
private int
protected Throwable
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) void
clear()
Release references held by this object to allow objects to be garbage-collected.void
setBasicValues
(AsyncLogger anAsyncLogger, String aLoggerName, Marker aMarker, String theFqcn, Level aLevel, Message msg, Throwable aThrowable, ThreadContext.ContextStack aContextStack, StackTraceElement aLocation, Clock aClock, NanoClock aNanoClock) void
translateTo
(RingBufferLogEvent event, long sequence) void
-
Field Details
-
INJECTOR
-
asyncLogger
-
loggerName
String loggerName -
marker
-
fqcn
-
level
-
message
-
thrown
-
contextStack
-
threadId
private long threadId -
threadName
-
threadPriority
private int threadPriority -
location
-
clock
-
nanoClock
-
-
Constructor Details
-
RingBufferLogEventTranslator
public RingBufferLogEventTranslator()
-
-
Method Details
-
translateTo
- Specified by:
translateTo
in interfacecom.lmax.disruptor.EventTranslator<RingBufferLogEvent>
-
clear
void clear()Release references held by this object to allow objects to be garbage-collected. -
setBasicValues
public void setBasicValues(AsyncLogger anAsyncLogger, String aLoggerName, Marker aMarker, String theFqcn, Level aLevel, Message msg, Throwable aThrowable, ThreadContext.ContextStack aContextStack, StackTraceElement aLocation, Clock aClock, NanoClock aNanoClock) -
updateThreadValues
public void updateThreadValues()
-