public class org.apache.logging.log4j.core.async.AsyncLogger extends org.apache.logging.log4j.core.Logger implements com.lmax.disruptor.EventTranslatorVararg<org.apache.logging.log4j.core.async.RingBufferLogEvent>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.logging.log4j.core.async.AsyncLogger
super_class: org.apache.logging.log4j.core.Logger
{
private static final org.apache.logging.log4j.status.StatusLogger LOGGER;
descriptor: Lorg/apache/logging/log4j/status/StatusLogger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.apache.logging.log4j.core.util.Clock CLOCK;
descriptor: Lorg/apache/logging/log4j/core/util/Clock;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.apache.logging.log4j.core.ContextDataInjector CONTEXT_DATA_INJECTOR;
descriptor: Lorg/apache/logging/log4j/core/ContextDataInjector;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.apache.logging.log4j.core.async.ThreadNameCachingStrategy THREAD_NAME_CACHING_STRATEGY;
descriptor: Lorg/apache/logging/log4j/core/async/ThreadNameCachingStrategy;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.lang.ThreadLocal<org.apache.logging.log4j.core.async.RingBufferLogEventTranslator> threadLocalTranslator;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;>;
private final org.apache.logging.log4j.core.async.AsyncLoggerDisruptor loggerDisruptor;
descriptor: Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private volatile boolean includeLocation;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile org.apache.logging.log4j.core.util.NanoClock nanoClock;
descriptor: Lorg/apache/logging/log4j/core/util/NanoClock;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private static volatile int[] $SWITCH_TABLE$org$apache$logging$log4j$core$async$EventRoute;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic org.apache.logging.log4j.status.StatusLogger.getLogger:()Lorg/apache/logging/log4j/status/StatusLogger;
putstatic org.apache.logging.log4j.core.async.AsyncLogger.LOGGER:Lorg/apache/logging/log4j/status/StatusLogger;
1: invokestatic org.apache.logging.log4j.core.util.ClockFactory.getClock:()Lorg/apache/logging/log4j/core/util/Clock;
putstatic org.apache.logging.log4j.core.async.AsyncLogger.CLOCK:Lorg/apache/logging/log4j/core/util/Clock;
2: invokestatic org.apache.logging.log4j.core.impl.ContextDataInjectorFactory.createInjector:()Lorg/apache/logging/log4j/core/ContextDataInjector;
putstatic org.apache.logging.log4j.core.async.AsyncLogger.CONTEXT_DATA_INJECTOR:Lorg/apache/logging/log4j/core/ContextDataInjector;
3: invokestatic org.apache.logging.log4j.core.async.ThreadNameCachingStrategy.create:()Lorg/apache/logging/log4j/core/async/ThreadNameCachingStrategy;
putstatic org.apache.logging.log4j.core.async.AsyncLogger.THREAD_NAME_CACHING_STRATEGY:Lorg/apache/logging/log4j/core/async/ThreadNameCachingStrategy;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.apache.logging.log4j.core.LoggerContext, java.lang.String, org.apache.logging.log4j.message.MessageFactory, org.apache.logging.log4j.core.async.AsyncLoggerDisruptor);
descriptor: (Lorg/apache/logging/log4j/core/LoggerContext;Ljava/lang/String;Lorg/apache/logging/log4j/message/MessageFactory;Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
invokespecial org.apache.logging.log4j.core.Logger.<init>:(Lorg/apache/logging/log4j/core/LoggerContext;Ljava/lang/String;Lorg/apache/logging/log4j/message/MessageFactory;)V
1: aload 0
new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
putfield org.apache.logging.log4j.core.async.AsyncLogger.threadLocalTranslator:Ljava/lang/ThreadLocal;
2: aload 0
aload 4
putfield org.apache.logging.log4j.core.async.AsyncLogger.loggerDisruptor:Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;
3: aload 0
aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.privateConfig:Lorg/apache/logging/log4j/core/Logger$PrivateConfig;
getfield org.apache.logging.log4j.core.Logger$PrivateConfig.loggerConfig:Lorg/apache/logging/log4j/core/config/LoggerConfig;
invokevirtual org.apache.logging.log4j.core.config.LoggerConfig.isIncludeLocation:()Z
putfield org.apache.logging.log4j.core.async.AsyncLogger.includeLocation:Z
4: aload 0
aload 1
invokevirtual org.apache.logging.log4j.core.LoggerContext.getConfiguration:()Lorg/apache/logging/log4j/core/config/Configuration;
invokeinterface org.apache.logging.log4j.core.config.Configuration.getNanoClock:()Lorg/apache/logging/log4j/core/util/NanoClock;
putfield org.apache.logging.log4j.core.async.AsyncLogger.nanoClock:Lorg/apache/logging/log4j/core/util/NanoClock;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 6 1 context Lorg/apache/logging/log4j/core/LoggerContext;
0 6 2 name Ljava/lang/String;
0 6 3 messageFactory Lorg/apache/logging/log4j/message/MessageFactory;
0 6 4 loggerDisruptor Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;
MethodParameters:
Name Flags
context final
name final
messageFactory final
loggerDisruptor final
protected void updateConfiguration(org.apache.logging.log4j.core.config.Configuration);
descriptor: (Lorg/apache/logging/log4j/core/config/Configuration;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokeinterface org.apache.logging.log4j.core.config.Configuration.getNanoClock:()Lorg/apache/logging/log4j/core/util/NanoClock;
putfield org.apache.logging.log4j.core.async.AsyncLogger.nanoClock:Lorg/apache/logging/log4j/core/util/NanoClock;
1: aload 0
aload 1
aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.name:Ljava/lang/String;
invokeinterface org.apache.logging.log4j.core.config.Configuration.getLoggerConfig:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/config/LoggerConfig;
invokevirtual org.apache.logging.log4j.core.config.LoggerConfig.isIncludeLocation:()Z
putfield org.apache.logging.log4j.core.async.AsyncLogger.includeLocation:Z
2: aload 0
aload 1
invokespecial org.apache.logging.log4j.core.Logger.updateConfiguration:(Lorg/apache/logging/log4j/core/config/Configuration;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 4 1 newConfig Lorg/apache/logging/log4j/core/config/Configuration;
MethodParameters:
Name Flags
newConfig final
org.apache.logging.log4j.core.util.NanoClock getNanoClock();
descriptor: ()Lorg/apache/logging/log4j/core/util/NanoClock;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.nanoClock:Lorg/apache/logging/log4j/core/util/NanoClock;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
private org.apache.logging.log4j.core.async.RingBufferLogEventTranslator getCachedTranslator();
descriptor: ()Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.threadLocalTranslator:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast org.apache.logging.log4j.core.async.RingBufferLogEventTranslator
astore 1
start local 1 1: aload 1
ifnonnull 4
2: new org.apache.logging.log4j.core.async.RingBufferLogEventTranslator
dup
invokespecial org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.<init>:()V
astore 1
3: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.threadLocalTranslator:Ljava/lang/ThreadLocal;
aload 1
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
4: StackMap locals: org.apache.logging.log4j.core.async.RingBufferLogEventTranslator
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
1 5 1 result Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;
public void logMessage(java.lang.String, org.apache.logging.log4j.Level, org.apache.logging.log4j.Marker, org.apache.logging.log4j.message.Message, java.lang.Throwable);
descriptor: (Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.loggerDisruptor:Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;
invokevirtual org.apache.logging.log4j.core.async.AsyncLoggerDisruptor.isUseThreadLocals:()Z
ifeq 3
1: aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.logWithThreadLocalTranslator:(Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.logWithVarargTranslator:(Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
4: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 5 1 fqcn Ljava/lang/String;
0 5 2 level Lorg/apache/logging/log4j/Level;
0 5 3 marker Lorg/apache/logging/log4j/Marker;
0 5 4 message Lorg/apache/logging/log4j/message/Message;
0 5 5 thrown Ljava/lang/Throwable;
MethodParameters:
Name Flags
fqcn final
level final
marker final
message final
thrown final
private boolean isReused(org.apache.logging.log4j.message.Message);
descriptor: (Lorg/apache/logging/log4j/message/Message;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.apache.logging.log4j.message.ReusableMessage
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 1 1 message Lorg/apache/logging/log4j/message/Message;
MethodParameters:
Name Flags
message final
private void logWithThreadLocalTranslator(java.lang.String, org.apache.logging.log4j.Level, org.apache.logging.log4j.Marker, org.apache.logging.log4j.message.Message, java.lang.Throwable);
descriptor: (Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.getCachedTranslator:()Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;
astore 6
start local 6 1: aload 0
aload 6
aload 1
aload 2
aload 3
aload 4
aload 5
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.initTranslator:(Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
2: aload 0
aload 6
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.initTranslatorThreadValues:(Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;)V
3: aload 0
aload 6
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.publish:(Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;)V
4: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 5 1 fqcn Ljava/lang/String;
0 5 2 level Lorg/apache/logging/log4j/Level;
0 5 3 marker Lorg/apache/logging/log4j/Marker;
0 5 4 message Lorg/apache/logging/log4j/message/Message;
0 5 5 thrown Ljava/lang/Throwable;
1 5 6 translator Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;
MethodParameters:
Name Flags
fqcn final
level final
marker final
message final
thrown final
private void publish(org.apache.logging.log4j.core.async.RingBufferLogEventTranslator);
descriptor: (Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.loggerDisruptor:Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;
aload 1
invokevirtual org.apache.logging.log4j.core.async.AsyncLoggerDisruptor.tryPublish:(Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;)Z
ifne 2
1: aload 0
aload 1
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.handleRingBufferFull:(Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;)V
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 3 1 translator Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;
MethodParameters:
Name Flags
translator final
private void handleRingBufferFull(org.apache.logging.log4j.core.async.RingBufferLogEventTranslator);
descriptor: (Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: invokestatic org.apache.logging.log4j.spi.AbstractLogger.getRecursionDepth:()I
iconst_1
if_icmple 6
1: aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.message:Lorg/apache/logging/log4j/message/Message;
invokestatic org.apache.logging.log4j.core.async.AsyncQueueFullMessageUtil.transform:(Lorg/apache/logging/log4j/message/Message;)Lorg/apache/logging/log4j/message/Message;
astore 2
start local 2 2: aload 0
aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.fqcn:Ljava/lang/String;
aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.level:Lorg/apache/logging/log4j/Level;
aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.marker:Lorg/apache/logging/log4j/Marker;
aload 2
3: aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.thrown:Ljava/lang/Throwable;
4: invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.logMessageInCurrentThread:(Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
5: return
end local 2 6: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.loggerDisruptor:Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;
aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.level:Lorg/apache/logging/log4j/Level;
invokevirtual org.apache.logging.log4j.core.async.AsyncLoggerDisruptor.getEventRoute:(Lorg/apache/logging/log4j/Level;)Lorg/apache/logging/log4j/core/async/EventRoute;
astore 2
start local 2 7: invokestatic org.apache.logging.log4j.core.async.AsyncLogger.$SWITCH_TABLE$org$apache$logging$log4j$core$async$EventRoute:()[I
aload 2
invokevirtual org.apache.logging.log4j.core.async.EventRoute.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 8
2: 10
3: 14
default: 15
}
8: StackMap locals: org.apache.logging.log4j.core.async.EventRoute
StackMap stack:
aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.loggerDisruptor:Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;
aload 1
invokevirtual org.apache.logging.log4j.core.async.AsyncLoggerDisruptor.enqueueLogMessageInfo:(Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;)V
9: goto 16
10: StackMap locals:
StackMap stack:
aload 0
aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.fqcn:Ljava/lang/String;
aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.level:Lorg/apache/logging/log4j/Level;
aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.marker:Lorg/apache/logging/log4j/Marker;
aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.message:Lorg/apache/logging/log4j/message/Message;
11: aload 1
getfield org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.thrown:Ljava/lang/Throwable;
12: invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.logMessageInCurrentThread:(Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
13: goto 16
14: StackMap locals:
StackMap stack:
goto 16
15: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Unknown EventRoute "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 17 1 translator Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;
2 6 2 message Lorg/apache/logging/log4j/message/Message;
7 17 2 eventRoute Lorg/apache/logging/log4j/core/async/EventRoute;
MethodParameters:
Name Flags
translator final
private void initTranslator(org.apache.logging.log4j.core.async.RingBufferLogEventTranslator, java.lang.String, org.apache.logging.log4j.Level, org.apache.logging.log4j.Marker, org.apache.logging.log4j.message.Message, java.lang.Throwable);
descriptor: (Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=12, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 1
aload 0
aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.name:Ljava/lang/String;
aload 4
aload 2
aload 3
aload 5
1: aload 6
2: invokestatic org.apache.logging.log4j.ThreadContext.getImmutableStack:()Lorg/apache/logging/log4j/ThreadContext$ContextStack;
3: aload 0
aload 2
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.calcLocationIfRequested:(Ljava/lang/String;)Ljava/lang/StackTraceElement;
4: getstatic org.apache.logging.log4j.core.async.AsyncLogger.CLOCK:Lorg/apache/logging/log4j/core/util/Clock;
5: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.nanoClock:Lorg/apache/logging/log4j/core/util/NanoClock;
6: invokevirtual org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.setBasicValues:(Lorg/apache/logging/log4j/core/async/AsyncLogger;Ljava/lang/String;Lorg/apache/logging/log4j/Marker;Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;Lorg/apache/logging/log4j/ThreadContext$ContextStack;Ljava/lang/StackTraceElement;Lorg/apache/logging/log4j/core/util/Clock;Lorg/apache/logging/log4j/core/util/NanoClock;)V
7: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 8 1 translator Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;
0 8 2 fqcn Ljava/lang/String;
0 8 3 level Lorg/apache/logging/log4j/Level;
0 8 4 marker Lorg/apache/logging/log4j/Marker;
0 8 5 message Lorg/apache/logging/log4j/message/Message;
0 8 6 thrown Ljava/lang/Throwable;
MethodParameters:
Name Flags
translator final
fqcn final
level final
marker final
message final
thrown final
private void initTranslatorThreadValues(org.apache.logging.log4j.core.async.RingBufferLogEventTranslator);
descriptor: (Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.apache.logging.log4j.core.async.AsyncLogger.THREAD_NAME_CACHING_STRATEGY:Lorg/apache/logging/log4j/core/async/ThreadNameCachingStrategy;
getstatic org.apache.logging.log4j.core.async.ThreadNameCachingStrategy.UNCACHED:Lorg/apache/logging/log4j/core/async/ThreadNameCachingStrategy;
if_acmpne 2
1: aload 1
invokevirtual org.apache.logging.log4j.core.async.RingBufferLogEventTranslator.updateThreadValues:()V
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 3 1 translator Lorg/apache/logging/log4j/core/async/RingBufferLogEventTranslator;
MethodParameters:
Name Flags
translator final
private java.lang.StackTraceElement calcLocationIfRequested(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/StackTraceElement;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.includeLocation:Z
ifeq 1
aload 1
invokestatic org.apache.logging.log4j.util.StackLocatorUtil.calcLocation:(Ljava/lang/String;)Ljava/lang/StackTraceElement;
goto 2
StackMap locals:
StackMap stack:
1: aconst_null
StackMap locals:
StackMap stack: java.lang.StackTraceElement
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 3 1 fqcn Ljava/lang/String;
MethodParameters:
Name Flags
fqcn final
private void logWithVarargTranslator(java.lang.String, org.apache.logging.log4j.Level, org.apache.logging.log4j.Marker, org.apache.logging.log4j.message.Message, java.lang.Throwable);
descriptor: (Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.loggerDisruptor:Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;
invokevirtual org.apache.logging.log4j.core.async.AsyncLoggerDisruptor.getDisruptor:()Lcom/lmax/disruptor/dsl/Disruptor;
astore 6
start local 6 1: aload 6
ifnonnull 4
2: getstatic org.apache.logging.log4j.core.async.AsyncLogger.LOGGER:Lorg/apache/logging/log4j/status/StatusLogger;
ldc "Ignoring log event after Log4j has been shut down."
invokevirtual org.apache.logging.log4j.status.StatusLogger.error:(Ljava/lang/String;)V
3: return
4: StackMap locals: com.lmax.disruptor.dsl.Disruptor
StackMap stack:
aload 0
aload 4
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.isReused:(Lorg/apache/logging/log4j/message/Message;)Z
ifne 6
5: aload 4
invokestatic org.apache.logging.log4j.core.async.InternalAsyncUtil.makeMessageImmutable:(Lorg/apache/logging/log4j/message/Message;)Lorg/apache/logging/log4j/message/Message;
pop
6: StackMap locals:
StackMap stack:
aconst_null
astore 7
start local 7 7: aload 6
invokevirtual com.lmax.disruptor.dsl.Disruptor.getRingBuffer:()Lcom/lmax/disruptor/RingBuffer;
aload 0
bipush 7
anewarray java.lang.Object
dup
iconst_0
8: aload 0
aastore
dup
iconst_1
9: aload 0
aload 1
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.calcLocationIfRequested:(Ljava/lang/String;)Ljava/lang/StackTraceElement;
dup
astore 7
aastore
dup
iconst_2
10: aload 1
aastore
dup
iconst_3
11: aload 2
aastore
dup
iconst_4
12: aload 3
aastore
dup
iconst_5
13: aload 4
aastore
dup
bipush 6
14: aload 5
aastore
15: invokevirtual com.lmax.disruptor.RingBuffer.tryPublishEvent:(Lcom/lmax/disruptor/EventTranslatorVararg;[Ljava/lang/Object;)Z
16: ifne 18
17: aload 0
aload 7
aload 1
aload 2
aload 3
aload 4
aload 5
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.handleRingBufferFull:(Ljava/lang/StackTraceElement;Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
18: StackMap locals: java.lang.StackTraceElement
StackMap stack:
return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 19 1 fqcn Ljava/lang/String;
0 19 2 level Lorg/apache/logging/log4j/Level;
0 19 3 marker Lorg/apache/logging/log4j/Marker;
0 19 4 message Lorg/apache/logging/log4j/message/Message;
0 19 5 thrown Ljava/lang/Throwable;
1 19 6 disruptor Lcom/lmax/disruptor/dsl/Disruptor<Lorg/apache/logging/log4j/core/async/RingBufferLogEvent;>;
7 19 7 location Ljava/lang/StackTraceElement;
MethodParameters:
Name Flags
fqcn final
level final
marker final
message final
thrown final
public void translateTo(org.apache.logging.log4j.core.async.RingBufferLogEvent, long, java.lang.Object[]);
descriptor: (Lorg/apache/logging/log4j/core/async/RingBufferLogEvent;J[Ljava/lang/Object;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=17, locals=15, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 4
iconst_0
aaload
checkcast org.apache.logging.log4j.core.async.AsyncLogger
astore 5
start local 5 1: aload 4
iconst_1
aaload
checkcast java.lang.StackTraceElement
astore 6
start local 6 2: aload 4
iconst_2
aaload
checkcast java.lang.String
astore 7
start local 7 3: aload 4
iconst_3
aaload
checkcast org.apache.logging.log4j.Level
astore 8
start local 8 4: aload 4
iconst_4
aaload
checkcast org.apache.logging.log4j.Marker
astore 9
start local 9 5: aload 4
iconst_5
aaload
checkcast org.apache.logging.log4j.message.Message
astore 10
start local 10 6: aload 4
bipush 6
aaload
checkcast java.lang.Throwable
astore 11
start local 11 7: invokestatic org.apache.logging.log4j.ThreadContext.getImmutableStack:()Lorg/apache/logging/log4j/ThreadContext$ContextStack;
astore 12
start local 12 8: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
astore 13
start local 13 9: getstatic org.apache.logging.log4j.core.async.AsyncLogger.THREAD_NAME_CACHING_STRATEGY:Lorg/apache/logging/log4j/core/async/ThreadNameCachingStrategy;
invokevirtual org.apache.logging.log4j.core.async.ThreadNameCachingStrategy.getThreadName:()Ljava/lang/String;
astore 14
start local 14 10: aload 1
aload 5
aload 5
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.getName:()Ljava/lang/String;
aload 9
aload 7
aload 8
aload 10
aload 11
11: getstatic org.apache.logging.log4j.core.async.AsyncLogger.CONTEXT_DATA_INJECTOR:Lorg/apache/logging/log4j/core/ContextDataInjector;
aconst_null
aload 1
invokevirtual org.apache.logging.log4j.core.async.RingBufferLogEvent.getContextData:()Lorg/apache/logging/log4j/util/ReadOnlyStringMap;
checkcast org.apache.logging.log4j.util.StringMap
invokeinterface org.apache.logging.log4j.core.ContextDataInjector.injectContextData:(Ljava/util/List;Lorg/apache/logging/log4j/util/StringMap;)Lorg/apache/logging/log4j/util/StringMap;
12: aload 12
aload 13
invokevirtual java.lang.Thread.getId:()J
aload 14
aload 13
invokevirtual java.lang.Thread.getPriority:()I
aload 6
13: getstatic org.apache.logging.log4j.core.async.AsyncLogger.CLOCK:Lorg/apache/logging/log4j/core/util/Clock;
aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.nanoClock:Lorg/apache/logging/log4j/core/util/NanoClock;
14: invokevirtual org.apache.logging.log4j.core.async.RingBufferLogEvent.setValues:(Lorg/apache/logging/log4j/core/async/AsyncLogger;Ljava/lang/String;Lorg/apache/logging/log4j/Marker;Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;Lorg/apache/logging/log4j/util/StringMap;Lorg/apache/logging/log4j/ThreadContext$ContextStack;JLjava/lang/String;ILjava/lang/StackTraceElement;Lorg/apache/logging/log4j/core/util/Clock;Lorg/apache/logging/log4j/core/util/NanoClock;)V
15: return
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 16 1 event Lorg/apache/logging/log4j/core/async/RingBufferLogEvent;
0 16 2 sequence J
0 16 4 args [Ljava/lang/Object;
1 16 5 asyncLogger Lorg/apache/logging/log4j/core/async/AsyncLogger;
2 16 6 location Ljava/lang/StackTraceElement;
3 16 7 fqcn Ljava/lang/String;
4 16 8 level Lorg/apache/logging/log4j/Level;
5 16 9 marker Lorg/apache/logging/log4j/Marker;
6 16 10 message Lorg/apache/logging/log4j/message/Message;
7 16 11 thrown Ljava/lang/Throwable;
8 16 12 contextStack Lorg/apache/logging/log4j/ThreadContext$ContextStack;
9 16 13 currentThread Ljava/lang/Thread;
10 16 14 threadName Ljava/lang/String;
MethodParameters:
Name Flags
event final
sequence final
args final
void logMessageInCurrentThread(java.lang.String, org.apache.logging.log4j.Level, org.apache.logging.log4j.Marker, org.apache.logging.log4j.message.Message, java.lang.Throwable);
descriptor: (Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
flags: (0x0000)
Code:
stack=8, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.privateConfig:Lorg/apache/logging/log4j/core/Logger$PrivateConfig;
getfield org.apache.logging.log4j.core.Logger$PrivateConfig.loggerConfig:Lorg/apache/logging/log4j/core/config/LoggerConfig;
invokevirtual org.apache.logging.log4j.core.config.LoggerConfig.getReliabilityStrategy:()Lorg/apache/logging/log4j/core/config/ReliabilityStrategy;
astore 6
start local 6 1: aload 6
aload 0
aload 0
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.getName:()Ljava/lang/String;
aload 1
aload 3
aload 2
aload 4
aload 5
invokeinterface org.apache.logging.log4j.core.config.ReliabilityStrategy.log:(Lorg/apache/logging/log4j/util/Supplier;Ljava/lang/String;Ljava/lang/String;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
2: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 3 1 fqcn Ljava/lang/String;
0 3 2 level Lorg/apache/logging/log4j/Level;
0 3 3 marker Lorg/apache/logging/log4j/Marker;
0 3 4 message Lorg/apache/logging/log4j/message/Message;
0 3 5 thrown Ljava/lang/Throwable;
1 3 6 strategy Lorg/apache/logging/log4j/core/config/ReliabilityStrategy;
MethodParameters:
Name Flags
fqcn final
level final
marker final
message final
thrown final
private void handleRingBufferFull(java.lang.StackTraceElement, java.lang.String, org.apache.logging.log4j.Level, org.apache.logging.log4j.Marker, org.apache.logging.log4j.message.Message, java.lang.Throwable);
descriptor: (Ljava/lang/StackTraceElement;Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: invokestatic org.apache.logging.log4j.spi.AbstractLogger.getRecursionDepth:()I
iconst_1
if_icmple 4
1: aload 5
invokestatic org.apache.logging.log4j.core.async.AsyncQueueFullMessageUtil.transform:(Lorg/apache/logging/log4j/message/Message;)Lorg/apache/logging/log4j/message/Message;
astore 7
start local 7 2: aload 0
aload 2
aload 3
aload 4
aload 7
aload 6
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.logMessageInCurrentThread:(Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
3: return
end local 7 4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.loggerDisruptor:Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;
aload 3
invokevirtual org.apache.logging.log4j.core.async.AsyncLoggerDisruptor.getEventRoute:(Lorg/apache/logging/log4j/Level;)Lorg/apache/logging/log4j/core/async/EventRoute;
astore 7
start local 7 5: invokestatic org.apache.logging.log4j.core.async.AsyncLogger.$SWITCH_TABLE$org$apache$logging$log4j$core$async$EventRoute:()[I
aload 7
invokevirtual org.apache.logging.log4j.core.async.EventRoute.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 6
2: 16
3: 18
default: 19
}
6: StackMap locals: org.apache.logging.log4j.core.async.EventRoute
StackMap stack:
aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.loggerDisruptor:Lorg/apache/logging/log4j/core/async/AsyncLoggerDisruptor;
invokevirtual org.apache.logging.log4j.core.async.AsyncLoggerDisruptor.getDisruptor:()Lcom/lmax/disruptor/dsl/Disruptor;
invokevirtual com.lmax.disruptor.dsl.Disruptor.getRingBuffer:()Lcom/lmax/disruptor/RingBuffer;
aload 0
bipush 7
anewarray java.lang.Object
dup
iconst_0
7: aload 0
aastore
dup
iconst_1
8: aload 1
aastore
dup
iconst_2
9: aload 2
aastore
dup
iconst_3
10: aload 3
aastore
dup
iconst_4
11: aload 4
aastore
dup
iconst_5
12: aload 5
aastore
dup
bipush 6
13: aload 6
aastore
14: invokevirtual com.lmax.disruptor.RingBuffer.publishEvent:(Lcom/lmax/disruptor/EventTranslatorVararg;[Ljava/lang/Object;)V
15: goto 20
16: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 3
aload 4
aload 5
aload 6
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.logMessageInCurrentThread:(Ljava/lang/String;Lorg/apache/logging/log4j/Level;Lorg/apache/logging/log4j/Marker;Lorg/apache/logging/log4j/message/Message;Ljava/lang/Throwable;)V
17: goto 20
18: StackMap locals:
StackMap stack:
goto 20
19: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Unknown EventRoute "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
20: StackMap locals:
StackMap stack:
return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 21 1 location Ljava/lang/StackTraceElement;
0 21 2 fqcn Ljava/lang/String;
0 21 3 level Lorg/apache/logging/log4j/Level;
0 21 4 marker Lorg/apache/logging/log4j/Marker;
0 21 5 msg Lorg/apache/logging/log4j/message/Message;
0 21 6 thrown Ljava/lang/Throwable;
2 4 7 message Lorg/apache/logging/log4j/message/Message;
5 21 7 eventRoute Lorg/apache/logging/log4j/core/async/EventRoute;
MethodParameters:
Name Flags
location final
fqcn final
level final
marker final
msg final
thrown final
public void actualAsyncLog(org.apache.logging.log4j.core.async.RingBufferLogEvent);
descriptor: (Lorg/apache/logging/log4j/core/async/RingBufferLogEvent;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.privateConfig:Lorg/apache/logging/log4j/core/Logger$PrivateConfig;
getfield org.apache.logging.log4j.core.Logger$PrivateConfig.loggerConfig:Lorg/apache/logging/log4j/core/config/LoggerConfig;
invokevirtual org.apache.logging.log4j.core.config.LoggerConfig.getPropertyList:()Ljava/util/List;
astore 2
start local 2 1: aload 2
ifnull 20
2: aload 1
invokevirtual org.apache.logging.log4j.core.async.RingBufferLogEvent.getContextData:()Lorg/apache/logging/log4j/util/ReadOnlyStringMap;
checkcast org.apache.logging.log4j.util.StringMap
astore 3
start local 3 3: aload 3
invokeinterface org.apache.logging.log4j.util.StringMap.isFrozen:()Z
ifeq 7
4: invokestatic org.apache.logging.log4j.core.impl.ContextDataFactory.createContextData:()Lorg/apache/logging/log4j/util/StringMap;
astore 4
start local 4 5: aload 4
aload 3
invokeinterface org.apache.logging.log4j.util.StringMap.putAll:(Lorg/apache/logging/log4j/util/ReadOnlyStringMap;)V
6: aload 4
astore 3
end local 4 7: StackMap locals: java.util.List org.apache.logging.log4j.util.StringMap
StackMap stack:
iconst_0
istore 4
start local 4 8: goto 18
9: StackMap locals: int
StackMap stack:
aload 2
iload 4
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.apache.logging.log4j.core.config.Property
astore 5
start local 5 10: aload 3
aload 5
invokevirtual org.apache.logging.log4j.core.config.Property.getName:()Ljava/lang/String;
invokeinterface org.apache.logging.log4j.util.StringMap.getValue:(Ljava/lang/String;)Ljava/lang/Object;
ifnull 12
11: goto 17
12: StackMap locals: org.apache.logging.log4j.core.config.Property
StackMap stack:
aload 5
invokevirtual org.apache.logging.log4j.core.config.Property.isValueNeedsLookup:()Z
ifeq 14
13: aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.privateConfig:Lorg/apache/logging/log4j/core/Logger$PrivateConfig;
getfield org.apache.logging.log4j.core.Logger$PrivateConfig.config:Lorg/apache/logging/log4j/core/config/Configuration;
invokeinterface org.apache.logging.log4j.core.config.Configuration.getStrSubstitutor:()Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
aload 1
aload 5
invokevirtual org.apache.logging.log4j.core.config.Property.getValue:()Ljava/lang/String;
invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/String;)Ljava/lang/String;
goto 15
14: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.apache.logging.log4j.core.config.Property.getValue:()Ljava/lang/String;
15: StackMap locals:
StackMap stack: java.lang.String
astore 6
start local 6 16: aload 3
aload 5
invokevirtual org.apache.logging.log4j.core.config.Property.getName:()Ljava/lang/String;
aload 6
invokeinterface org.apache.logging.log4j.util.StringMap.putValue:(Ljava/lang/String;Ljava/lang/Object;)V
end local 6 end local 5 17: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
18: iload 4
aload 2
invokeinterface java.util.List.size:()I
if_icmplt 9
end local 4 19: aload 1
aload 3
invokevirtual org.apache.logging.log4j.core.async.RingBufferLogEvent.setContextData:(Lorg/apache/logging/log4j/util/StringMap;)V
end local 3 20: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.logging.log4j.core.async.AsyncLogger.privateConfig:Lorg/apache/logging/log4j/core/Logger$PrivateConfig;
getfield org.apache.logging.log4j.core.Logger$PrivateConfig.loggerConfig:Lorg/apache/logging/log4j/core/config/LoggerConfig;
invokevirtual org.apache.logging.log4j.core.config.LoggerConfig.getReliabilityStrategy:()Lorg/apache/logging/log4j/core/config/ReliabilityStrategy;
astore 3
start local 3 21: aload 3
aload 0
aload 1
invokeinterface org.apache.logging.log4j.core.config.ReliabilityStrategy.log:(Lorg/apache/logging/log4j/util/Supplier;Lorg/apache/logging/log4j/core/LogEvent;)V
22: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/apache/logging/log4j/core/async/AsyncLogger;
0 23 1 event Lorg/apache/logging/log4j/core/async/RingBufferLogEvent;
1 23 2 properties Ljava/util/List<Lorg/apache/logging/log4j/core/config/Property;>;
3 20 3 contextData Lorg/apache/logging/log4j/util/StringMap;
5 7 4 temp Lorg/apache/logging/log4j/util/StringMap;
8 19 4 i I
10 17 5 prop Lorg/apache/logging/log4j/core/config/Property;
16 17 6 value Ljava/lang/String;
21 23 3 strategy Lorg/apache/logging/log4j/core/config/ReliabilityStrategy;
MethodParameters:
Name Flags
event final
public void translateTo(java.lang.Object, long, java.lang.Object[]);
descriptor: (Ljava/lang/Object;J[Ljava/lang/Object;)V
flags: (0x10c1) ACC_PUBLIC, ACC_BRIDGE, ACC_VARARGS, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=4
0: aload 0
aload 1
checkcast org.apache.logging.log4j.core.async.RingBufferLogEvent
lload 2
aload 4
invokevirtual org.apache.logging.log4j.core.async.AsyncLogger.translateTo:(Lorg/apache/logging/log4j/core/async/RingBufferLogEvent;J[Ljava/lang/Object;)V
return
LocalVariableTable:
Start End Slot Name Signature
static int[] $SWITCH_TABLE$org$apache$logging$log4j$core$async$EventRoute();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.apache.logging.log4j.core.async.AsyncLogger.$SWITCH_TABLE$org$apache$logging$log4j$core$async$EventRoute:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.apache.logging.log4j.core.async.EventRoute.values:()[Lorg/apache/logging/log4j/core/async/EventRoute;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.apache.logging.log4j.core.async.EventRoute.DISCARD:Lorg/apache/logging/log4j/core/async/EventRoute;
invokevirtual org.apache.logging.log4j.core.async.EventRoute.ordinal:()I
iconst_3
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.apache.logging.log4j.core.async.EventRoute.ENQUEUE:Lorg/apache/logging/log4j/core/async/EventRoute;
invokevirtual org.apache.logging.log4j.core.async.EventRoute.ordinal:()I
iconst_1
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.apache.logging.log4j.core.async.EventRoute.SYNCHRONOUS:Lorg/apache/logging/log4j/core/async/EventRoute;
invokevirtual org.apache.logging.log4j.core.async.EventRoute.ordinal:()I
iconst_2
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
dup
putstatic org.apache.logging.log4j.core.async.AsyncLogger.$SWITCH_TABLE$org$apache$logging$log4j$core$async$EventRoute:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
}
Signature: Lorg/apache/logging/log4j/core/Logger;Lcom/lmax/disruptor/EventTranslatorVararg<Lorg/apache/logging/log4j/core/async/RingBufferLogEvent;>;
SourceFile: "AsyncLogger.java"
InnerClasses:
public abstract ContextStack = org.apache.logging.log4j.ThreadContext$ContextStack of org.apache.logging.log4j.ThreadContext
protected PrivateConfig = org.apache.logging.log4j.core.Logger$PrivateConfig of org.apache.logging.log4j.core.Logger