in ttl2-compatible/src/main/java/com/alibaba/ttl/threadpool/agent/TtlAgent.java [200:232]
public static void premain(final String agentArgs, @NonNull final Instrumentation inst) {
kvs = TtlAgentHelper.splitCommaColonStringToKV(agentArgs);
Logger.setLoggerImplType(getLoggerType());
final Logger logger = Logger.getLogger(TtlAgent.class);
try {
logger.info("[TtlAgent.premain] begin, agentArgs: " + agentArgs + ", Instrumentation: " + inst);
logger.info(logTtlAgentConfig());
final List<TtlTransformlet> transformletList = new ArrayList<>();
transformletList.add(new JdkExecutorTtlTransformlet());
transformletList.add(new PriorityBlockingQueueTtlTransformlet());
transformletList.add(new ForkJoinTtlTransformlet());
if (isEnableTimerTask()) transformletList.add(new TimerTaskTtlTransformlet());
final ClassFileTransformer transformer = new TtlTransformer(transformletList, isLogClassTransform());
inst.addTransformer(transformer, true);
logger.info("[TtlAgent.premain] add Transformer " + transformer.getClass().getName() + " success");
logger.info("[TtlAgent.premain] end");
ttlAgentLoaded = true;
} catch (Exception e) {
String msg = "Fail to load TtlAgent , cause: " + e.toString();
logger.error(msg, e);
throw new IllegalStateException(msg, e);
}
}