diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 33b792627b5..c8b3d1daad6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -351,7 +351,15 @@ build: - if [ $CI_PIPELINE_SOURCE == "schedule" ] ; then ./gradlew resolveAndLockAll --write-locks $GRADLE_ARGS; fi - ./gradlew --version - ./gradlew clean :dd-java-agent:shadowJar :dd-java-agent:check :dd-trace-api:jar :dd-trace-ot:shadowJar -PskipTests -x spotlessCheck $GRADLE_ARGS - - echo UPSTREAM_TRACER_VERSION=$(java -jar workspace/dd-java-agent/build/libs/*.jar) >> upstream.env + - | + set -- workspace/dd-java-agent/build/libs/*.jar + if [ "$#" -ne 1 ] || [ ! -f "$1" ]; then + echo "Expected exactly one publishable dd-java-agent jar, found:" + printf ' %s\n' "$@" + exit 1 + fi + upstream_tracer_version=$(java -jar "$1") + echo "UPSTREAM_TRACER_VERSION=$upstream_tracer_version" >> upstream.env - echo "BUILD_JOB_NAME=$CI_JOB_NAME" >> build.env - echo "BUILD_JOB_ID=$CI_JOB_ID" >> build.env artifacts: @@ -365,6 +373,22 @@ build: reports: dotenv: build.env +verify-common-classdata-plan: + extends: .gradle_build + stage: tests + needs: [ build ] + variables: + CACHE_TYPE: "lib" + rules: + - if: '$POPULATE_CACHE' + when: never + - if: '$CI_COMMIT_BRANCH && $CI_COMMIT_BRANCH !~ /^(master|release\/)/' + when: on_success + - when: never + script: + - ./gradlew --version + - ./gradlew :dd-java-agent:verifyCommonClassDataPlan -PskipTests $GRADLE_ARGS + build_tests: extends: .gradle_build variables: diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java index cd0b33ebe6b..5c53653a08e 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/Agent.java @@ -760,6 +760,14 @@ private static synchronized void createAgentClassloader(final URL agentJarURL) { } } + /** Releases temporary packed class-data buffers retained during synchronous agent startup. */ + public static void releaseClassData() { + ClassLoader classLoader = AGENT_CLASSLOADER; + if (classLoader instanceof DatadogClassLoader) { + ((DatadogClassLoader) classLoader).releasePackedClassData(); + } + } + private static void maybeStartRemoteConfig(Class scoClass, Object sco) { if (!remoteConfigEnabled) { return; diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/DatadogClassLoader.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/DatadogClassLoader.java index aaf263901ff..153245020f7 100644 --- a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/DatadogClassLoader.java +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/DatadogClassLoader.java @@ -31,6 +31,7 @@ public final class DatadogClassLoader extends SecureClassLoader { private final CodeSource agentCodeSource; private final String agentResourcePrefix; private final AgentJarIndex agentJarIndex; + private final PackedClassData packedClassData; private final Object instrumentationClassLoaderLock = new Object(); private volatile WeakReference instrumentationClassLoader = @@ -47,6 +48,7 @@ public DatadogClassLoader(final URL agentJarURL, final ClassLoader parent) throw // findResource() returns URLs that openStream() cannot read. See APMS-19624 / #6398. agentResourcePrefix = "jar:" + agentJarURL + "!/"; agentJarIndex = AgentJarIndex.readIndex(agentJarFile); + packedClassData = PackedClassData.from(agentJarFile); } /** For testing purposes only. */ @@ -57,6 +59,7 @@ public DatadogClassLoader() { agentJarFile = null; agentResourcePrefix = null; agentJarIndex = AgentJarIndex.emptyIndex(); + packedClassData = null; } @Override @@ -82,7 +85,7 @@ protected URL findResource(String name) { } } } - return null; + return packedClassData == null ? null : packedClassData.resource(name); } @Override @@ -135,11 +138,28 @@ private Class loadLocalClass(String name, boolean resolve) throws ClassNotFou @Override protected Class findClass(String name) throws ClassNotFoundException { - byte[] buf = loadClassBytes(name); + PackedClassData.Slice packed = findPackedClassData(name); + if (packed != null) { + Class defined = + defineClass(name, packed.data, packed.offset, packed.length, agentCodeSource); + return defined; + } + byte[] buf = loadIndividualClassBytes(name); return defineClass(name, buf, 0, buf.length, agentCodeSource); } byte[] loadClassBytes(String name) throws ClassNotFoundException { + PackedClassData.Slice packed = findPackedClassData(name); + if (packed != null) { + byte[] copy = new byte[packed.length]; + System.arraycopy(packed.data, packed.offset, copy, 0, packed.length); + // InstrumentationClassLoader defines this copied bytecode in its own unloadable loader. + return copy; + } + return loadIndividualClassBytes(name); + } + + private byte[] loadIndividualClassBytes(String name) throws ClassNotFoundException { String entryName = agentJarIndex.classEntryName(name); if (null != entryName) { JarEntry jarEntry = agentJarFile.getJarEntry(entryName); @@ -167,6 +187,33 @@ byte[] loadClassBytes(String name) throws ClassNotFoundException { throw new ClassNotFoundException(name); } + private PackedClassData.Slice findPackedClassData(String name) { + if (packedClassData != null) { + try { + return packedClassData.find(name); + } catch (IOException e) { + throw new IllegalStateException("Problem reading " + PackedClassData.ENTRY_NAME, e); + } + } + return null; + } + + void close() throws IOException { + if (agentJarFile != null) { + agentJarFile.close(); + } + } + + int retainedPackedClassBytes() { + return packedClassData == null ? 0 : packedClassData.retainedChunkBytes(); + } + + void releasePackedClassData() { + if (packedClassData != null) { + packedClassData.release(); + } + } + @Override protected Package getPackage(String name) { synchronized (definedPackages) { diff --git a/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/PackedClassData.java b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/PackedClassData.java new file mode 100644 index 00000000000..0d3b4f4eda4 --- /dev/null +++ b/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/PackedClassData.java @@ -0,0 +1,406 @@ +package datadog.trace.bootstrap; + +import java.io.IOException; +import java.io.InputStream; +import java.net.URL; +import java.net.URLConnection; +import java.net.URLStreamHandler; +import java.util.concurrent.atomic.AtomicReferenceArray; +import java.util.jar.JarEntry; +import java.util.jar.JarFile; + +/** Reads indexed class-data chunks embedded in the agent jar. */ +final class PackedClassData { + static final String ENTRY_NAME = "dd-java-agent-common.classdata"; + static final String CHUNK_PREFIX = "dd-java-agent-common/"; + static final String CHUNK_SUFFIX = ".classdata"; + static final int MAGIC = 0x44444344; // DDCD + static final int VERSION = 2; + + private static final int HEADER_SIZE = 20; + private static final int RECORD_SIZE = 24; + private static final int POST_BOOTSTRAP_CACHE_SIZE = 8; + + private final JarFile jarFile; + private final Contents contents; + private final URLStreamHandler resourceHandler = new PackedResourceHandler(); + + static PackedClassData from(JarFile jarFile) throws IOException { + JarEntry entry = jarFile.getJarEntry(ENTRY_NAME); + return entry == null ? null : new PackedClassData(jarFile, entry); + } + + private PackedClassData(JarFile jarFile, JarEntry indexEntry) throws IOException { + this.jarFile = jarFile; + contents = readContents(jarFile, indexEntry); + } + + Slice find(String className) throws IOException { + return contents.find(className); + } + + InputStream openStream(String className) throws IOException { + Slice slice = find(className); + if (slice == null) { + return null; + } + return new java.io.ByteArrayInputStream(slice.data, slice.offset, slice.length); + } + + URL resource(String resourceName) { + String className = className(resourceName); + if (className == null || !contents.contains(className)) { + return null; + } + try { + return new URL(null, "dd-classdata:/" + resourceName, resourceHandler); + } catch (Exception impossible) { + throw new IllegalStateException("Unable to create packed class-data URL", impossible); + } + } + + int retainedChunkBytes() { + return contents.retainedChunkBytes(); + } + + void release() { + contents.release(); + } + + private static String className(String resourceName) { + return resourceName.endsWith(".class") + ? resourceName.substring(0, resourceName.length() - ".class".length()).replace('/', '.') + : null; + } + + static Index parseIndex(byte[] data) throws IOException { + if (data.length < HEADER_SIZE) { + throw new IOException("Truncated packed class-data index"); + } + if (readInt(data, 0) != MAGIC) { + throw new IOException("Bad packed class-data magic"); + } + int version = readInt(data, 4); + if (version != VERSION) { + throw new IOException("Unsupported packed class-data version " + version); + } + int count = readInt(data, 8); + int chunkCount = readInt(data, 12); + int tableSize = readInt(data, 16); + if (count < 0 || chunkCount <= 0 || tableSize <= 0 || (tableSize & (tableSize - 1)) != 0) { + throw new IOException("Invalid packed class-data index dimensions"); + } + if (count > tableSize || tableSize > (data.length - HEADER_SIZE) / RECORD_SIZE) { + throw new IOException("Invalid packed class-data hash table size"); + } + + int namesOffset = HEADER_SIZE + tableSize * RECORD_SIZE; + int populated = 0; + int[] classesPerChunk = new int[chunkCount]; + for (int slot = 0; slot < tableSize; slot++) { + int record = HEADER_SIZE + slot * RECORD_SIZE; + int nameLength = readInt(data, record + 8); + if (nameLength == 0) { + continue; + } + int nameOffset = readInt(data, record + 4); + int chunk = readInt(data, record + 12); + int classOffset = readInt(data, record + 16); + int classLength = readInt(data, record + 20); + if (nameLength < 0 + || nameOffset < namesOffset + || ((long) nameOffset + (long) nameLength * 2) > data.length + || chunk < 0 + || chunk >= chunkCount + || classOffset < 0 + || classLength < 0) { + throw new IOException("Invalid packed class-data record"); + } + populated++; + classesPerChunk[chunk]++; + } + if (populated != count) { + throw new IOException("Packed class-data entry count mismatch"); + } + return new Index(data, count, chunkCount, tableSize, classesPerChunk); + } + + private static Contents readContents(JarFile jarFile, JarEntry indexEntry) throws IOException { + Index index = parseIndex(readEntry(jarFile, indexEntry)); + JarEntry[] chunkEntries = new JarEntry[index.chunkCount]; + for (int chunk = 0; chunk < chunkEntries.length; chunk++) { + JarEntry entry = jarFile.getJarEntry(chunkEntryName(chunk)); + if (entry == null) { + throw new IOException("Missing packed class-data chunk " + chunk); + } + chunkEntries[chunk] = entry; + } + index.validateChunkSizes(chunkEntries); + return new Contents(jarFile, index, chunkEntries); + } + + static String chunkEntryName(int chunk) { + return CHUNK_PREFIX + chunk + CHUNK_SUFFIX; + } + + private static byte[] readEntry(JarFile jarFile, JarEntry entry) throws IOException { + long size = entry.getSize(); + if (size < 0 || size > Integer.MAX_VALUE) { + throw new IOException("Invalid packed class-data size " + size); + } + byte[] data = new byte[(int) size]; + try (InputStream input = jarFile.getInputStream(entry)) { + int offset = 0; + while (offset < data.length) { + int read = input.read(data, offset, data.length - offset); + if (read < 0) { + throw new IOException("Truncated packed class-data entry"); + } + offset += read; + } + if (input.read() >= 0) { + throw new IOException("Packed class-data entry exceeds declared size"); + } + } + return data; + } + + private static int readInt(byte[] data, int offset) { + return ((data[offset] & 0xff) << 24) + | ((data[offset + 1] & 0xff) << 16) + | ((data[offset + 2] & 0xff) << 8) + | (data[offset + 3] & 0xff); + } + + static int spread(int hash) { + return hash ^ (hash >>> 16); + } + + static final class Index { + private final byte[] data; + private final int count; + private final int chunkCount; + private final int tableSize; + private final int[] classesPerChunk; + + private Index(byte[] data, int count, int chunkCount, int tableSize, int[] classesPerChunk) { + this.data = data; + this.count = count; + this.chunkCount = chunkCount; + this.tableSize = tableSize; + this.classesPerChunk = classesPerChunk; + } + + Location find(String className) { + int hash = className.hashCode(); + int slot = spread(hash) & (tableSize - 1); + for (int probes = 0; probes < tableSize; probes++) { + int record = HEADER_SIZE + slot * RECORD_SIZE; + int nameLength = readInt(data, record + 8); + if (nameLength == 0) { + return null; + } + if (readInt(data, record) == hash + && nameLength == className.length() + && nameEquals(data, readInt(data, record + 4), className)) { + return new Location( + readInt(data, record + 12), readInt(data, record + 16), readInt(data, record + 20)); + } + slot = (slot + 1) & (tableSize - 1); + } + return null; + } + + int size() { + return count; + } + + int chunkCount() { + return chunkCount; + } + + int classesInChunk(int chunk) { + return classesPerChunk[chunk]; + } + + private void validateChunkSizes(JarEntry[] chunkEntries) throws IOException { + for (int chunk = 0; chunk < classesPerChunk.length; chunk++) { + if (classesPerChunk[chunk] == 0 || chunkEntries[chunk].getSize() < 0) { + throw new IOException("Invalid packed class-data chunk " + chunk); + } + } + for (int slot = 0; slot < tableSize; slot++) { + int record = HEADER_SIZE + slot * RECORD_SIZE; + if (readInt(data, record + 8) == 0) { + continue; + } + int chunk = readInt(data, record + 12); + int offset = readInt(data, record + 16); + int length = readInt(data, record + 20); + if ((long) offset + length > chunkEntries[chunk].getSize()) { + throw new IOException("Packed class-data slice exceeds chunk " + chunk); + } + } + } + + private static boolean nameEquals(byte[] data, int offset, String className) { + for (int i = 0; i < className.length(); i++) { + int value = ((data[offset] & 0xff) << 8) | (data[offset + 1] & 0xff); + if (value != className.charAt(i)) { + return false; + } + offset += 2; + } + return true; + } + } + + static final class Location { + final int chunk; + final int offset; + final int length; + + Location(int chunk, int offset, int length) { + this.chunk = chunk; + this.offset = offset; + this.length = length; + } + } + + static final class Slice { + final byte[] data; + final int offset; + final int length; + final int chunk; + + Slice(byte[] data, int offset, int length, int chunk) { + this.data = data; + this.offset = offset; + this.length = length; + this.chunk = chunk; + } + } + + private static final class Contents { + private final JarFile jarFile; + private final Index index; + private final JarEntry[] chunkEntries; + private final AtomicReferenceArray chunks; + private final Object[] chunkLocks; + private final Object cacheLock = new Object(); + private final long[] lastAccess; + private volatile boolean released; + private long accessCounter; + + private Contents(JarFile jarFile, Index index, JarEntry[] chunkEntries) { + this.jarFile = jarFile; + this.index = index; + this.chunkEntries = chunkEntries; + chunks = new AtomicReferenceArray<>(chunkEntries.length); + chunkLocks = new Object[chunkEntries.length]; + for (int chunk = 0; chunk < chunkLocks.length; chunk++) { + chunkLocks[chunk] = new Object(); + } + lastAccess = new long[chunkEntries.length]; + } + + private boolean contains(String className) { + return index.find(className) != null; + } + + private Slice find(String className) throws IOException { + Location location = index.find(className); + if (location == null) { + return null; + } + byte[] chunk = chunks.get(location.chunk); + if (chunk == null) { + synchronized (chunkLocks[location.chunk]) { + chunk = chunks.get(location.chunk); + if (chunk == null) { + chunk = readEntry(jarFile, chunkEntries[location.chunk]); + chunks.set(location.chunk, chunk); + } + } + } + if (released) { + recordPostBootstrapAccess(location.chunk, chunk); + } + if ((long) location.offset + location.length > chunk.length) { + throw new IOException("Packed class-data slice exceeds chunk " + location.chunk); + } + return new Slice(chunk, location.offset, location.length, location.chunk); + } + + private int retainedChunkBytes() { + int bytes = 0; + for (int index = 0; index < chunks.length(); index++) { + byte[] chunk = chunks.get(index); + if (chunk != null) { + bytes += chunk.length; + } + } + return bytes; + } + + private void release() { + synchronized (cacheLock) { + released = true; + for (int chunk = 0; chunk < chunks.length(); chunk++) { + chunks.set(chunk, null); + lastAccess[chunk] = 0; + } + } + } + + private void recordPostBootstrapAccess(int loadedChunk, byte[] loadedContents) { + synchronized (cacheLock) { + // release() may have cleared this chunk after find() obtained its local reference. + if (chunks.get(loadedChunk) != loadedContents) { + return; + } + lastAccess[loadedChunk] = ++accessCounter; + evictPostBootstrapChunk(loadedChunk); + } + } + + private void evictPostBootstrapChunk(int loadedChunk) { + int retained = 0; + int oldestChunk = -1; + long oldestAccess = Long.MAX_VALUE; + for (int chunk = 0; chunk < chunks.length(); chunk++) { + if (chunks.get(chunk) != null) { + retained++; + if (chunk != loadedChunk && lastAccess[chunk] < oldestAccess) { + oldestChunk = chunk; + oldestAccess = lastAccess[chunk]; + } + } + } + if (retained > POST_BOOTSTRAP_CACHE_SIZE && oldestChunk >= 0) { + chunks.set(oldestChunk, null); + lastAccess[oldestChunk] = 0; + } + } + } + + private final class PackedResourceHandler extends URLStreamHandler { + @Override + protected URLConnection openConnection(URL url) { + return new URLConnection(url) { + @Override + public void connect() {} + + @Override + public InputStream getInputStream() throws IOException { + String resourceName = url.getPath().substring(1); + InputStream input = openStream(className(resourceName)); + if (input == null) { + throw new IOException("Missing packed class resource " + resourceName); + } + return input; + } + }; + } + } +} diff --git a/dd-java-agent/agent-bootstrap/src/test/java/datadog/trace/bootstrap/DatadogClassLoaderTest.java b/dd-java-agent/agent-bootstrap/src/test/java/datadog/trace/bootstrap/DatadogClassLoaderTest.java index 376b035a043..0b90df9409e 100644 --- a/dd-java-agent/agent-bootstrap/src/test/java/datadog/trace/bootstrap/DatadogClassLoaderTest.java +++ b/dd-java-agent/agent-bootstrap/src/test/java/datadog/trace/bootstrap/DatadogClassLoaderTest.java @@ -5,15 +5,21 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import java.io.File; +import java.io.InputStream; +import java.io.OutputStream; import java.lang.reflect.Method; import java.net.URL; +import java.net.URLClassLoader; import java.nio.file.Files; +import java.nio.file.Path; import java.util.ArrayList; import java.util.List; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; import java.util.concurrent.Phaser; +import java.util.jar.JarEntry; +import java.util.jar.JarOutputStream; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Timeout; @@ -168,4 +174,84 @@ void findResourceUsesAgentJarUrlAsPrefix(@org.junit.jupiter.api.io.TempDir File + ") — pre-fix code derives the prefix from JarFile.getName()," + " which leaves the space unencoded and on Windows produces a malformed URL."); } + + @Test + void resourceAndResourceStreamUseTheSameParentFirstResolution( + @org.junit.jupiter.api.io.TempDir Path tempDir) throws Exception { + String resourceName = "precedence/OnlyForTest.class"; + String className = "precedence.OnlyForTest"; + + Path parentRoot = tempDir.resolve("parent"); + Path parentResource = parentRoot.resolve(resourceName); + Files.createDirectories(parentResource.getParent()); + Files.write(parentResource, new byte[] {9}); + + Path indexRoot = tempDir.resolve("index"); + Files.createDirectories(indexRoot); + AgentJarIndex.IndexGenerator indexGenerator = new AgentJarIndex.IndexGenerator(indexRoot); + indexGenerator.buildIndex(); + indexGenerator.writeIndex(indexRoot.resolve("dd-java-agent.index")); + + Path agentJar = tempDir.resolve("packed-agent.jar"); + try (OutputStream file = Files.newOutputStream(agentJar); + JarOutputStream jar = new JarOutputStream(file)) { + writeEntry( + jar, "dd-java-agent.index", Files.readAllBytes(indexRoot.resolve("dd-java-agent.index"))); + writeEntry(jar, PackedClassData.ENTRY_NAME, packSingleClassIndex(className, 1)); + writeEntry(jar, PackedClassData.chunkEntryName(0), new byte[] {1}); + } + + try (URLClassLoader parent = new URLClassLoader(new URL[] {parentRoot.toUri().toURL()}, null)) { + DatadogClassLoader loader = new DatadogClassLoader(agentJar.toUri().toURL(), parent); + try { + assertEquals(9, loader.getResource(resourceName).openStream().read()); + try (InputStream input = loader.getResourceAsStream(resourceName)) { + assertNotNull(input); + assertEquals(9, input.read()); + } + } finally { + loader.close(); + } + } + } + + private static byte[] packSingleClassIndex(String className, int classLength) { + int tableSize = 2; + int namesOffset = 20 + tableSize * 24; + byte[] index = new byte[namesOffset + className.length() * 2]; + writeInt(index, 0, PackedClassData.MAGIC); + writeInt(index, 4, PackedClassData.VERSION); + writeInt(index, 8, 1); + writeInt(index, 12, 1); + writeInt(index, 16, tableSize); + + int slot = PackedClassData.spread(className.hashCode()) & (tableSize - 1); + int record = 20 + slot * 24; + writeInt(index, record, className.hashCode()); + writeInt(index, record + 4, namesOffset); + writeInt(index, record + 8, className.length()); + writeInt(index, record + 12, 0); + writeInt(index, record + 16, 0); + writeInt(index, record + 20, classLength); + for (int character = 0; character < className.length(); character++) { + char value = className.charAt(character); + index[namesOffset++] = (byte) (value >>> 8); + index[namesOffset++] = (byte) value; + } + return index; + } + + private static void writeEntry(JarOutputStream jar, String name, byte[] contents) + throws Exception { + jar.putNextEntry(new JarEntry(name)); + jar.write(contents); + jar.closeEntry(); + } + + private static void writeInt(byte[] target, int offset, int value) { + target[offset] = (byte) (value >>> 24); + target[offset + 1] = (byte) (value >>> 16); + target[offset + 2] = (byte) (value >>> 8); + target[offset + 3] = (byte) value; + } } diff --git a/dd-java-agent/agent-bootstrap/src/test/java/datadog/trace/bootstrap/PackedClassDataTest.java b/dd-java-agent/agent-bootstrap/src/test/java/datadog/trace/bootstrap/PackedClassDataTest.java new file mode 100644 index 00000000000..78dca53327f --- /dev/null +++ b/dd-java-agent/agent-bootstrap/src/test/java/datadog/trace/bootstrap/PackedClassDataTest.java @@ -0,0 +1,377 @@ +package datadog.trace.bootstrap; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNotSame; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.net.URL; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.Arrays; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.Future; +import java.util.concurrent.TimeUnit; +import java.util.jar.JarEntry; +import java.util.jar.JarFile; +import java.util.jar.JarOutputStream; +import java.util.zip.ZipEntry; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.io.TempDir; + +class PackedClassDataTest { + private static final int HEADER_SIZE = 20; + private static final int RECORD_SIZE = 24; + + @TempDir Path temporaryDirectory; + + @Test + void findsIndexedLocationsIncludingCollisionsAndUnicode() throws Exception { + // FB and Ea have the same String hash code. + PackedClassData.Index index = + PackedClassData.parseIndex( + packIndex( + 2, + entry("example.FB", 0, 1, 3), + entry("example.Ea", 0, 4, 5), + entry("example.Éclair", 1, 2, 7))); + + assertEquals(3, index.size()); + assertEquals(2, index.chunkCount()); + assertEquals(2, index.classesInChunk(0)); + assertEquals(1, index.classesInChunk(1)); + assertLocation(index.find("example.FB"), 0, 1, 3); + assertLocation(index.find("example.Ea"), 0, 4, 5); + assertLocation(index.find("example.Éclair"), 1, 2, 7); + assertNull(index.find("example.Missing")); + } + + @Test + void rejectsMalformedIndex() throws Exception { + byte[] valid = packIndex(1, entry("example.First", 0, 0, 3)); + + byte[] badMagic = valid.clone(); + badMagic[0] = 0; + assertThrows(IOException.class, () -> PackedClassData.parseIndex(badMagic)); + assertThrows( + IOException.class, () -> PackedClassData.parseIndex(Arrays.copyOf(valid, HEADER_SIZE - 1))); + + byte[] badCount = valid.clone(); + writeInt(badCount, 8, 2); + assertThrows(IOException.class, () -> PackedClassData.parseIndex(badCount)); + + byte[] badChunk = valid.clone(); + int record = occupiedRecord(badChunk); + writeInt(badChunk, record + 12, 1); + assertThrows(IOException.class, () -> PackedClassData.parseIndex(badChunk)); + } + + @Test + void rejectsMissingAndOutOfBoundsChunksWhenOpened() throws Exception { + byte[] index = packIndex(1, entry("example.First", 0, 0, 3)); + Path missingPath = temporaryDirectory.resolve("missing.jar"); + try (OutputStream file = Files.newOutputStream(missingPath); + JarOutputStream jar = new JarOutputStream(file)) { + writeEntry(jar, PackedClassData.ENTRY_NAME, index); + } + try (JarFile jar = new JarFile(missingPath.toFile())) { + assertThrows(IOException.class, () -> PackedClassData.from(jar)); + } + + Path shortPath = temporaryDirectory.resolve("short.jar"); + try (OutputStream file = Files.newOutputStream(shortPath); + JarOutputStream jar = new JarOutputStream(file)) { + writeEntry(jar, PackedClassData.ENTRY_NAME, index); + writeEntry(jar, PackedClassData.chunkEntryName(0), new byte[] {1, 2}); + } + try (JarFile jar = new JarFile(shortPath.toFile())) { + assertThrows(IOException.class, () -> PackedClassData.from(jar)); + } + } + + @Test + void keepsAChunkForTheCompleteBootstrapPhase() throws Exception { + byte[] index = packIndex(1, entry("example.First", 0, 0, 3), entry("example.Second", 0, 3, 2)); + Path jarPath = temporaryDirectory.resolve("packed.jar"); + try (OutputStream file = Files.newOutputStream(jarPath); + JarOutputStream jar = new JarOutputStream(file)) { + writeEntry(jar, PackedClassData.ENTRY_NAME, index); + writeEntry(jar, PackedClassData.chunkEntryName(0), new byte[] {1, 2, 3, 4, 5}); + } + + try (JarFile jar = new JarFile(jarPath.toFile())) { + PackedClassData packed = PackedClassData.from(jar); + PackedClassData.Slice first = packed.find("example.First"); + PackedClassData.Slice second = packed.find("example.Second"); + assertSame(first.data, second.data); + + assertSame(first.data, packed.find("example.First").data); + + PackedClassData.Slice reloaded = packed.find("example.First"); + assertSame(first.data, reloaded.data); + assertSame(reloaded.data, packed.find("example.First").data); + assertEquals(5, packed.retainedChunkBytes()); + } + } + + @Test + void exposesPackedClassesAsLazyResources() throws Exception { + byte[] index = packIndex(1, entry("example.First", 0, 0, 3)); + Path jarPath = temporaryDirectory.resolve("resources.jar"); + try (OutputStream file = Files.newOutputStream(jarPath); + JarOutputStream jar = new JarOutputStream(file)) { + writeEntry(jar, PackedClassData.ENTRY_NAME, index); + writeEntry(jar, PackedClassData.chunkEntryName(0), new byte[] {1, 2, 3}); + } + + try (JarFile jar = new JarFile(jarPath.toFile())) { + PackedClassData packed = PackedClassData.from(jar); + URL resource = packed.resource("example/First.class"); + assertNotNull(resource); + assertEquals(0, packed.retainedChunkBytes()); + assertEquals(1, resource.openStream().read()); + assertEquals(3, packed.retainedChunkBytes()); + packed.release(); + assertEquals(0, packed.retainedChunkBytes()); + assertNull(packed.resource("example/missing.txt")); + } + } + + @Test + void releasesRetainedChunksAtTheEndOfBootstrap() throws Exception { + byte[] index = + packIndex( + 5, + entry("example.First", 0, 0, 3), + entry("example.Second", 1, 0, 1), + entry("example.Third", 2, 0, 1), + entry("example.Fourth", 3, 0, 1), + entry("example.Later", 4, 0, 2)); + Path jarPath = temporaryDirectory.resolve("ordered.jar"); + try (OutputStream file = Files.newOutputStream(jarPath); + JarOutputStream jar = new JarOutputStream(file)) { + writeEntry(jar, PackedClassData.ENTRY_NAME, index); + writeEntry(jar, PackedClassData.chunkEntryName(0), new byte[] {1, 2, 3}); + writeEntry(jar, PackedClassData.chunkEntryName(1), new byte[] {4}); + writeEntry(jar, PackedClassData.chunkEntryName(2), new byte[] {5}); + writeEntry(jar, PackedClassData.chunkEntryName(3), new byte[] {6}); + writeEntry(jar, PackedClassData.chunkEntryName(4), new byte[] {7, 8}); + } + + try (JarFile jar = new JarFile(jarPath.toFile())) { + PackedClassData packed = PackedClassData.from(jar); + PackedClassData.Slice first = packed.find("example.First"); + assertEquals(3, packed.retainedChunkBytes()); + + PackedClassData.Slice later = packed.find("example.Later"); + assertEquals(5, packed.retainedChunkBytes()); + + packed.release(); + assertEquals(0, packed.retainedChunkBytes()); + PackedClassData.Slice firstAfterBootstrap = packed.find("example.First"); + PackedClassData.Slice laterAfterBootstrap = packed.find("example.Later"); + assertNotSame(first.data, firstAfterBootstrap.data); + assertNotSame(later.data, laterAfterBootstrap.data); + assertSame(firstAfterBootstrap.data, packed.find("example.First").data); + assertEquals(5, packed.retainedChunkBytes()); + } + } + + @Test + void boundsThePostBootstrapChunkCache() throws Exception { + Entry[] entries = new Entry[9]; + for (int chunk = 0; chunk < entries.length; chunk++) { + entries[chunk] = entry("example.Class" + chunk, chunk, 0, 1); + } + Path jarPath = temporaryDirectory.resolve("bounded.jar"); + try (OutputStream file = Files.newOutputStream(jarPath); + JarOutputStream jar = new JarOutputStream(file)) { + writeEntry(jar, PackedClassData.ENTRY_NAME, packIndex(entries.length, entries)); + for (int chunk = 0; chunk < entries.length; chunk++) { + writeEntry(jar, PackedClassData.chunkEntryName(chunk), new byte[] {(byte) chunk}); + } + } + + try (JarFile jar = new JarFile(jarPath.toFile())) { + PackedClassData packed = PackedClassData.from(jar); + packed.release(); + PackedClassData.Slice first = packed.find("example.Class0"); + for (int chunk = 1; chunk < entries.length; chunk++) { + packed.find("example.Class" + chunk); + } + assertEquals(8, packed.retainedChunkBytes()); + assertNotSame(first.data, packed.find("example.Class0").data); + assertEquals(8, packed.retainedChunkBytes()); + } + } + + @Test + void loadsDifferentChunksConcurrently() throws Exception { + byte[] index = + packIndex(2, entry("example.Blocked", 0, 0, 1), entry("example.Concurrent", 1, 0, 1)); + Path jarPath = temporaryDirectory.resolve("concurrent.jar"); + try (OutputStream file = Files.newOutputStream(jarPath); + JarOutputStream jar = new JarOutputStream(file)) { + writeEntry(jar, PackedClassData.ENTRY_NAME, index); + writeEntry(jar, PackedClassData.chunkEntryName(0), new byte[] {1}); + writeEntry(jar, PackedClassData.chunkEntryName(1), new byte[] {2}); + } + + ExecutorService executor = Executors.newFixedThreadPool(2); + try (BlockingJarFile jar = new BlockingJarFile(jarPath, PackedClassData.chunkEntryName(0))) { + PackedClassData packed = PackedClassData.from(jar); + Future blocked = executor.submit(() -> packed.find("example.Blocked")); + assertTrue(jar.awaitBlockedRead()); + + Future concurrent = + executor.submit(() -> packed.find("example.Concurrent")); + assertEquals(2, concurrent.get(5, TimeUnit.SECONDS).data[0]); + + jar.resumeBlockedRead(); + assertEquals(1, blocked.get(5, TimeUnit.SECONDS).data[0]); + } finally { + executor.shutdownNow(); + } + } + + private static void assertLocation( + PackedClassData.Location location, int chunk, int offset, int length) { + assertEquals(chunk, location.chunk); + assertEquals(offset, location.offset); + assertEquals(length, location.length); + } + + private static Entry entry(String name, int chunk, int offset, int length) { + return new Entry(name, chunk, offset, length); + } + + private static byte[] packIndex(int chunkCount, Entry... entries) { + int tableSize = 1; + while (tableSize < entries.length * 2) { + tableSize <<= 1; + } + int namesOffset = HEADER_SIZE + tableSize * RECORD_SIZE; + int namesLength = 0; + for (Entry entry : entries) { + namesLength += entry.name.length() * 2; + } + byte[] index = new byte[namesOffset + namesLength]; + writeInt(index, 0, PackedClassData.MAGIC); + writeInt(index, 4, PackedClassData.VERSION); + writeInt(index, 8, entries.length); + writeInt(index, 12, chunkCount); + writeInt(index, 16, tableSize); + + boolean[] occupied = new boolean[tableSize]; + int nextName = namesOffset; + for (Entry entry : entries) { + int slot = PackedClassData.spread(entry.name.hashCode()) & (tableSize - 1); + while (occupied[slot]) { + slot = (slot + 1) & (tableSize - 1); + } + occupied[slot] = true; + int record = HEADER_SIZE + slot * RECORD_SIZE; + writeInt(index, record, entry.name.hashCode()); + writeInt(index, record + 4, nextName); + writeInt(index, record + 8, entry.name.length()); + writeInt(index, record + 12, entry.chunk); + writeInt(index, record + 16, entry.offset); + writeInt(index, record + 20, entry.length); + for (int i = 0; i < entry.name.length(); i++) { + char character = entry.name.charAt(i); + index[nextName++] = (byte) (character >>> 8); + index[nextName++] = (byte) character; + } + } + return index; + } + + private static int occupiedRecord(byte[] index) { + int tableSize = + ((index[16] & 0xff) << 24) + | ((index[17] & 0xff) << 16) + | ((index[18] & 0xff) << 8) + | (index[19] & 0xff); + for (int slot = 0; slot < tableSize; slot++) { + int record = HEADER_SIZE + slot * RECORD_SIZE; + if (index[record + 8] != 0 + || index[record + 9] != 0 + || index[record + 10] != 0 + || index[record + 11] != 0) { + return record; + } + } + throw new AssertionError("No occupied record"); + } + + private static void writeEntry(JarOutputStream jar, String name, byte[] contents) + throws IOException { + jar.putNextEntry(new JarEntry(name)); + jar.write(contents); + jar.closeEntry(); + } + + private static void writeInt(byte[] target, int offset, int value) { + target[offset] = (byte) (value >>> 24); + target[offset + 1] = (byte) (value >>> 16); + target[offset + 2] = (byte) (value >>> 8); + target[offset + 3] = (byte) value; + } + + private static final class Entry { + private final String name; + private final int chunk; + private final int offset; + private final int length; + + private Entry(String name, int chunk, int offset, int length) { + this.name = name; + this.chunk = chunk; + this.offset = offset; + this.length = length; + } + } + + private static final class BlockingJarFile extends JarFile { + private final String blockedEntry; + private final CountDownLatch readStarted = new CountDownLatch(1); + private final CountDownLatch resumeRead = new CountDownLatch(1); + + private BlockingJarFile(Path path, String blockedEntry) throws IOException { + super(path.toFile()); + this.blockedEntry = blockedEntry; + } + + @Override + public InputStream getInputStream(ZipEntry entry) throws IOException { + if (blockedEntry.equals(entry.getName())) { + readStarted.countDown(); + try { + if (!resumeRead.await(5, TimeUnit.SECONDS)) { + throw new IOException("Timed out waiting to resume blocked chunk read"); + } + } catch (InterruptedException error) { + Thread.currentThread().interrupt(); + throw new IOException("Interrupted while blocking chunk read", error); + } + } + return super.getInputStream(entry); + } + + private boolean awaitBlockedRead() throws InterruptedException { + return readStarted.await(5, TimeUnit.SECONDS); + } + + private void resumeBlockedRead() { + resumeRead.countDown(); + } + } +} diff --git a/dd-java-agent/benchmark/README.md b/dd-java-agent/benchmark/README.md new file mode 100644 index 00000000000..d30bb774f52 --- /dev/null +++ b/dd-java-agent/benchmark/README.md @@ -0,0 +1,86 @@ +# Java agent microbenchmarks + +Run the class-data archive microbenchmark with: + +```shell +./gradlew :dd-java-agent:benchmark:jmh \ + -Pjmh.includes=ClassDataLoadingBenchmark \ + -Pjmh.profilers=gc +``` + +The preparation task launches a minimal application with the assembled agent, records the +`.classdata` classes loaded before application main, and creates comparable agent jars: + +- `baseline.jar`: individually deflated entries, matching the current layout; +- `instrumentation-only.jar`: only indexed `InstrumenterModule` classes packed into early-load and + exact target-system shards; all other classes remain individual entries; +- `semantic-common.jar`: all common classes packed, with non-module classes grouped into Byte Buddy, + agent, telemetry, communication, and fallback families before chunking; +- `load-order-common.jar`: all common classes packed using one non-module load-order group followed + by the same instrumenter shards, preserving the pre-semantic production strategy as a control; +- `production.jar`: the actual production `shadowJar`, packed from the checked-in chunk plan; +- `stored-{10,25,50,75,100}.jar`: the corresponding load-order prefix stored without compression; +- `packed-{64,256,1024}.jar`: compact build-time index plus independently compressed load-order + chunks of the indicated class count; +- `packed-all.jar`: the same compact index with one full common-class chunk. +- `packed-64-dedup.jar`: the 64-class layout without duplicate individual entries. + +Packed variants other than `packed-64-dedup` retain individual entries as a compatibility control. +The deduplicated and production variants serve packed class resource streams directly. Production +packing applies only to selected `.classdata` entries; ordinary agent resources remain unchanged. +Production chunks place non-module classes into deterministic Byte Buddy, agent, telemetry, +communication, and fallback families while preserving load order within each family. Indexed +`InstrumenterModule` classes are sharded by their exact target-system mask; modules marked for early +load share a separate shard regardless of their target systems. This keeps disabled subsystems' +chunks unopened while correctly handling modules that apply to more than one product. +Chunks stay cached during synchronous bootstrap because classes may be defined by both agent class +loaders. At the end of bootstrap they are released, after which an eight-chunk LRU bounds retention +while preserving locality for instrumentations loaded during application startup. + +The production chunk layout is committed in `metadata/common-classdata-plan.txt`. It records the +global chunk number, semantic or product shard, and class order, so two builds with the same plan +produce the same layout. `shadowJar` consumes this plan directly and validates product shards +against the current `instrumenter.index`. + +After reviewing a fresh profile in `metadata/common-classdata.txt`, regenerate the plan with: + +```shell +./gradlew :dd-java-agent:generateCommonClassDataPlan +``` + +The GitLab `verify-common-classdata-plan` job runs this verification on development branches and +skips `master`, release branches, tags, and dependency-cache population pipelines. It derives a +candidate from the committed profile and current instrumenter index, compares it with the committed +plan, and reports added, removed, reassigned, or moved classes. It deliberately does not launch a +timing-sensitive class-load profile on every PR. Profile collection and benchmark review remain the +evidence-gathering step; plan verification is the reproducible build gate. + +The generated artifacts are under `build/classdata-benchmark`. Artifact discovery also accepts a +`default`, `profiling`, `appsec`, or `tracing-disabled` scenario when its main class is invoked +directly. The JMH +benchmark measures reading 25%, 50%, and 100% of the discovered common classes, both with an +already-open loader and including loader/JAR opening. + +Run the fresh-JVM comparison with: + +```shell +./gradlew :dd-java-agent:benchmark:classDataStartupBenchmark +``` + +It performs five warmups followed by thirty randomized runs per layout and prints CSV containing +mean, median, p95, standard deviation, and jar size. Override those counts with +`-Ddatadog.classdata.benchmark.warmups` and +`-Ddatadog.classdata.benchmark.repetitions`. A focused subset can be selected with the comma-separated +`-Ddatadog.classdata.benchmark.layouts` property. Re-run with `-PtestJvm=8`, `17`, and `21` to compare +supported JVMs. Repeated runs use a warm filesystem cache; clearing the operating system page cache +must be done separately when true cold-I/O measurements are required. + +Select a product configuration with +`-Ddatadog.classdata.benchmark.scenario=profiling`, `appsec`, or `tracing-disabled` (the default is +`default`). + +The artifact and startup main classes accept `default`, `profiling`, `appsec`, and +`tracing-disabled` scenario arguments for direct cross-product experiments. Artifact generation also +accepts a final `profile-only` argument when only the discovered class list is needed. All discovery +and startup measurements stop when the minimal target reaches application `main`; +application-framework readiness is deliberately outside this benchmark's scope. diff --git a/dd-java-agent/benchmark/build.gradle b/dd-java-agent/benchmark/build.gradle index 178eefd2def..66035c936d5 100644 --- a/dd-java-agent/benchmark/build.gradle +++ b/dd-java-agent/benchmark/build.gradle @@ -6,6 +6,7 @@ apply from: "$rootDir/gradle/java.gradle" dependencies { jmh project(':dd-trace-api') + jmh project(':dd-java-agent:agent-bootstrap') jmh libs.bytebuddyagent } @@ -39,7 +40,76 @@ jmh { } tasks.named('jmh') { - dependsOn ':dd-java-agent:shadowJar' + def includes = providers.gradleProperty('jmh.includes') + if (!includes.isPresent() || includes.get().contains('ClassData')) { + dependsOn 'prepareClassDataBenchmark' + } else { + dependsOn ':dd-java-agent:shadowJar' + } +} + +def classDataBenchmarkDir = layout.buildDirectory.dir('classdata-benchmark') +def agentShadowJar = project(':dd-java-agent').tasks.named('shadowJar', com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar) +def agentUnpackedShadowJar = project(':dd-java-agent').tasks.named('unpackedShadowJar', com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar) +def benchmarkJavaExecutable = providers.provider { + jmh.jvm.orNull ?: new File(System.getProperty('java.home'), 'bin/java').absolutePath +} +def classDataBenchmarkScenario = + providers.systemProperty('datadog.classdata.benchmark.scenario').orElse('default') + +tasks.register('prepareClassDataBenchmark', JavaExec) { + group = 'benchmark' + description = 'Build deflated, stored, and packed classdata benchmark agent jars' + dependsOn agentShadowJar, agentUnpackedShadowJar, tasks.named('jmhJar') + classpath = sourceSets.jmh.runtimeClasspath + mainClass = 'datadog.trace.bootstrap.ClassDataBenchmarkArtifacts' + inputs.files agentShadowJar.flatMap { it.archiveFile }, agentUnpackedShadowJar.flatMap { it.archiveFile } + inputs.property 'scenario', classDataBenchmarkScenario + outputs.dir classDataBenchmarkDir + doFirst { + setArgs([ + agentUnpackedShadowJar.get().archiveFile.get().asFile.absolutePath, + classDataBenchmarkDir.get().asFile.absolutePath, + benchmarkJavaExecutable.get(), + tasks.named('jmhJar').get().archiveFile.get().asFile.absolutePath, + classDataBenchmarkScenario.get(), + ]) + } + doLast { + copy { + from agentShadowJar.get().archiveFile + into classDataBenchmarkDir + rename { 'production.jar' } + } + } +} + +jmh { + jvmArgsAppend = ["-Ddatadog.classdata.benchmark.dir=${classDataBenchmarkDir.get().asFile.absolutePath}"] +} + +tasks.register('classDataStartupBenchmark', JavaExec) { + group = 'benchmark' + description = 'Compare fresh-JVM startup across classdata archive variants' + dependsOn 'prepareClassDataBenchmark', tasks.named('jmhJar') + classpath = sourceSets.jmh.runtimeClasspath + mainClass = 'datadog.trace.bootstrap.ClassDataStartupBenchmark' + systemProperty 'datadog.classdata.benchmark.warmups', + providers.systemProperty('datadog.classdata.benchmark.warmups').getOrElse('5') + systemProperty 'datadog.classdata.benchmark.repetitions', + providers.systemProperty('datadog.classdata.benchmark.repetitions').getOrElse('30') + def layouts = providers.systemProperty('datadog.classdata.benchmark.layouts') + if (layouts.isPresent()) { + systemProperty 'datadog.classdata.benchmark.layouts', layouts.get() + } + doFirst { + setArgs([ + classDataBenchmarkDir.get().asFile.absolutePath, + benchmarkJavaExecutable.get(), + tasks.named('jmhJar').get().archiveFile.get().asFile.absolutePath, + classDataBenchmarkScenario.get(), + ]) + } } /* @@ -48,4 +118,3 @@ tasks.named('jmh') { (using https://github.com/brendangregg/FlameGraph) ./flamegraph.pl --color=java dd-java-agent/benchmark/build/reports/jmh/profiler-cleaned.txt > dd-java-agent/benchmark/build/reports/jmh/jmh-master.svg */ - diff --git a/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataBenchmarkArtifacts.java b/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataBenchmarkArtifacts.java new file mode 100644 index 00000000000..b66d7939055 --- /dev/null +++ b/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataBenchmarkArtifacts.java @@ -0,0 +1,595 @@ +package datadog.trace.bootstrap; + +import de.thetaphi.forbiddenapis.SuppressForbidden; +import java.io.BufferedReader; +import java.io.ByteArrayOutputStream; +import java.io.DataInputStream; +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.OutputStream; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.StandardOpenOption; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Enumeration; +import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.TreeMap; +import java.util.concurrent.TimeUnit; +import java.util.jar.JarEntry; +import java.util.jar.JarFile; +import java.util.regex.Matcher; +import java.util.regex.Pattern; +import java.util.zip.CRC32; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + +/** Generates comparable agent-jar layouts for the class-data benchmarks. */ +public final class ClassDataBenchmarkArtifacts { + private static final int[] STORED_PERCENTAGES = {10, 25, 50, 75, 100}; + private static final int[] PACKED_CHUNK_SIZES = {64, 256, 1024}; + private static final int PACKED_HEADER_SIZE = 20; + private static final int PACKED_RECORD_SIZE = 24; + private static final Pattern MODERN_CLASS_LOAD = + Pattern.compile(".*\\[class,load] ([^ ]+) source:.*"); + private static final Pattern LEGACY_CLASS_LOAD = Pattern.compile("\\[Loaded ([^ ]+) from .*"); + private static final String COMMON_CLASSES_FILE = "common-classes.txt"; + private static final String INSTRUMENTER_INDEX_ENTRY = "inst/instrumenter.index"; + private static final int EARLY_LOAD_SHARD = -1; + + private ClassDataBenchmarkArtifacts() {} + + @SuppressForbidden // Standalone artifact generation reports its output directory to the caller. + public static void main(String[] args) throws Exception { + if (args.length < 4 || args.length > 6) { + throw new IllegalArgumentException( + "Expected: " + + "[scenario] [profile-only]"); + } + File agentJar = new File(args[0]); + Path outputDir = new File(args[1]).toPath(); + Files.createDirectories(outputDir); + + String scenario = args.length == 5 ? args[4] : "default"; + if (args.length == 6) { + scenario = args[4]; + } + boolean profileOnly = args.length == 6 && "profile-only".equals(args[5]); + if (args.length == 6 && !profileOnly) { + throw new IllegalArgumentException("Unknown class-data benchmark mode " + args[5]); + } + List commonClasses = discoverCommonClasses(agentJar, args[2], args[3], scenario); + if (commonClasses.isEmpty()) { + throw new IllegalStateException("No common .classdata classes were discovered"); + } + Files.write( + outputDir.resolve(COMMON_CLASSES_FILE), + commonClasses, + StandardCharsets.UTF_8, + StandardOpenOption.CREATE, + StandardOpenOption.TRUNCATE_EXISTING); + + long classBytes = 0; + try (JarFile jar = new JarFile(agentJar)) { + AgentJarIndex index = AgentJarIndex.readIndex(jar); + for (String className : commonClasses) { + classBytes += jar.getJarEntry(index.classEntryName(className)).getSize(); + } + } + if (!profileOnly) { + rewrite(agentJar, outputDir.resolve("baseline.jar"), commonClasses, 0, null); + Map moduleShards = readInstrumenterModuleShards(agentJar); + Map> groupedModules = new TreeMap<>(); + for (String className : commonClasses) { + Integer shard = moduleShards.get(className); + if (shard != null) { + groupedModules.computeIfAbsent(shard, ignored -> new ArrayList<>()).add(className); + } + } + List> moduleGroups = new ArrayList<>(groupedModules.values()); + List moduleClasses = new ArrayList<>(); + for (List group : moduleGroups) { + moduleClasses.addAll(group); + } + PackedArchive instrumenterOnly = createGroupedPackedData(agentJar, moduleGroups, 64); + rewrite( + agentJar, + outputDir.resolve("instrumentation-only.jar"), + moduleClasses, + 0, + instrumenterOnly.withoutIndividualEntries()); + List> semanticGroups = semanticClassGroups(commonClasses, moduleShards); + PackedArchive semanticCommon = createGroupedPackedData(agentJar, semanticGroups, 64); + rewrite( + agentJar, + outputDir.resolve("semantic-common.jar"), + commonClasses, + 0, + semanticCommon.withoutIndividualEntries()); + List> loadOrderGroups = loadOrderClassGroups(commonClasses, moduleShards); + PackedArchive loadOrderCommon = createGroupedPackedData(agentJar, loadOrderGroups, 64); + rewrite( + agentJar, + outputDir.resolve("load-order-common.jar"), + commonClasses, + 0, + loadOrderCommon.withoutIndividualEntries()); + for (int percentage : STORED_PERCENTAGES) { + int storedCount = percentageCount(commonClasses.size(), percentage); + rewrite( + agentJar, + outputDir.resolve("stored-" + percentage + ".jar"), + commonClasses, + storedCount, + null); + } + for (int chunkSize : PACKED_CHUNK_SIZES) { + PackedArchive packed = createPackedData(agentJar, commonClasses, chunkSize); + rewrite( + agentJar, outputDir.resolve("packed-" + chunkSize + ".jar"), commonClasses, 0, packed); + if (chunkSize == 64) { + rewrite( + agentJar, + outputDir.resolve("packed-64-dedup.jar"), + commonClasses, + 0, + packed.withoutIndividualEntries()); + } + } + PackedArchive packed = createPackedData(agentJar, commonClasses, commonClasses.size()); + rewrite(agentJar, outputDir.resolve("packed-all.jar"), commonClasses, 0, packed); + } + System.out.printf( + "Prepared %d common classes (%,d bytes) for %s in %s%n", + commonClasses.size(), classBytes, scenario, outputDir); + } + + private static List discoverCommonClasses( + File agentJar, String javaExecutable, String benchmarkJar, String scenario) throws Exception { + Set classEntries = new HashSet<>(); + try (JarFile jar = new JarFile(agentJar)) { + AgentJarIndex index = AgentJarIndex.readIndex(jar); + Enumeration entries = jar.entries(); + while (entries.hasMoreElements()) { + String entryName = entries.nextElement().getName(); + if (entryName.endsWith(".classdata")) { + int prefixEnd = entryName.indexOf('/'); + if (prefixEnd > 0) { + String className = + entryName + .substring(prefixEnd + 1, entryName.length() - ".classdata".length()) + .replace('/', '.'); + String indexedEntry = index.classEntryName(className); + if (entryName.equals(indexedEntry)) { + classEntries.add(className); + } + } + } + } + } + + List command = new ArrayList<>(); + command.add(javaExecutable); + command.add("-verbose:class"); + command.addAll(agentOptions(scenario)); + command.add("-javaagent:" + agentJar.getAbsolutePath()); + command.add("-cp"); + command.add(benchmarkJar); + command.add(ClassDataBenchmarkTarget.class.getName()); + Process process = new ProcessBuilder(command).redirectErrorStream(true).start(); + + Set discovered = new LinkedHashSet<>(); + boolean mainReached = false; + try (BufferedReader reader = + new BufferedReader( + new InputStreamReader(process.getInputStream(), StandardCharsets.UTF_8))) { + String line; + while ((line = reader.readLine()) != null) { + if (ClassDataBenchmarkTarget.READY.equals(line)) { + mainReached = true; + } else if (!mainReached) { + String className = loadedClassName(line); + if (classEntries.contains(className)) { + discovered.add(className); + } + } + } + } + if (!process.waitFor(30, TimeUnit.SECONDS)) { + process.destroyForcibly(); + throw new IOException("Timed out discovering common classdata classes"); + } + if (process.exitValue() != 0) { + throw new IOException("Classdata discovery process exited with " + process.exitValue()); + } + if (!mainReached) { + throw new IOException("Classdata discovery process did not reach application main"); + } + List result = new ArrayList<>(discovered); + return result; + } + + static List agentOptions(String scenario) { + List options = + new ArrayList<>( + Arrays.asList( + "-Ddd.jmxfetch.enabled=false", + "-Ddd.telemetry.enabled=false", + "-Ddd.remote_config.enabled=false", + "-Ddd.writer.type=LoggingWriter")); + if ("default".equals(scenario)) { + return options; + } + if ("profiling".equals(scenario)) { + options.add("-Ddd.profiling.enabled=true"); + return options; + } + if ("appsec".equals(scenario)) { + options.add("-Ddd.appsec.enabled=true"); + return options; + } + if ("tracing-disabled".equals(scenario)) { + options.add("-Ddd.trace.enabled=false"); + return options; + } + throw new IllegalArgumentException("Unknown class-data benchmark scenario " + scenario); + } + + private static int percentageCount(int size, int percentage) { + return Math.max(1, (size * percentage + 99) / 100); + } + + private static String loadedClassName(String line) { + Matcher matcher = MODERN_CLASS_LOAD.matcher(line); + if (matcher.matches()) { + return matcher.group(1); + } + matcher = LEGACY_CLASS_LOAD.matcher(line); + return matcher.matches() ? matcher.group(1) : null; + } + + static PackedArchive createPackedData(File agentJar, List commonClasses, int chunkSize) + throws IOException { + return createGroupedPackedData(agentJar, Arrays.asList(commonClasses), chunkSize); + } + + private static PackedArchive createGroupedPackedData( + File agentJar, List> classGroups, int chunkSize) throws IOException { + if (chunkSize <= 0) { + throw new IllegalArgumentException("Chunk size must be positive"); + } + int classCount = 0; + for (List group : classGroups) { + classCount += group.size(); + } + List records = new ArrayList<>(classCount); + List chunks = new ArrayList<>(); + try (JarFile jar = new JarFile(agentJar)) { + AgentJarIndex index = AgentJarIndex.readIndex(jar); + for (List group : classGroups) { + ByteArrayOutputStream chunk = null; + for (int i = 0; i < group.size(); i++) { + if (i % chunkSize == 0) { + if (chunk != null) { + chunks.add(chunk.toByteArray()); + } + chunk = new ByteArrayOutputStream(); + } + String className = group.get(i); + byte[] classData = readAll(jar, jar.getJarEntry(index.classEntryName(className))); + records.add(new PackedRecord(className, chunks.size(), chunk.size(), classData.length)); + chunk.write(classData); + } + if (chunk != null) { + chunks.add(chunk.toByteArray()); + } + } + } + + int tableSize = 1; + while (tableSize < records.size() * 2) { + tableSize <<= 1; + } + int namesOffset = PACKED_HEADER_SIZE + tableSize * PACKED_RECORD_SIZE; + int namesSize = 0; + for (PackedRecord record : records) { + record.nameOffset = namesOffset + namesSize; + namesSize += record.className.length() * 2; + } + byte[] packedIndex = new byte[namesOffset + namesSize]; + writeInt(packedIndex, 0, PackedClassData.MAGIC); + writeInt(packedIndex, 4, PackedClassData.VERSION); + writeInt(packedIndex, 8, records.size()); + writeInt(packedIndex, 12, chunks.size()); + writeInt(packedIndex, 16, tableSize); + boolean[] occupied = new boolean[tableSize]; + for (PackedRecord packedRecord : records) { + int slot = PackedClassData.spread(packedRecord.className.hashCode()) & (tableSize - 1); + while (occupied[slot]) { + slot = (slot + 1) & (tableSize - 1); + } + occupied[slot] = true; + int recordOffset = PACKED_HEADER_SIZE + slot * PACKED_RECORD_SIZE; + writeInt(packedIndex, recordOffset, packedRecord.className.hashCode()); + writeInt(packedIndex, recordOffset + 4, packedRecord.nameOffset); + writeInt(packedIndex, recordOffset + 8, packedRecord.className.length()); + writeInt(packedIndex, recordOffset + 12, packedRecord.chunk); + writeInt(packedIndex, recordOffset + 16, packedRecord.offset); + writeInt(packedIndex, recordOffset + 20, packedRecord.length); + int nameOffset = packedRecord.nameOffset; + for (int i = 0; i < packedRecord.className.length(); i++) { + char character = packedRecord.className.charAt(i); + packedIndex[nameOffset++] = (byte) (character >>> 8); + packedIndex[nameOffset++] = (byte) character; + } + } + + Map entries = new LinkedHashMap<>(); + entries.put(PackedClassData.ENTRY_NAME, packedIndex); + for (int chunk = 0; chunk < chunks.size(); chunk++) { + entries.put(PackedClassData.chunkEntryName(chunk), chunks.get(chunk)); + } + return new PackedArchive(entries); + } + + private static List> semanticClassGroups( + List commonClasses, Map moduleShards) { + Map> semanticGroups = new LinkedHashMap<>(); + semanticGroups.put("bytebuddy", new ArrayList<>()); + semanticGroups.put("agent", new ArrayList<>()); + semanticGroups.put("telemetry", new ArrayList<>()); + semanticGroups.put("communication", new ArrayList<>()); + semanticGroups.put("other", new ArrayList<>()); + Map> instrumenterGroups = new TreeMap<>(); + + for (String className : commonClasses) { + Integer moduleShard = moduleShards.get(className); + if (moduleShard != null) { + instrumenterGroups + .computeIfAbsent(moduleShard, ignored -> new ArrayList<>()) + .add(className); + } else { + semanticGroups.get(semanticGroup(className)).add(className); + } + } + + List> result = new ArrayList<>(); + for (List group : semanticGroups.values()) { + if (!group.isEmpty()) { + result.add(group); + } + } + result.addAll(instrumenterGroups.values()); + return result; + } + + private static List> loadOrderClassGroups( + List commonClasses, Map moduleShards) { + List nonModules = new ArrayList<>(); + Map> instrumenterGroups = new TreeMap<>(); + for (String className : commonClasses) { + Integer moduleShard = moduleShards.get(className); + if (moduleShard == null) { + nonModules.add(className); + } else { + instrumenterGroups + .computeIfAbsent(moduleShard, ignored -> new ArrayList<>()) + .add(className); + } + } + List> result = new ArrayList<>(); + result.add(nonModules); + result.addAll(instrumenterGroups.values()); + return result; + } + + private static String semanticGroup(String className) { + if (className.startsWith("net.bytebuddy.")) { + return "bytebuddy"; + } + if (className.startsWith("datadog.trace.agent.")) { + return "agent"; + } + if (className.startsWith("datadog.telemetry.")) { + return "telemetry"; + } + if (className.startsWith("datadog.communication.") + || className.startsWith("datadog.okhttp3.") + || className.startsWith("datadog.okio.") + || className.startsWith("com.squareup.moshi.")) { + return "communication"; + } + return "other"; + } + + private static Map readInstrumenterModuleShards(File agentJar) + throws IOException { + byte[] packed; + int moduleCount; + try (JarFile jar = new JarFile(agentJar)) { + byte[] index = readAll(jar, jar.getJarEntry(INSTRUMENTER_INDEX_ENTRY)); + try (DataInputStream input = new DataInputStream(new java.io.ByteArrayInputStream(index))) { + moduleCount = input.readInt(); + input.readInt(); // transformation count + int packedLength = input.readInt(); + if (moduleCount < 0 || packedLength < 0) { + throw new IOException("Invalid instrumenter index header"); + } + packed = new byte[packedLength]; + input.readFully(packed); + if (input.read() != -1) { + throw new IOException("Unexpected trailing instrumenter index data"); + } + } + } + + Map result = new LinkedHashMap<>(); + try (DataInputStream input = new DataInputStream(new java.io.ByteArrayInputStream(packed))) { + for (int module = 0; module < moduleCount; module++) { + String moduleName = readAscii(input); + int targetSystems = input.readUnsignedShort(); + int flags = input.readUnsignedByte(); + int memberCount = input.readUnsignedByte(); + result.put(moduleName, (flags & 0x02) != 0 ? EARLY_LOAD_SHARD : targetSystems); + if (memberCount == 0xFF) { + if ((flags & 0x01) != 0) { + skipAdviceOverrides(input); + } + } else { + for (int member = 0; member < memberCount; member++) { + readAscii(input); + if ((flags & 0x01) != 0) { + skipAdviceOverrides(input); + } + } + } + } + if (input.read() != -1) { + throw new IOException("Instrumenter index contains unparsed module data"); + } + } + return result; + } + + private static String readAscii(DataInputStream input) throws IOException { + int length = input.readUnsignedByte(); + byte[] value = new byte[length]; + input.readFully(value); + return new String(value, StandardCharsets.ISO_8859_1); + } + + private static void skipAdviceOverrides(DataInputStream input) throws IOException { + int overrideCount = input.readUnsignedByte(); + for (int override = 0; override < overrideCount; override++) { + readAscii(input); + input.readUnsignedShort(); + } + } + + private static void rewrite( + File source, + Path target, + List commonClasses, + int storedCount, + PackedArchive packedData) + throws IOException { + Set commonEntries = new LinkedHashSet<>(); + try (JarFile jar = new JarFile(source)) { + AgentJarIndex index = AgentJarIndex.readIndex(jar); + int indexedCount = + packedData != null && packedData.removeIndividualEntries + ? commonClasses.size() + : storedCount; + for (int i = 0; i < indexedCount; i++) { + String className = commonClasses.get(i); + commonEntries.add(index.classEntryName(className)); + } + } + + Files.deleteIfExists(target); + try (JarFile input = new JarFile(source); + OutputStream fileOutput = Files.newOutputStream(target, StandardOpenOption.CREATE_NEW); + ZipOutputStream output = new ZipOutputStream(fileOutput)) { + Enumeration entries = input.entries(); + while (entries.hasMoreElements()) { + JarEntry original = entries.nextElement(); + if (packedData != null + && packedData.removeIndividualEntries + && commonEntries.contains(original.getName())) { + continue; + } + byte[] content = original.isDirectory() ? new byte[0] : readAll(input, original); + ZipEntry copy = new ZipEntry(original.getName()); + copy.setTime(original.getTime()); + if (storedCount > 0 && commonEntries.contains(original.getName())) { + setStored(copy, content); + } + output.putNextEntry(copy); + output.write(content); + output.closeEntry(); + } + if (packedData != null) { + for (Map.Entry packedEntry : packedData.entries.entrySet()) { + output.putNextEntry(new ZipEntry(packedEntry.getKey())); + output.write(packedEntry.getValue()); + output.closeEntry(); + } + } + } + } + + private static void writeInt(byte[] target, int offset, int value) { + target[offset] = (byte) (value >>> 24); + target[offset + 1] = (byte) (value >>> 16); + target[offset + 2] = (byte) (value >>> 8); + target[offset + 3] = (byte) value; + } + + static final class PackedArchive { + final Map entries; + final boolean removeIndividualEntries; + + private PackedArchive(Map entries) { + this(entries, false); + } + + private PackedArchive(Map entries, boolean removeIndividualEntries) { + this.entries = entries; + this.removeIndividualEntries = removeIndividualEntries; + } + + private PackedArchive withoutIndividualEntries() { + return new PackedArchive(entries, true); + } + } + + private static final class PackedRecord { + private final String className; + private final int chunk; + private final int offset; + private final int length; + private int nameOffset; + + private PackedRecord(String className, int chunk, int offset, int length) { + this.className = className; + this.chunk = chunk; + this.offset = offset; + this.length = length; + } + } + + private static void setStored(ZipEntry entry, byte[] content) { + CRC32 crc = new CRC32(); + crc.update(content); + entry.setMethod(ZipEntry.STORED); + entry.setSize(content.length); + entry.setCompressedSize(content.length); + entry.setCrc(crc.getValue()); + } + + private static byte[] readAll(JarFile jar, JarEntry entry) throws IOException { + if (entry == null || entry.getSize() < 0 || entry.getSize() > Integer.MAX_VALUE) { + throw new IOException("Invalid jar entry"); + } + byte[] bytes = new byte[(int) entry.getSize()]; + try (InputStream input = jar.getInputStream(entry)) { + int offset = 0; + while (offset < bytes.length) { + int read = input.read(bytes, offset, bytes.length - offset); + if (read < 0) { + throw new IOException("Truncated jar entry " + entry.getName()); + } + offset += read; + } + } + return bytes; + } +} diff --git a/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataBenchmarkTarget.java b/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataBenchmarkTarget.java new file mode 100644 index 00000000000..05e2bb2e6f6 --- /dev/null +++ b/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataBenchmarkTarget.java @@ -0,0 +1,15 @@ +package datadog.trace.bootstrap; + +import de.thetaphi.forbiddenapis.SuppressForbidden; + +/** Minimal application used to mark the point where agent startup reaches application main. */ +public final class ClassDataBenchmarkTarget { + static final String READY = "CLASSDATA_BENCHMARK_READY"; + + private ClassDataBenchmarkTarget() {} + + @SuppressForbidden // The parent benchmark waits for this readiness marker on stdout. + public static void main(String[] args) { + System.out.println(READY); + } +} diff --git a/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataLoadingBenchmark.java b/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataLoadingBenchmark.java new file mode 100644 index 00000000000..c794a3e7819 --- /dev/null +++ b/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataLoadingBenchmark.java @@ -0,0 +1,135 @@ +package datadog.trace.bootstrap; + +import java.io.File; +import java.net.URL; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.util.List; +import java.util.concurrent.TimeUnit; +import org.openjdk.jmh.annotations.Benchmark; +import org.openjdk.jmh.annotations.BenchmarkMode; +import org.openjdk.jmh.annotations.Fork; +import org.openjdk.jmh.annotations.Level; +import org.openjdk.jmh.annotations.Measurement; +import org.openjdk.jmh.annotations.Mode; +import org.openjdk.jmh.annotations.OutputTimeUnit; +import org.openjdk.jmh.annotations.Param; +import org.openjdk.jmh.annotations.Scope; +import org.openjdk.jmh.annotations.Setup; +import org.openjdk.jmh.annotations.State; +import org.openjdk.jmh.annotations.TearDown; +import org.openjdk.jmh.annotations.Warmup; +import org.openjdk.jmh.infra.Blackhole; + +/** Measures the archive-reading portion of loading the classes commonly needed before main. */ +@BenchmarkMode(Mode.SingleShotTime) +@OutputTimeUnit(TimeUnit.MILLISECONDS) +@Warmup(iterations = 3) +@Measurement(iterations = 10) +@Fork(1) +public class ClassDataLoadingBenchmark { + @State(Scope.Thread) + public static class BenchmarkState { + @Param({ + "baseline", + "production", + "stored-10", + "stored-25", + "stored-50", + "stored-75", + "stored-100", + "packed-64", + "packed-64-dedup", + "packed-256", + "packed-1024", + "packed-all" + }) + public String layout; + + @Param({"25", "50", "100"}) + public int percentage; + + private URL jarUrl; + private List commonClasses; + + @Setup(Level.Trial) + public void prepareTrial() throws Exception { + File benchmarkDir = + new File( + System.getProperty("datadog.classdata.benchmark.dir", "build/classdata-benchmark")); + jarUrl = new File(benchmarkDir, layout + ".jar").toURI().toURL(); + commonClasses = + Files.readAllLines( + new File(benchmarkDir, "common-classes.txt").toPath(), StandardCharsets.UTF_8); + } + + private static ClassLoader platformClassLoader() { + ClassLoader system = ClassLoader.getSystemClassLoader(); + ClassLoader parent = system.getParent(); + return parent == null ? system : parent; + } + } + + @State(Scope.Thread) + public static class OpenLoaderState { + private DatadogClassLoader loader; + + @Setup(Level.Invocation) + public void prepareInvocation(BenchmarkState state) throws Exception { + loader = new DatadogClassLoader(state.jarUrl, BenchmarkState.platformClassLoader()); + } + + @TearDown(Level.Invocation) + public void closeInvocation() throws Exception { + loader.close(); + } + } + + @Benchmark + public void readCommonClasses( + BenchmarkState state, OpenLoaderState loaderState, Blackhole blackhole) throws Exception { + readClasses(loaderState.loader, state.commonClasses, state.percentage, blackhole); + } + + @Benchmark + public void openAndReadCommonClasses(BenchmarkState state, Blackhole blackhole) throws Exception { + DatadogClassLoader loader = new DatadogClassLoader(state.jarUrl, state.platformClassLoader()); + try { + readClasses(loader, state.commonClasses, state.percentage, blackhole); + } finally { + loader.close(); + } + } + + @Benchmark + public void openAndDefineCommonClasses(BenchmarkState state, Blackhole blackhole) + throws Exception { + DatadogClassLoader loader = new DatadogClassLoader(state.jarUrl, state.platformClassLoader()); + try { + int count = percentageCount(state.commonClasses.size(), state.percentage); + for (int i = 0; i < count; i++) { + blackhole.consume(loader.loadClass(state.commonClasses.get(i))); + } + blackhole.consume(loader.retainedPackedClassBytes()); + } finally { + loader.close(); + } + } + + private static void readClasses( + DatadogClassLoader loader, List commonClasses, int percentage, Blackhole blackhole) + throws Exception { + int count = percentageCount(commonClasses.size(), percentage); + long bytes = 0; + for (int i = 0; i < count; i++) { + byte[] classData = loader.loadClassBytes(commonClasses.get(i)); + bytes += classData.length; + blackhole.consume(classData); + } + blackhole.consume(bytes); + } + + private static int percentageCount(int size, int percentage) { + return Math.max(1, (size * percentage + 99) / 100); + } +} diff --git a/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataRetentionProbe.java b/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataRetentionProbe.java new file mode 100644 index 00000000000..fc24e052a0c --- /dev/null +++ b/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataRetentionProbe.java @@ -0,0 +1,41 @@ +package datadog.trace.bootstrap; + +import de.thetaphi.forbiddenapis.SuppressForbidden; +import java.io.File; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.util.List; + +/** Reports class bytes retained by packed chunks after defining the discovered common set. */ +public final class ClassDataRetentionProbe { + private ClassDataRetentionProbe() {} + + @SuppressForbidden // Standalone probe output is consumed by benchmark tooling. + public static void main(String[] args) throws Exception { + if (args.length != 2) { + throw new IllegalArgumentException("Expected: "); + } + File benchmarkDir = new File(args[0]); + List commonClasses = + Files.readAllLines( + new File(benchmarkDir, "common-classes.txt").toPath(), StandardCharsets.UTF_8); + DatadogClassLoader loader = + new DatadogClassLoader( + new File(benchmarkDir, args[1] + ".jar").toURI().toURL(), platformClassLoader()); + try { + for (String className : commonClasses) { + loader.loadClass(className); + } + System.out.printf( + "%s retained_packed_class_bytes=%d%n", args[1], loader.retainedPackedClassBytes()); + } finally { + loader.close(); + } + } + + private static ClassLoader platformClassLoader() { + ClassLoader system = ClassLoader.getSystemClassLoader(); + ClassLoader parent = system.getParent(); + return parent == null ? system : parent; + } +} diff --git a/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataStartupBenchmark.java b/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataStartupBenchmark.java new file mode 100644 index 00000000000..6dbc39e6c31 --- /dev/null +++ b/dd-java-agent/benchmark/src/jmh/java/datadog/trace/bootstrap/ClassDataStartupBenchmark.java @@ -0,0 +1,164 @@ +package datadog.trace.bootstrap; + +import de.thetaphi.forbiddenapis.SuppressForbidden; +import java.io.BufferedReader; +import java.io.File; +import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.Comparator; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.Random; +import java.util.concurrent.TimeUnit; + +/** Fresh-JVM benchmark for comparing class-data archive layouts through application main. */ +public final class ClassDataStartupBenchmark { + private static final List DEFAULT_LAYOUTS = + Arrays.asList( + "baseline", + "instrumentation-only", + "load-order-common", + "semantic-common", + "production", + "stored-10", + "stored-25", + "stored-50", + "stored-75", + "stored-100", + "packed-64", + "packed-64-dedup", + "packed-256", + "packed-1024", + "packed-all"); + + private ClassDataStartupBenchmark() {} + + @SuppressForbidden // Standalone benchmark output is intentionally written as CSV. + public static void main(String[] args) throws Exception { + if (args.length < 3 || args.length > 4) { + throw new IllegalArgumentException( + "Expected: [scenario]"); + } + File benchmarkDir = new File(args[0]); + String scenario = args.length == 4 ? args[3] : "default"; + List layouts = configuredLayouts(); + int warmups = Integer.getInteger("datadog.classdata.benchmark.warmups", 5); + int repetitions = Integer.getInteger("datadog.classdata.benchmark.repetitions", 30); + + for (String layout : layouts) { + for (int i = 0; i < warmups; i++) { + launch(benchmarkDir, layout, args[1], args[2], scenario); + } + } + + Map> timings = new LinkedHashMap<>(); + for (String layout : layouts) { + timings.put(layout, new ArrayList()); + } + List order = new ArrayList<>(); + for (int i = 0; i < repetitions; i++) { + order.addAll(layouts); + } + Collections.shuffle(order, new Random(0xDDC1A55L)); + for (String layout : order) { + timings.get(layout).add(launch(benchmarkDir, layout, args[1], args[2], scenario)); + } + + System.out.println("layout,runs,mean_ms,median_ms,p95_ms,stddev_ms,jar_bytes"); + for (String layout : layouts) { + List values = timings.get(layout); + System.out.printf( + "%s,%d,%.3f,%.3f,%.3f,%.3f,%d%n", + layout, + values.size(), + mean(values), + percentile(values, 0.50), + percentile(values, 0.95), + standardDeviation(values), + new File(benchmarkDir, layout + ".jar").length()); + } + } + + private static List configuredLayouts() { + String configured = System.getProperty("datadog.classdata.benchmark.layouts"); + if (configured == null || configured.isEmpty()) { + return DEFAULT_LAYOUTS; + } + List layouts = new ArrayList<>(); + int start = 0; + int separator; + while ((separator = configured.indexOf(',', start)) >= 0) { + layouts.add(configured.substring(start, separator)); + start = separator + 1; + } + if (start < configured.length()) { + layouts.add(configured.substring(start)); + } + return layouts; + } + + private static double launch( + File benchmarkDir, String layout, String javaExecutable, String benchmarkJar, String scenario) + throws Exception { + long started = System.nanoTime(); + List command = new ArrayList<>(); + command.add(javaExecutable); + command.addAll(ClassDataBenchmarkArtifacts.agentOptions(scenario)); + command.add("-javaagent:" + new File(benchmarkDir, layout + ".jar").getAbsolutePath()); + command.add("-cp"); + command.add(benchmarkJar); + command.add(ClassDataBenchmarkTarget.class.getName()); + Process process = new ProcessBuilder(command).redirectErrorStream(true).start(); + boolean ready = false; + long readyAt = 0; + try (BufferedReader reader = + new BufferedReader( + new InputStreamReader(process.getInputStream(), StandardCharsets.UTF_8))) { + String line; + while ((line = reader.readLine()) != null) { + if (ClassDataBenchmarkTarget.READY.equals(line)) { + ready = true; + readyAt = System.nanoTime(); + } + } + } + if (!process.waitFor(30, TimeUnit.SECONDS)) { + process.destroyForcibly(); + throw new IllegalStateException("Timed out starting " + layout + " agent"); + } + if (!ready || process.exitValue() != 0) { + throw new IllegalStateException( + layout + " startup failed with exit code " + process.exitValue()); + } + return (readyAt - started) / 1_000_000.0; + } + + private static double mean(List values) { + double total = 0; + for (double value : values) { + total += value; + } + return total / values.size(); + } + + private static double percentile(List values, double percentile) { + List sorted = new ArrayList<>(values); + sorted.sort(Comparator.naturalOrder()); + int index = (int) Math.ceil(percentile * sorted.size()) - 1; + return sorted.get(Math.max(0, index)); + } + + private static double standardDeviation(List values) { + double mean = mean(values); + double sum = 0; + for (double value : values) { + double delta = value - mean; + sum += delta * delta; + } + return Math.sqrt(sum / values.size()); + } +} diff --git a/dd-java-agent/build.gradle b/dd-java-agent/build.gradle index 66917378481..03c69919814 100644 --- a/dd-java-agent/build.gradle +++ b/dd-java-agent/build.gradle @@ -1,9 +1,454 @@ import static org.gradle.api.file.DuplicatesStrategy.INCLUDE import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar +import com.github.jengelman.gradle.plugins.shadow.transformers.CacheableTransformer import com.github.jengelman.gradle.plugins.shadow.transformers.PreserveFirstFoundResourceTransformer +import com.github.jengelman.gradle.plugins.shadow.transformers.ResourceTransformer +import com.github.jengelman.gradle.plugins.shadow.transformers.TransformerContext +import java.nio.charset.StandardCharsets import java.util.concurrent.atomic.AtomicBoolean import java.util.jar.JarFile +import org.apache.tools.zip.ZipEntry +import org.apache.tools.zip.ZipOutputStream +import org.gradle.api.file.FileTreeElement +import org.gradle.api.tasks.Input +import org.gradle.api.tasks.Internal + +@CacheableTransformer +class CommonClassDataTransformer implements ResourceTransformer { + private static final String INDEX_ENTRY = 'dd-java-agent-common.classdata' + private static final String SHARDS_ENTRY = 'dd-java-agent-common.shards' + private static final String CHUNK_PREFIX = 'dd-java-agent-common/' + private static final String INSTRUMENTER_INDEX_ENTRY = 'inst/instrumenter.index' + private static final String CLASSDATA_SUFFIX = '.classdata' + private static final int MAGIC = 0x44444344 + private static final int VERSION = 2 + private static final int HEADER_SIZE = 20 + private static final int RECORD_SIZE = 24 + + @Input + List planLines = [] + + @Input + int maxChunkSize = 64 + + @Internal + final Map transformedClasses = new LinkedHashMap<>() + + @Internal + byte[] instrumenterIndex + + @Internal + Set selectedClassNames + + @Internal + List> plannedClasses + + @Override + boolean canTransformResource(FileTreeElement element) { + if (element.path == INSTRUMENTER_INDEX_ENTRY) { + return true + } + String className = className(element.path) + if (className == null) { + return false + } + if (selectedClassNames == null) { + plannedClasses = parsePlan(planLines, maxChunkSize) + selectedClassNames = plannedClasses.collect { it.className }.toSet() + } + selectedClassNames.contains(className) + } + + @Override + void transform(TransformerContext context) { + if (context.path == INSTRUMENTER_INDEX_ENTRY) { + if (instrumenterIndex != null) { + throw new IOException("Duplicate ${INSTRUMENTER_INDEX_ENTRY}") + } + instrumenterIndex = context.inputStream.bytes + return + } + String className = className(context.path) + byte[] previous = transformedClasses.put(className, context.inputStream.bytes) + if (previous != null) { + throw new IOException("Duplicate selected class-data entry for ${className}") + } + } + + @Override + boolean hasTransformedResource() { + !transformedClasses.isEmpty() + } + + @Override + void modifyOutputStream(ZipOutputStream output, boolean preserveFileTimestamps) { + if (plannedClasses == null) { + plannedClasses = parsePlan(planLines, maxChunkSize) + } + List missing = plannedClasses.collect { it.className } + .findAll { !transformedClasses.containsKey(it) } + if (!missing.isEmpty()) { + throw new IOException( + "Missing ${missing.size()} selected class-data entries, first entries: ${missing.take(5)}") + } + if (instrumenterIndex == null) { + throw new IOException("Missing ${INSTRUMENTER_INDEX_ENTRY}") + } + + Map moduleShards = readModuleShards(instrumenterIndex) + List> records = [] + List chunks = [] + List chunkShards = [] + ByteArrayOutputStream chunk = null + int currentChunk = -1 + plannedClasses.each { Map planned -> + String className = planned.className + String expectedShard = moduleShards.get(className) ?: semanticShard(className) + if (planned.shard != expectedShard) { + throw new IOException( + "Stale common class-data plan: ${className} is in ${planned.shard}, expected ${expectedShard}. " + + 'Run ./gradlew :dd-java-agent:generateCommonClassDataPlan') + } + if (planned.chunk != currentChunk) { + if (chunk != null) { + chunks.add(chunk.toByteArray()) + } + currentChunk = planned.chunk as int + chunk = new ByteArrayOutputStream() + chunkShards.add(planned.shard as String) + } + byte[] classData = transformedClasses.get(className) + records.add( + [className: className, chunk: currentChunk, offset: chunk.size(), length: classData.length]) + chunk.write(classData) + } + if (chunk != null) { + chunks.add(chunk.toByteArray()) + } + + writeEntry(output, INSTRUMENTER_INDEX_ENTRY, instrumenterIndex) + writeEntry(output, INDEX_ENTRY, buildIndex(records, chunks.size())) + writeEntry(output, SHARDS_ENTRY, buildShardIndex(chunkShards)) + chunks.eachWithIndex { byte[] contents, int index -> + writeEntry(output, "${CHUNK_PREFIX}${index}${CLASSDATA_SUFFIX}", contents) + } + transformedClasses.clear() + instrumenterIndex = null + } + + static List> parsePlan(List lines, int maxChunkSize) { + if (maxChunkSize <= 0) { + throw new IllegalArgumentException('class-data maximum chunk size must be positive') + } + if (lines.isEmpty() || lines.first().trim() != '# common-classdata-plan-v1') { + throw new IllegalArgumentException( + 'common class-data plan must start with # common-classdata-plan-v1') + } + + List> result = [] + Set classNames = new HashSet<>() + int currentChunk = -1 + int classesInChunk = 0 + String currentShard = null + lines.eachWithIndex { String rawLine, int lineIndex -> + String line = rawLine.trim() + if (line.isEmpty() || line.startsWith('#')) { + return + } + String[] fields = line.split('\t', -1) + if (fields.length != 3) { + throw new IllegalArgumentException( + "Invalid common class-data plan line ${lineIndex + 1}: expected chunk, shard, and class") + } + int chunk + try { + chunk = Integer.parseInt(fields[0]) + } catch (NumberFormatException ignored) { + throw new IllegalArgumentException( + "Invalid common class-data chunk at line ${lineIndex + 1}: ${fields[0]}") + } + String shard = fields[1] + String className = fields[2] + if (!(shard ==~ /[a-z0-9][a-z0-9-]*/) || className.isEmpty()) { + throw new IllegalArgumentException( + "Invalid common class-data shard or class at line ${lineIndex + 1}") + } + if (chunk != currentChunk) { + if (chunk != currentChunk + 1) { + throw new IllegalArgumentException( + "Common class-data chunks must be contiguous; found ${chunk} after ${currentChunk}") + } + currentChunk = chunk + currentShard = shard + classesInChunk = 0 + } else if (shard != currentShard) { + throw new IllegalArgumentException( + "Common class-data chunk ${chunk} contains both ${currentShard} and ${shard}") + } + if (++classesInChunk > maxChunkSize) { + throw new IllegalArgumentException( + "Common class-data chunk ${chunk} exceeds ${maxChunkSize} classes") + } + if (!classNames.add(className)) { + throw new IllegalArgumentException("Duplicate common class-data class ${className}") + } + result.add([chunk: chunk, shard: shard, className: className]) + } + if (result.isEmpty()) { + throw new IllegalArgumentException('common class-data plan contains no classes') + } + result + } + + static String buildPlan( + List classNames, Map moduleShards, int chunkSize) { + if (chunkSize <= 0) { + throw new IllegalArgumentException('class-data chunk size must be positive') + } + if (classNames.toSet().size() != classNames.size()) { + throw new IllegalArgumentException('common class-data profile contains duplicates') + } + + Map> shards = new LinkedHashMap<>() + [ + 'common-bytebuddy', + 'common-agent', + 'common-telemetry', + 'common-communication', + 'common-other', + 'early' + ].each { shards.put(it, []) } + Map> targetShards = new TreeMap<>() + classNames.each { String className -> + String shard = moduleShards.get(className) + if (shard == null) { + shards.get(semanticShard(className)).add(className) + } else if (shard == 'early') { + shards.get('early').add(className) + } else { + targetShards.computeIfAbsent(shard) { [] }.add(className) + } + } + shards.putAll(targetShards) + + StringBuilder plan = new StringBuilder('# common-classdata-plan-v1\n') + plan.append('# Generated from metadata/common-classdata.txt; do not edit by hand.\n') + plan.append('# Columns: global chunk, semantic/product shard, binary class name.\n') + int chunk = 0 + shards.each { String shard, List shardClasses -> + shardClasses.eachWithIndex { String className, int index -> + if (index > 0 && index % chunkSize == 0) { + chunk++ + } + plan.append(chunk).append('\t').append(shard).append('\t').append(className).append('\n') + } + if (!shardClasses.isEmpty()) { + chunk++ + } + } + plan.toString() + } + + static List describePlanChanges(List actualLines, List expectedLines) { + Map> actual = parsePlan(actualLines, Integer.MAX_VALUE) + .collectEntries { [(it.className): it] } + Map> expected = parsePlan(expectedLines, Integer.MAX_VALUE) + .collectEntries { [(it.className): it] } + List changes = [] + + (expected.keySet() - actual.keySet()).sort().each { String className -> + Map record = expected[className] + changes.add("+ ${className} -> ${record.shard}/${record.chunk}") + } + (actual.keySet() - expected.keySet()).sort().each { String className -> + changes.add("- ${className} (was ${actual[className].shard}/${actual[className].chunk})") + } + (actual.keySet().intersect(expected.keySet()) as List).sort().each { String className -> + Map before = actual[className] + Map after = expected[className] + if (before.shard != after.shard) { + changes.add("~ ${className} changed ${before.shard} -> ${after.shard}") + } else if (before.chunk != after.chunk) { + changes.add("~ ${className} moved from chunk ${before.chunk} to ${after.chunk}") + } + } + changes + } + + static Map readModuleShards(byte[] index) { + DataInputStream input = new DataInputStream(new ByteArrayInputStream(index)) + int moduleCount = input.readInt() + input.readInt() // transformation count + int packedLength = input.readInt() + if (moduleCount < 0 || packedLength < 0) { + throw new IOException('Invalid instrumenter index header') + } + byte[] packed = new byte[packedLength] + input.readFully(packed) + if (input.read() != -1) { + throw new IOException('Unexpected trailing data in instrumenter index') + } + + Map result = new HashMap<>() + int cursor = 0 + for (int module = 0; module < moduleCount; module++) { + int nameLength = unsignedByte(packed, cursor++) + requireAvailable(packed, cursor, nameLength + 4) + String moduleName = new String(packed, cursor, nameLength, StandardCharsets.ISO_8859_1) + cursor += nameLength + int targetSystems = (unsignedByte(packed, cursor++) << 8) | unsignedByte(packed, cursor++) + int flags = unsignedByte(packed, cursor++) + int memberCount = unsignedByte(packed, cursor++) + result.put( + moduleName, + (flags & 0x02) != 0 + ? 'early' + : String.format(Locale.ROOT, 'targets-%04x', targetSystems)) + + if (memberCount == 0xFF) { + if ((flags & 0x01) != 0) { + cursor = skipOverrides(packed, cursor) + } + } else { + for (int member = 0; member < memberCount; member++) { + int memberNameLength = unsignedByte(packed, cursor++) + requireAvailable(packed, cursor, memberNameLength) + cursor += memberNameLength + if ((flags & 0x01) != 0) { + cursor = skipOverrides(packed, cursor) + } + } + } + } + if (cursor != packed.length) { + throw new IOException( + "Instrumenter index decoded ${cursor} of ${packed.length} packed-name bytes") + } + result + } + + static String semanticShard(String className) { + if (className.startsWith('net.bytebuddy.')) { + return 'common-bytebuddy' + } + if (className.startsWith('datadog.trace.agent.')) { + return 'common-agent' + } + if (className.startsWith('datadog.telemetry.')) { + return 'common-telemetry' + } + if (className.startsWith('datadog.communication.') || + className.startsWith('datadog.okhttp3.') || + className.startsWith('datadog.okio.') || + className.startsWith('com.squareup.moshi.')) { + return 'common-communication' + } + 'common-other' + } + + private static int skipOverrides(byte[] packed, int cursor) { + int overrideCount = unsignedByte(packed, cursor++) + for (int override = 0; override < overrideCount; override++) { + int adviceNameLength = unsignedByte(packed, cursor++) + requireAvailable(packed, cursor, adviceNameLength + 2) + cursor += adviceNameLength + 2 + } + cursor + } + + private static int unsignedByte(byte[] packed, int offset) { + requireAvailable(packed, offset, 1) + packed[offset] & 0xFF + } + + private static void requireAvailable(byte[] packed, int offset, int length) { + if (offset < 0 || length < 0 || offset > packed.length - length) { + throw new IOException('Truncated instrumenter index') + } + } + + private static byte[] buildShardIndex(List chunkShards) { + StringBuilder contents = new StringBuilder('version=1\n') + chunkShards.eachWithIndex { String shard, int chunk -> + contents.append(chunk).append('=').append(shard).append('\n') + } + contents.toString().getBytes(StandardCharsets.ISO_8859_1) + } + + private static byte[] buildIndex(List> records, int chunkCount) { + int tableSize = 1 + while (tableSize < records.size() * 2) { + tableSize <<= 1 + } + int namesOffset = HEADER_SIZE + tableSize * RECORD_SIZE + int nextNameOffset = namesOffset + records.each { record -> + record.nameOffset = nextNameOffset + nextNameOffset += ((String) record.className).length() * 2 + } + + byte[] index = new byte[nextNameOffset] + writeInt(index, 0, MAGIC) + writeInt(index, 4, VERSION) + writeInt(index, 8, records.size()) + writeInt(index, 12, chunkCount) + writeInt(index, 16, tableSize) + boolean[] occupied = new boolean[tableSize] + records.each { record -> + String className = record.className + int slot = spread(className.hashCode()) & (tableSize - 1) + while (occupied[slot]) { + slot = (slot + 1) & (tableSize - 1) + } + occupied[slot] = true + int recordOffset = HEADER_SIZE + slot * RECORD_SIZE + writeInt(index, recordOffset, className.hashCode()) + writeInt(index, recordOffset + 4, record.nameOffset as int) + writeInt(index, recordOffset + 8, className.length()) + writeInt(index, recordOffset + 12, record.chunk as int) + writeInt(index, recordOffset + 16, record.offset as int) + writeInt(index, recordOffset + 20, record.length as int) + int nameOffset = record.nameOffset + for (int i = 0; i < className.length(); i++) { + int character = className.charAt(i) as int + index[nameOffset++] = (byte) (character >>> 8) + index[nameOffset++] = (byte) character + } + } + index + } + + private static void writeEntry(ZipOutputStream output, String name, byte[] contents) { + ZipEntry entry = new ZipEntry(name) + entry.time = 0 + output.putNextEntry(entry) + output.write(contents) + output.closeEntry() + } + + private static String className(String path) { + if (!path.endsWith(CLASSDATA_SUFFIX)) { + return null + } + int prefixEnd = path.indexOf('/') + if (prefixEnd < 0) { + return null + } + path.substring(prefixEnd + 1, path.length() - CLASSDATA_SUFFIX.length()).replace('/', '.') + } + + private static int spread(int hash) { + hash ^ (hash >>> 16) + } + + private static void writeInt(byte[] target, int offset, int value) { + target[offset] = (byte) (value >>> 24) + target[offset + 1] = (byte) (value >>> 16) + target[offset + 2] = (byte) (value >>> 8) + target[offset + 3] = (byte) value + } +} plugins { id 'com.gradleup.shadow' @@ -22,6 +467,18 @@ configurations { def includedAgentDir = project.layout.buildDirectory.dir("generated/included") def includedJarFileTree = fileTree(includedAgentDir) +def commonClassDataManifest = rootProject.file('metadata/common-classdata.txt') +def commonClassDataPlan = rootProject.file('metadata/common-classdata-plan.txt') +def commonClassDataProfileClasses = providers.provider { + commonClassDataManifest.readLines() + .collect { it.trim() } + .findAll { !it.isEmpty() && !it.startsWith('#') } +} +def commonClassDataPlanLines = providers.provider { commonClassDataPlan.readLines('UTF-8') } +def commonClassDataClasses = providers.provider { + CommonClassDataTransformer.parsePlan(commonClassDataPlanLines.get(), 64) + .collect { it.className as String } +} // Populated automatically by includeShadowJar for every product dir registered in this build. // Used by verifyAgentJarContents to check that all included products land in the assembled jar. @@ -326,6 +783,10 @@ tasks.named("shadowJar", ShadowJar) { manifest { attributes( + "Implementation-Title": project.name, + "Implementation-Version": project.version, + "Implementation-Vendor": "Datadog", + "Implementation-URL": "https://github.com/datadog/dd-trace-java", "Main-Class": "datadog.trace.bootstrap.AgentBootstrap", "Agent-Class": "datadog.trace.bootstrap.AgentBootstrap", "Premain-Class": "datadog.trace.bootstrap.AgentPreCheck", @@ -333,6 +794,105 @@ tasks.named("shadowJar", ShadowJar) { "Can-Retransform-Classes": true, ) } + + transform(CommonClassDataTransformer) { + it.planLines = commonClassDataPlanLines.get() + it.maxChunkSize = 64 + } + inputs.file(commonClassDataPlan) +} + +// Control artifact with the same inputs and relocation as the production jar, but with individual +// class-data entries. This is intentionally not published. +def unpackedShadowJar = tasks.register("unpackedShadowJar", ShadowJar) { + from sourceSets.main.output + from sourceSets.main_java6.output + from sourceSets.main_java11.output + generalShadowJarConfig(it) + configurations.empty() + configurations.add(project.configurations.named('shadowInclude')) + destinationDirectory = layout.buildDirectory.dir('classdata-control') + archiveClassifier = 'unpacked' + manifest { + attributes( + "Implementation-Title": project.name, + "Implementation-Version": project.version, + "Implementation-Vendor": "Datadog", + "Implementation-URL": "https://github.com/datadog/dd-trace-java", + "Main-Class": "datadog.trace.bootstrap.AgentBootstrap", + "Agent-Class": "datadog.trace.bootstrap.AgentBootstrap", + "Premain-Class": "datadog.trace.bootstrap.AgentPreCheck", + "Can-Redefine-Classes": true, + "Can-Retransform-Classes": true, + ) + } +} + +def expectedCommonClassDataPlan = { File unpackedJar -> + byte[] instrumenterIndex + new JarFile(unpackedJar).withCloseable { jar -> + def entry = jar.getJarEntry('inst/instrumenter.index') + if (entry == null) { + throw new GradleException('Unpacked agent jar is missing inst/instrumenter.index') + } + instrumenterIndex = jar.getInputStream(entry).bytes + } + CommonClassDataTransformer.buildPlan( + commonClassDataProfileClasses.get(), + CommonClassDataTransformer.readModuleShards(instrumenterIndex), + 64) +} + +tasks.register('generateCommonClassDataPlan') { + group = LifecycleBasePlugin.BUILD_GROUP + description = 'Regenerate the committed common class-data chunk plan' + + def unpackedJar = unpackedShadowJar.flatMap { it.archiveFile } + inputs.file(commonClassDataManifest) + inputs.file(unpackedJar) + outputs.file(commonClassDataPlan) + + doLast { + String expected = expectedCommonClassDataPlan(unpackedJar.get().asFile) + commonClassDataPlan.setText(expected, 'UTF-8') + logger.lifecycle( + "Updated ${rootProject.relativePath(commonClassDataPlan)} with " + + "${commonClassDataProfileClasses.get().size()} classes") + } +} + +tasks.register('verifyCommonClassDataPlan') { + group = LifecycleBasePlugin.VERIFICATION_GROUP + description = 'Verify the committed common class-data chunk plan is current' + + def unpackedJar = unpackedShadowJar.flatMap { it.archiveFile } + inputs.file(commonClassDataManifest) + inputs.file(commonClassDataPlan) + inputs.file(unpackedJar) + outputs.file(project.layout.buildDirectory.file("tmp/${it.name}/.verified")) + + doLast { + String expected = expectedCommonClassDataPlan(unpackedJar.get().asFile) + String actual = commonClassDataPlan.getText('UTF-8') + if (actual != expected) { + List changes = CommonClassDataTransformer.describePlanChanges( + actual.readLines(), expected.readLines()) + String details = changes.isEmpty() + ? ' ~ class order or plan formatting changed' + : changes.take(20).collect { " ${it}" }.join('\n') + if (changes.size() > 20) { + details += "\n ... and ${changes.size() - 20} more changes" + } + throw new GradleException( + 'Common class-data plan is stale:\n' + details + + '\nRegenerate and review it with:\n' + + ' ./gradlew :dd-java-agent:generateCommonClassDataPlan') + } + + def marker = outputs.files.singleFile + marker.parentFile.mkdirs() + marker.text = 'verified' + } } // temporary config to add slf4j-simple so we get logging while indexing @@ -508,6 +1068,7 @@ tasks.register('verifyAgentJarContents') { def jarProvider = tasks.named('shadowJar', ShadowJar).flatMap { it.archiveFile } inputs.file(jarProvider) inputs.file(agentJarChecksProps) + inputs.file(commonClassDataPlan) inputs.property('productPrefixes', includedProductPrefixes) outputs.file(project.layout.buildDirectory.file("tmp/${it.name}/.verified")) @@ -535,6 +1096,10 @@ tasks.register('verifyAgentJarContents') { // Runtime index, loaded at startup to resolve classdata paths // Generated by :dd-java-agent:generateAgentJarIndex 'dd-java-agent.index', + // Common startup classes, generated by CommonClassDataTransformer + 'dd-java-agent-common.classdata', + 'dd-java-agent-common.shards', + 'dd-java-agent-common/0.classdata', // Premain-Class: Java 6 pre check 'datadog/trace/bootstrap/AgentPreCheck.class', // Agent-Class: main bootstrap entry point @@ -559,12 +1124,27 @@ tasks.register('verifyAgentJarContents') { } // Sanity check on the minimum number of classes; see metadata/agent-jar-checks.properties. - def classCount = entries.keySet().count { it.endsWith('.class') || it.endsWith('.classdata') } + def classCount = entries.keySet().count { + it.endsWith('.class') || (it.endsWith('.classdata') && !it.startsWith('dd-java-agent-common')) + } + classCount += commonClassDataClasses.get().size() def classFloor = Integer.parseInt(props['classes.minimum.guard']) if (classCount < classFloor) { failures.add("Class count ${classCount} is below floor ${classFloor}") } + def packedClassNames = commonClassDataClasses.get().toSet() + def leakedPackedClasses = entries.keySet() + .findAll { it.endsWith('.classdata') && it.contains('/') && !it.startsWith('dd-java-agent-common/') } + .collect { + def prefixEnd = it.indexOf('/') + it.substring(prefixEnd + 1, it.length() - '.classdata'.length()).replace('/', '.') + } + .findAll { packedClassNames.contains(it) } + if (!leakedPackedClasses.empty) { + failures.add("Packed classes still have individual entries: ${leakedPackedClasses.take(5)}") + } + // Each registered product must contribute at least one .classdata entry. // Catches a product wired into the build but producing no classes. def classdataPrefixes = entries.keySet() @@ -607,6 +1187,153 @@ tasks.register('verifyAgentJarContents') { } } +tasks.register('verifyCommonClassDataPackaging') { + group = LifecycleBasePlugin.VERIFICATION_GROUP + description = 'Verify class-data packing changes only the selected class entries' + + def packedJar = tasks.named('shadowJar', ShadowJar).flatMap { it.archiveFile } + def unpackedJar = unpackedShadowJar.flatMap { it.archiveFile } + inputs.files(packedJar, unpackedJar) + inputs.file(commonClassDataPlan) + outputs.file(project.layout.buildDirectory.file("tmp/${it.name}/.verified")) + + doLast { + def readEntries = { File file -> + Map> result = [:] + new JarFile(file).withCloseable { jar -> + jar.entries().each { entry -> result[entry.name] = [entry.size, entry.crc] } + } + result + } + Map> packedEntries = readEntries(packedJar.get().asFile) + Map> unpackedEntries = readEntries(unpackedJar.get().asFile) + Set selectedNames = commonClassDataClasses.get().toSet() + Set selectedEntries = unpackedEntries.keySet().findAll { entry -> + if (!entry.endsWith('.classdata') || !entry.contains('/')) { + return false + } + int prefixEnd = entry.indexOf('/') + String className = entry + .substring(prefixEnd + 1, entry.length() - '.classdata'.length()) + .replace('/', '.') + selectedNames.contains(className) + }.toSet() + + List failures = [] + if (selectedEntries.size() != selectedNames.size()) { + failures.add( + "Manifest has ${selectedNames.size()} classes but matched ${selectedEntries.size()} unpacked entries") + } + def unexpectedlyRemoved = (unpackedEntries.keySet() - packedEntries.keySet() - selectedEntries) + .findAll { !it.endsWith('/') } + if (!unexpectedlyRemoved.empty) { + failures.add("Unexpectedly removed entries: ${unexpectedlyRemoved.take(5)}") + } + def unexpectedlyAdded = (packedEntries.keySet() - unpackedEntries.keySet()).findAll { + it != 'dd-java-agent-common.classdata' && + it != 'dd-java-agent-common.shards' && + it != 'dd-java-agent-common/' && + !(it ==~ /dd-java-agent-common\/\d+\.classdata/) + } + if (!unexpectedlyAdded.empty) { + failures.add("Unexpectedly added entries: ${unexpectedlyAdded.take(5)}") + } + (unpackedEntries.keySet() - selectedEntries) + .findAll { !it.endsWith('/') } + .intersect(packedEntries.keySet()).each { entry -> + if (unpackedEntries[entry] != packedEntries[entry]) { + failures.add("Content changed for unselected entry: ${entry}") + } + } + + new JarFile(packedJar.get().asFile).withCloseable { jar -> + def readBytes = { String entry -> + def jarEntry = jar.getJarEntry(entry) + jarEntry == null ? null : jar.getInputStream(jarEntry).bytes + } + byte[] packedIndex = readBytes('dd-java-agent-common.classdata') + byte[] shardIndex = readBytes('dd-java-agent-common.shards') + byte[] instrumenterIndex = readBytes('inst/instrumenter.index') + if (packedIndex == null || shardIndex == null || instrumenterIndex == null) { + failures.add('Missing packed, shard, or instrumenter index') + } else { + def readInt = { byte[] bytes, int offset -> + ((bytes[offset] & 0xFF) << 24) | + ((bytes[offset + 1] & 0xFF) << 16) | + ((bytes[offset + 2] & 0xFF) << 8) | + (bytes[offset + 3] & 0xFF) + } + Map chunkShards = [:] + new String(shardIndex, StandardCharsets.ISO_8859_1).readLines().each { line -> + if (!line.isEmpty() && line != 'version=1') { + int separator = line.indexOf('=') + if (separator <= 0) { + failures.add("Malformed class-data shard record: ${line}") + } else { + chunkShards[Integer.parseInt(line.substring(0, separator))] = + line.substring(separator + 1) + } + } + } + + Map classChunks = [:] + if (packedIndex.length < 20 || readInt(packedIndex, 0) != 0x44444344) { + failures.add('Invalid common class-data index header') + } else { + int classCount = readInt(packedIndex, 8) + int chunkCount = readInt(packedIndex, 12) + int tableSize = readInt(packedIndex, 16) + for (int slot = 0; slot < tableSize; slot++) { + int record = 20 + slot * 24 + int nameOffset = readInt(packedIndex, record + 4) + int nameLength = readInt(packedIndex, record + 8) + if (nameLength > 0) { + StringBuilder name = new StringBuilder(nameLength) + for (int character = 0; character < nameLength; character++) { + int offset = nameOffset + character * 2 + name.append((char) (((packedIndex[offset] & 0xFF) << 8) | + (packedIndex[offset + 1] & 0xFF))) + } + classChunks[name.toString()] = readInt(packedIndex, record + 12) + } + } + if (classChunks.size() != classCount) { + failures.add( + "Packed index declares ${classCount} classes but decoded ${classChunks.size()}") + } + if (chunkShards.keySet() != (0.. moduleShards = + CommonClassDataTransformer.readModuleShards(instrumenterIndex) + selectedNames.each { className -> + Integer chunk = classChunks[className] + String expectedShard = moduleShards.get(className) ?: + CommonClassDataTransformer.semanticShard(className) + if (chunk == null) { + failures.add("No packed record for ${className}") + } else if (chunkShards[chunk] != expectedShard) { + failures.add( + "${className} is in ${chunkShards[chunk]}, expected ${expectedShard}") + } + } + } + } + if (!failures.empty) { + throw new GradleException( + "Common class-data packaging verification failed (${failures.size()} issue(s)):\n" + + failures.take(20).collect { " - ${it}" }.join('\n')) + } + + def marker = outputs.files.singleFile + marker.parentFile.mkdirs() + marker.text = 'verified' + } +} + tasks.register('verifyAgentJarIntegrations', JavaExec) { group = LifecycleBasePlugin.VERIFICATION_GROUP description = 'Verify the agent jar lists exactly the integrations in metadata/agent-jar-checks.properties' @@ -699,5 +1426,5 @@ tasks.register('updateAgentJarIntegrationsGoldenFile', JavaExec) { } tasks.named('check') { - dependsOn 'verifyAgentJarContents', 'verifyAgentJarIntegrations' + dependsOn 'verifyAgentJarContents', 'verifyAgentJarIntegrations', 'verifyCommonClassDataPackaging' } diff --git a/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java b/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java index 0114503447c..fa4c9e17087 100644 --- a/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java +++ b/dd-java-agent/src/main/java/datadog/trace/bootstrap/AgentBootstrap.java @@ -160,15 +160,45 @@ private static void agentmainImpl( throw new IllegalStateException("DD Java Agent NOT added to bootstrap classpath."); } try { - final Method startMethod = - agentClass.getMethod( - "start", Object.class, Instrumentation.class, URL.class, String.class); - startMethod.invoke(null, initTelemetry, inst, agentJarURL, agentArgs); + invokeStartAndRelease( + agentClass, agentClassName, initTelemetry, inst, agentJarURL, agentArgs); } catch (Throwable e) { throw new IllegalStateException("Unable to start DD Java Agent.", e); } } + static void invokeStartAndRelease( + final Class agentClass, + final String agentClassName, + final Object initTelemetry, + final Instrumentation inst, + final URL agentJarURL, + final String agentArgs) + throws Throwable { + final Method startMethod = + agentClass.getMethod("start", Object.class, Instrumentation.class, URL.class, String.class); + Throwable startFailure = null; + try { + startMethod.invoke(null, initTelemetry, inst, agentJarURL, agentArgs); + } catch (Throwable failure) { + startFailure = failure; + } + + if ("datadog.trace.bootstrap.Agent".equals(agentClassName)) { + try { + agentClass.getMethod("releaseClassData").invoke(null); + } catch (Throwable releaseFailure) { + if (startFailure == null) { + throw releaseFailure; + } + startFailure.addSuppressed(releaseFailure); + } + } + if (startFailure != null) { + throw startFailure; + } + } + static boolean getConfig(String configName) { switch (configName) { case LIB_INJECTION_ENABLED_ENV_VAR: diff --git a/dd-java-agent/src/test/java/datadog/trace/bootstrap/AgentBootstrapStartTest.java b/dd-java-agent/src/test/java/datadog/trace/bootstrap/AgentBootstrapStartTest.java new file mode 100644 index 00000000000..9da11c74e93 --- /dev/null +++ b/dd-java-agent/src/test/java/datadog/trace/bootstrap/AgentBootstrapStartTest.java @@ -0,0 +1,39 @@ +package datadog.trace.bootstrap; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.junit.jupiter.api.Assertions.assertThrows; + +import java.lang.instrument.Instrumentation; +import java.net.URL; +import org.junit.jupiter.api.Test; + +class AgentBootstrapStartTest { + private static final RuntimeException START_FAILURE = new RuntimeException("start failed"); + private static final RuntimeException RELEASE_FAILURE = new RuntimeException("release failed"); + + @Test + void preservesStartFailureWhenReleaseAlsoFails() { + Throwable failure = + assertThrows( + Throwable.class, + () -> + AgentBootstrap.invokeStartAndRelease( + FailingAgent.class, "datadog.trace.bootstrap.Agent", null, null, null, null)); + + assertSame(START_FAILURE, failure.getCause()); + assertEquals(1, failure.getSuppressed().length); + assertSame(RELEASE_FAILURE, failure.getSuppressed()[0].getCause()); + } + + public static final class FailingAgent { + public static void start( + Object telemetry, Instrumentation instrumentation, URL agentJar, String agentArgs) { + throw START_FAILURE; + } + + public static void releaseClassData() { + throw RELEASE_FAILURE; + } + } +} diff --git a/metadata/common-classdata-plan.txt b/metadata/common-classdata-plan.txt new file mode 100644 index 00000000000..e75cfce673a --- /dev/null +++ b/metadata/common-classdata-plan.txt @@ -0,0 +1,2572 @@ +# common-classdata-plan-v1 +# Generated from metadata/common-classdata.txt; do not edit by hand. +# Columns: global chunk, semantic/product shard, binary class name. +0 common-bytebuddy net.bytebuddy.matcher.ElementMatcher +0 common-bytebuddy net.bytebuddy.matcher.LatentMatcher +0 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler +0 common-bytebuddy net.bytebuddy.dynamic.VisibilityBridgeStrategy +0 common-bytebuddy net.bytebuddy.dynamic.scaffold.InstrumentedType$Factory +0 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder +0 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy +0 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy +0 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Listener +0 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher +0 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener +0 common-bytebuddy net.bytebuddy.description.NamedElement +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$OfByteCodeElement +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$OfAbstraction +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$OfEnumeration +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$ForTypeDefinition +0 common-bytebuddy net.bytebuddy.description.type.TypeDefinition +0 common-bytebuddy net.bytebuddy.description.NamedElement$WithRuntimeName +0 common-bytebuddy net.bytebuddy.description.NamedElement$WithDescriptor +0 common-bytebuddy net.bytebuddy.description.DeclaredByType +0 common-bytebuddy net.bytebuddy.description.annotation.AnnotationSource +0 common-bytebuddy net.bytebuddy.description.ByteCodeElement +0 common-bytebuddy net.bytebuddy.description.TypeVariableSource +0 common-bytebuddy net.bytebuddy.description.type.TypeDescription +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$ForFieldDescription +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$ForMethodDescription +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$OfMandatable +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$ForParameterDescription +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$ForModuleDescription +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$ForModuleRequirement +0 common-bytebuddy net.bytebuddy.description.ModifierReviewable$AbstractBase +0 common-bytebuddy net.bytebuddy.description.TypeVariableSource$AbstractBase +0 common-bytebuddy net.bytebuddy.description.type.TypeDescription$AbstractBase +0 common-bytebuddy net.bytebuddy.matcher.FilterableList +0 common-bytebuddy net.bytebuddy.description.type.TypeList$Generic +0 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic +0 common-bytebuddy net.bytebuddy.description.DeclaredByType$WithMandatoryDeclaration +0 common-bytebuddy net.bytebuddy.description.NamedElement$WithGenericName +0 common-bytebuddy net.bytebuddy.description.ByteCodeElement$Member +0 common-bytebuddy net.bytebuddy.description.ByteCodeElement$TypeDependant +0 common-bytebuddy net.bytebuddy.description.method.MethodDescription +0 common-bytebuddy net.bytebuddy.description.annotation.AnnotationList +0 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$Visitor +0 common-bytebuddy net.bytebuddy.utility.privilege.GetSystemPropertyAction +0 common-bytebuddy net.bytebuddy.dynamic.NexusAccessor +0 common-bytebuddy net.bytebuddy.dynamic.NexusAccessor$Dispatcher$CreationAction +0 common-bytebuddy net.bytebuddy.dynamic.NexusAccessor$Dispatcher +0 common-bytebuddy net.bytebuddy.dynamic.NexusAccessor$Dispatcher$Unavailable +0 common-bytebuddy net.bytebuddy.pool.TypePool +0 common-bytebuddy net.bytebuddy.pool.TypePool$Resolution +0 common-bytebuddy net.bytebuddy.description.type.TypeDescription$ForLoadedType +0 common-bytebuddy net.bytebuddy.description.type.TypeList +0 common-bytebuddy net.bytebuddy.matcher.FilterableList$Empty +0 common-bytebuddy net.bytebuddy.description.type.TypeList$Empty +0 common-bytebuddy net.bytebuddy.matcher.FilterableList$AbstractBase +0 common-bytebuddy net.bytebuddy.description.type.TypeList$AbstractBase +0 common-bytebuddy net.bytebuddy.description.type.TypeList$ForLoadedTypes +0 common-bytebuddy net.bytebuddy.description.type.PackageDescription +0 common-bytebuddy net.bytebuddy.description.method.MethodDescription$InDefinedShape +0 common-bytebuddy net.bytebuddy.description.field.FieldList +0 common-bytebuddy net.bytebuddy.description.type.RecordComponentList +0 common-bytebuddy net.bytebuddy.description.type.RecordComponentList$Empty +0 common-bytebuddy net.bytebuddy.description.type.RecordComponentList$AbstractBase +1 common-bytebuddy net.bytebuddy.description.type.RecordComponentList$ForLoadedRecordComponents +1 common-bytebuddy net.bytebuddy.description.method.MethodList +1 common-bytebuddy net.bytebuddy.description.type.TypeDescription$ForLoadedType$Dispatcher +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$Dispatcher +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$DynamicClassLoader$Resolver$CreationAction +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$DynamicClassLoader$Resolver +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$DynamicClassLoader$Resolver$ForModuleSystem +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$InvokerCreationAction +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$DynamicClassLoader +1 common-bytebuddy net.bytebuddy.utility.Invoker +1 common-bytebuddy net.bytebuddy.jar.asm.ClassVisitor +1 common-bytebuddy net.bytebuddy.jar.asm.ClassWriter +1 common-bytebuddy net.bytebuddy.jar.asm.AnnotationVisitor +1 common-bytebuddy net.bytebuddy.jar.asm.AnnotationWriter +1 common-bytebuddy net.bytebuddy.jar.asm.ModuleVisitor +1 common-bytebuddy net.bytebuddy.jar.asm.ModuleWriter +1 common-bytebuddy net.bytebuddy.jar.asm.RecordComponentVisitor +1 common-bytebuddy net.bytebuddy.jar.asm.RecordComponentWriter +1 common-bytebuddy net.bytebuddy.jar.asm.FieldVisitor +1 common-bytebuddy net.bytebuddy.jar.asm.FieldWriter +1 common-bytebuddy net.bytebuddy.jar.asm.MethodVisitor +1 common-bytebuddy net.bytebuddy.jar.asm.MethodWriter +1 common-bytebuddy net.bytebuddy.jar.asm.ClassTooLargeException +1 common-bytebuddy net.bytebuddy.jar.asm.SymbolTable +1 common-bytebuddy net.bytebuddy.jar.asm.Symbol +1 common-bytebuddy net.bytebuddy.jar.asm.SymbolTable$Entry +1 common-bytebuddy net.bytebuddy.jar.asm.ByteVector +1 common-bytebuddy net.bytebuddy.ClassFileVersion +1 common-bytebuddy net.bytebuddy.ClassFileVersion$VersionLocator$Resolver +1 common-bytebuddy net.bytebuddy.ClassFileVersion$VersionLocator +1 common-bytebuddy net.bytebuddy.ClassFileVersion$VersionLocator$Resolved +1 common-bytebuddy net.bytebuddy.jar.asm.Type +1 common-bytebuddy net.bytebuddy.utility.GraalImageCode +1 common-bytebuddy net.bytebuddy.utility.MethodComparator +1 common-bytebuddy net.bytebuddy.jar.asm.MethodTooLargeException +1 common-bytebuddy net.bytebuddy.jar.asm.Frame +1 common-bytebuddy net.bytebuddy.jar.asm.CurrentFrame +1 common-bytebuddy net.bytebuddy.jar.asm.Handler +1 common-bytebuddy net.bytebuddy.jar.asm.Attribute +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$Proxied +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$Defaults +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$Instance +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$Container +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$IsStatic +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$IsConstructor +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$Dispatcher$ForNonStaticMethod +1 common-bytebuddy net.bytebuddy.utility.nullability.MaybeNull +1 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$ProxiedInvocationHandler +1 common-bytebuddy net.bytebuddy.dynamic.TargetType +1 common-bytebuddy net.bytebuddy.description.field.FieldDescription +1 common-bytebuddy net.bytebuddy.description.field.FieldDescription$InDefinedShape +1 common-bytebuddy net.bytebuddy.pool.TypePool$AbstractBase +1 common-bytebuddy net.bytebuddy.pool.TypePool$AbstractBase$Hierarchical +1 common-bytebuddy net.bytebuddy.pool.TypePool$Default +1 common-bytebuddy net.bytebuddy.pool.TypePool$Default$TypeExtractor +1 common-bytebuddy net.bytebuddy.utility.AsmClassReader$Factory +1 common-bytebuddy net.bytebuddy.pool.TypePool$CacheProvider +1 common-bytebuddy net.bytebuddy.dynamic.ClassFileLocator +1 common-bytebuddy net.bytebuddy.pool.TypePool$CacheProvider$NoOp +1 common-bytebuddy net.bytebuddy.dynamic.ClassFileLocator$NoOp +1 common-bytebuddy net.bytebuddy.dynamic.ClassFileLocator$Resolution +1 common-bytebuddy net.bytebuddy.pool.TypePool$Default$ReaderMode +1 common-bytebuddy net.bytebuddy.pool.TypePool$Empty +2 common-bytebuddy net.bytebuddy.utility.AsmClassReader$Factory$Default +2 common-bytebuddy net.bytebuddy.utility.AsmClassReader$Factory$Default$1 +2 common-bytebuddy net.bytebuddy.utility.AsmClassReader$Factory$Default$2 +2 common-bytebuddy net.bytebuddy.utility.AsmClassReader$Factory$Default$3 +2 common-bytebuddy net.bytebuddy.utility.AsmClassReader$Factory$Default$4 +2 common-bytebuddy net.bytebuddy.utility.AsmClassReader$Factory$Default$5 +2 common-bytebuddy net.bytebuddy.utility.AsmClassReader +2 common-bytebuddy net.bytebuddy.description.type.TypeDescription$AbstractBase$OfSimpleType +2 common-bytebuddy net.bytebuddy.description.type.TypeDescription$AbstractBase$OfSimpleType$WithDelegation +2 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$AbstractBase +2 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$OfNonGenericType +2 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$OfNonGenericType$ForLoadedType +2 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$AnnotationReader +2 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$AnnotationReader$NoOp +2 common-bytebuddy net.bytebuddy.description.type.TypeList$Generic$Empty +2 common-bytebuddy net.bytebuddy.description.ByteCodeElement$Token +2 common-bytebuddy net.bytebuddy.description.annotation.AnnotationList$Empty +2 common-bytebuddy net.bytebuddy.description.annotation.AnnotationDescription +2 common-bytebuddy net.bytebuddy.description.field.FieldList$Empty +2 common-bytebuddy net.bytebuddy.description.method.MethodList$Empty +2 common-bytebuddy net.bytebuddy.description.method.MethodDescription$AbstractBase +2 common-bytebuddy net.bytebuddy.description.method.MethodDescription$InDefinedShape$AbstractBase +2 common-bytebuddy net.bytebuddy.description.method.ParameterList +2 common-bytebuddy net.bytebuddy.description.method.ParameterList$Empty +2 common-bytebuddy net.bytebuddy.matcher.ElementMatcher$Junction +2 common-bytebuddy net.bytebuddy.matcher.ElementMatchers +2 common-bytebuddy net.bytebuddy.matcher.ElementMatcher$Junction$AbstractBase +2 common-bytebuddy net.bytebuddy.matcher.BooleanMatcher +2 common-bytebuddy net.bytebuddy.matcher.ElementMatcher$Junction$ForNonNullValues +2 common-bytebuddy net.bytebuddy.matcher.ModifierMatcher$Mode +2 common-bytebuddy net.bytebuddy.matcher.ModifierMatcher +2 common-bytebuddy net.bytebuddy.matcher.NegatingMatcher +2 common-bytebuddy net.bytebuddy.ByteBuddy +2 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder +2 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy +2 common-bytebuddy net.bytebuddy.utility.AsmClassWriter$Factory +2 common-bytebuddy net.bytebuddy.dynamic.scaffold.InstrumentedType$Prepareable +2 common-bytebuddy net.bytebuddy.implementation.Implementation +2 common-bytebuddy net.bytebuddy.NamingStrategy +2 common-bytebuddy net.bytebuddy.implementation.auxiliary.AuxiliaryType$NamingStrategy +2 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$Factory +2 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationValueFilter$Factory +2 common-bytebuddy net.bytebuddy.NamingStrategy$Suffixing$BaseNameResolver +2 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeValidation +2 common-bytebuddy net.bytebuddy.NamingStrategy$AbstractBase +2 common-bytebuddy net.bytebuddy.NamingStrategy$Suffixing +2 common-bytebuddy net.bytebuddy.NamingStrategy$SuffixingRandom +2 common-bytebuddy net.bytebuddy.NamingStrategy$Suffixing$BaseNameResolver$ForUnnamedType +2 common-bytebuddy net.bytebuddy.utility.RandomString +2 common-bytebuddy net.bytebuddy.implementation.auxiliary.AuxiliaryType$NamingStrategy$SuffixingRandom +2 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationValueFilter +2 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationValueFilter$Default +2 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationValueFilter$Default$1 +2 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationValueFilter$Default$2 +2 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationRetention +2 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$Default$Factory +2 common-bytebuddy net.bytebuddy.implementation.MethodAccessorFactory +2 common-bytebuddy net.bytebuddy.implementation.Implementation$Context +2 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$ExtractableView +2 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$AbstractBase +2 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default +2 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Merger +2 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Harmonizer +2 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph +3 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Linked +3 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Harmonizer$ForJavaMethod +3 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Merger$Directional +3 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Reifying +3 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Reifying$1 +3 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Reifying$2 +3 common-bytebuddy net.bytebuddy.dynamic.scaffold.InstrumentedType$Factory$Default +3 common-bytebuddy net.bytebuddy.implementation.LoadedTypeInitializer +3 common-bytebuddy net.bytebuddy.implementation.bytecode.ByteCodeAppender +3 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeInitializer +3 common-bytebuddy net.bytebuddy.dynamic.scaffold.InstrumentedType +3 common-bytebuddy net.bytebuddy.dynamic.scaffold.InstrumentedType$WithFlexibleName +3 common-bytebuddy net.bytebuddy.dynamic.scaffold.InstrumentedType$Factory$Default$1 +3 common-bytebuddy net.bytebuddy.dynamic.scaffold.InstrumentedType$Factory$Default$2 +3 common-bytebuddy net.bytebuddy.dynamic.VisibilityBridgeStrategy$Default +3 common-bytebuddy net.bytebuddy.dynamic.VisibilityBridgeStrategy$Default$1 +3 common-bytebuddy net.bytebuddy.dynamic.VisibilityBridgeStrategy$Default$2 +3 common-bytebuddy net.bytebuddy.dynamic.VisibilityBridgeStrategy$Default$3 +3 common-bytebuddy net.bytebuddy.utility.AsmClassWriter$Factory$Default +3 common-bytebuddy net.bytebuddy.utility.AsmClassWriter$Factory$Default$1 +3 common-bytebuddy net.bytebuddy.utility.AsmClassWriter$Factory$Default$2 +3 common-bytebuddy net.bytebuddy.utility.AsmClassWriter$Factory$Default$3 +3 common-bytebuddy net.bytebuddy.utility.AsmClassWriter$Factory$Default$4 +3 common-bytebuddy net.bytebuddy.utility.AsmClassWriter$Factory$Default$5 +3 common-bytebuddy net.bytebuddy.utility.AsmClassWriter$FrameComputingClassWriter +3 common-bytebuddy net.bytebuddy.utility.AsmClassWriter +3 common-bytebuddy net.bytebuddy.matcher.LatentMatcher$Resolved +3 common-bytebuddy net.bytebuddy.matcher.NameMatcher +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher$Mode +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher$Mode$1 +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher$Mode$2 +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher$Mode$3 +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher$Mode$4 +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher$Mode$5 +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher$Mode$6 +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher$Mode$7 +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher$Mode$8 +3 common-bytebuddy net.bytebuddy.matcher.StringMatcher$Mode$9 +3 common-bytebuddy net.bytebuddy.matcher.MethodParametersMatcher +3 common-bytebuddy net.bytebuddy.matcher.CollectionSizeMatcher +3 common-bytebuddy net.bytebuddy.matcher.ElementMatcher$Junction$Conjunction +3 common-bytebuddy net.bytebuddy.matcher.EqualityMatcher +3 common-bytebuddy net.bytebuddy.matcher.ErasureMatcher +3 common-bytebuddy net.bytebuddy.matcher.MethodReturnTypeMatcher +3 common-bytebuddy net.bytebuddy.matcher.DeclaringTypeMatcher +3 common-bytebuddy net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction +3 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$ForDeclaredMethods +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$PatchMode$Handler +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionEnforcer +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$InstallationListener +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$InitializationStrategy +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$NativeMethodStrategy +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$ClassFileBufferStrategy +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$InjectionStrategy +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionStrategy +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$TransformerDecorator +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$WarmupStrategy +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy +3 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$CircularityLock +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Matchable +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Identified +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Identified$Narrowable +4 common-bytebuddy net.bytebuddy.build.EntryPoint +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Transformer +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable$WithImplicitDiscoveryStrategy +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable$WithoutBatchStrategy +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Ignored +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$Dispatcher +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$CircularityLock$WithInnerClassLoadingLock +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$CircularityLock$Default +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$CircularityLock$WithInnerClassLoadingLock$TrivialLock +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Listener$NoOp +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy$Default +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy$Default +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy$Default$1 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy$Default$2 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy$Default$3 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy$Default$4 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy$ForClassLoader +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy$ForClassLoader$1 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy$ForClassLoader$2 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$NativeMethodStrategy$Disabled +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$WarmupStrategy$NoOp +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$TransformerDecorator$NoOp +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$InitializationStrategy$SelfInjection +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$InitializationStrategy$SelfInjection$Split +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$InitializationStrategy$Dispatcher +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$1 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$2 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$3 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector$ForRedefinition +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector$ForRetransformation +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy$SinglePass +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator$ForTotal +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener$NoOp +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionStrategy$Disabled +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$InjectionStrategy$UsingReflection +4 common-bytebuddy net.bytebuddy.dynamic.loading.ClassInjector +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy$1 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy$2 +4 common-bytebuddy net.bytebuddy.dynamic.loading.ClassLoadingStrategy +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy$Default +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy$Default$1 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy$Default$2 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy$Default$3 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy$ByThrowableType +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$ClassFileBufferStrategy$Default +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$ClassFileBufferStrategy$Default$1 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$ClassFileBufferStrategy$Default$2 +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$InstallationListener$NoOp +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher$Disjunction +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher$ForElementMatchers +4 common-bytebuddy net.bytebuddy.matcher.NullMatcher +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher$Trivial +4 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$Disabled$Factory +4 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$InitializationStrategy$NoOp +4 common-bytebuddy net.bytebuddy.description.NamedElement$WithOptionalName +5 common-bytebuddy net.bytebuddy.utility.JavaModule +5 common-bytebuddy net.bytebuddy.utility.JavaModule$Resolver +5 common-bytebuddy net.bytebuddy.utility.JavaModule$Module +5 common-bytebuddy net.bytebuddy.utility.dispatcher.JavaDispatcher$Dispatcher$ForInstanceCheck +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Listener$Adapter +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Listener$ModuleReadEdgeCompleting +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Listener$Compound +5 common-bytebuddy net.bytebuddy.agent.builder.ResettableClassFileTransformer +5 common-bytebuddy net.bytebuddy.agent.builder.ResettableClassFileTransformer$AbstractBase +5 common-bytebuddy net.bytebuddy.agent.builder.ResettableClassFileTransformer$WithDelegation +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$TransformerDecorator$Compound +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$Redefining +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable$ResubmissionImmediateMatcher +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable$ResubmissionOnErrorMatcher +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable$WithoutResubmissionSpecification +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener$Compound +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$Delegator +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$Delegator$Matchable +5 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$Ignoring +5 common-bytebuddy net.bytebuddy.asm.AsmVisitorWrapper +5 common-bytebuddy net.bytebuddy.jar.asm.commons.Remapper +5 common-bytebuddy net.bytebuddy.jar.asm.commons.ClassRemapper +5 common-bytebuddy net.bytebuddy.dynamic.ClassFileLocator$ForClassLoader +5 common-bytebuddy net.bytebuddy.dynamic.ClassFileLocator$ForClassLoader$BootLoaderProxyCreationAction +5 common-bytebuddy net.bytebuddy.matcher.MethodSortMatcher$Sort +5 common-bytebuddy net.bytebuddy.matcher.MethodSortMatcher$Sort$1 +5 common-bytebuddy net.bytebuddy.matcher.MethodSortMatcher$Sort$2 +5 common-bytebuddy net.bytebuddy.matcher.MethodSortMatcher$Sort$3 +5 common-bytebuddy net.bytebuddy.matcher.MethodSortMatcher$Sort$4 +5 common-bytebuddy net.bytebuddy.matcher.MethodSortMatcher$Sort$5 +5 common-bytebuddy net.bytebuddy.matcher.MethodSortMatcher +5 common-bytebuddy net.bytebuddy.matcher.CollectionElementMatcher +5 common-bytebuddy net.bytebuddy.matcher.MethodParameterTypesMatcher +5 common-bytebuddy net.bytebuddy.asm.AsmVisitorWrapper$ForDeclaredMethods$MethodVisitorWrapper +5 common-bytebuddy net.bytebuddy.asm.Advice +5 common-bytebuddy net.bytebuddy.utility.visitor.ExceptionTableSensitiveMethodVisitor +5 common-bytebuddy net.bytebuddy.utility.visitor.LineNumberPrependingMethodVisitor +5 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler$Relocation +5 common-bytebuddy net.bytebuddy.asm.Advice$AdviceVisitor +5 common-bytebuddy net.bytebuddy.asm.Advice$AdviceVisitor$WithoutExitAdvice +5 common-bytebuddy net.bytebuddy.asm.Advice$AdviceVisitor$WithExitAdvice +5 common-bytebuddy net.bytebuddy.asm.Advice$AdviceVisitor$WithExitAdvice$WithoutExceptionHandling +5 common-bytebuddy net.bytebuddy.asm.Advice$AdviceVisitor$WithExitAdvice$WithExceptionHandling +5 common-bytebuddy net.bytebuddy.asm.Advice$ExceptionHandler +5 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher +5 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Unresolved +5 common-bytebuddy net.bytebuddy.asm.Advice$Delegator$Factory +5 common-bytebuddy net.bytebuddy.asm.Advice$PostProcessor$Factory +5 common-bytebuddy net.bytebuddy.asm.Advice$OnMethodEnter +5 common-bytebuddy net.bytebuddy.description.method.MethodList$AbstractBase +5 common-bytebuddy net.bytebuddy.description.method.MethodList$ForLoadedMethods +5 common-bytebuddy net.bytebuddy.description.method.MethodDescription$InDefinedShape$AbstractBase$ForLoadedExecutable +5 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$ForLoadedParameter$ParameterAnnotationSource +5 common-bytebuddy net.bytebuddy.description.method.MethodDescription$ForLoadedConstructor +5 common-bytebuddy net.bytebuddy.description.method.MethodDescription$ForLoadedMethod +5 common-bytebuddy net.bytebuddy.utility.ConstructorComparator +5 common-bytebuddy net.bytebuddy.description.method.MethodDescription$InDefinedShape$AbstractBase$Executable +5 common-bytebuddy net.bytebuddy.description.method.MethodList$Explicit +5 common-bytebuddy net.bytebuddy.asm.Advice$OnMethodExit +5 common-bytebuddy net.bytebuddy.asm.Advice$WithCustomMapping +5 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Factory +5 common-bytebuddy net.bytebuddy.asm.Advice$BootstrapArgumentResolver$Factory +5 common-bytebuddy net.bytebuddy.description.enumeration.EnumerationDescription +5 common-bytebuddy net.bytebuddy.utility.ConstantValue +6 common-bytebuddy net.bytebuddy.asm.Advice$PostProcessor +6 common-bytebuddy net.bytebuddy.asm.Advice$PostProcessor$NoOp +6 common-bytebuddy net.bytebuddy.implementation.bytecode.StackManipulation +6 common-bytebuddy net.bytebuddy.asm.Advice$Delegator$ForRegularInvocation$Factory +6 common-bytebuddy net.bytebuddy.asm.Advice$Delegator +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Transformer$ForAdvice +6 common-bytebuddy net.bytebuddy.asm.Advice$ExceptionHandler$Default +6 common-bytebuddy net.bytebuddy.asm.Advice$ExceptionHandler$Default$1 +6 common-bytebuddy net.bytebuddy.asm.Advice$ExceptionHandler$Default$2 +6 common-bytebuddy net.bytebuddy.asm.Advice$ExceptionHandler$Default$3 +6 common-bytebuddy net.bytebuddy.implementation.bytecode.assign.Assigner +6 common-bytebuddy net.bytebuddy.implementation.bytecode.assign.primitive.VoidAwareAssigner +6 common-bytebuddy net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveTypeAwareAssigner +6 common-bytebuddy net.bytebuddy.implementation.bytecode.assign.reference.ReferenceTypeAwareAssigner +6 common-bytebuddy net.bytebuddy.implementation.bytecode.StackManipulation$Trivial +6 common-bytebuddy net.bytebuddy.implementation.bytecode.StackManipulation$Illegal +6 common-bytebuddy net.bytebuddy.implementation.bytecode.assign.reference.GenericTypeAwareAssigner +6 common-bytebuddy net.bytebuddy.implementation.bytecode.StackManipulation$Size +6 common-bytebuddy net.bytebuddy.asm.Advice$ExceptionHandler$Simple +6 common-bytebuddy net.bytebuddy.implementation.bytecode.StackManipulation$Compound +6 common-bytebuddy net.bytebuddy.implementation.bytecode.StackManipulation$AbstractBase +6 common-bytebuddy net.bytebuddy.implementation.bytecode.constant.TextConstant +6 common-bytebuddy net.bytebuddy.dynamic.ClassFileLocator$Compound +6 common-bytebuddy net.bytebuddy.utility.CompoundList +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Transformer$ForAdvice$Entry +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Transformer$ForAdvice$Entry$ForUnifiedAdvice +6 common-bytebuddy net.bytebuddy.matcher.AnnotationTypeMatcher +6 common-bytebuddy net.bytebuddy.matcher.DeclaringAnnotationMatcher +6 common-bytebuddy net.bytebuddy.matcher.CollectionItemMatcher +6 common-bytebuddy net.bytebuddy.matcher.CollectionOneToOneMatcher +6 common-bytebuddy net.bytebuddy.matcher.CollectionErasureMatcher +6 common-bytebuddy net.bytebuddy.description.type.TypeList$Generic$AbstractBase +6 common-bytebuddy net.bytebuddy.description.type.TypeList$Generic$ForLoadedTypes +6 common-bytebuddy net.bytebuddy.description.type.TypeDefinition$Sort +6 common-bytebuddy net.bytebuddy.description.type.TypeDefinition$Sort$AnnotatedType +6 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$LazyProxy +6 common-bytebuddy net.bytebuddy.implementation.bytecode.StackSize +6 common-bytebuddy net.bytebuddy.description.modifier.ModifierContributor +6 common-bytebuddy net.bytebuddy.description.modifier.ModifierContributor$ForType +6 common-bytebuddy net.bytebuddy.description.modifier.TypeManifestation +6 common-bytebuddy net.bytebuddy.description.modifier.ModifierContributor$ForField +6 common-bytebuddy net.bytebuddy.description.modifier.ModifierContributor$ForMethod +6 common-bytebuddy net.bytebuddy.description.modifier.Ownership +6 common-bytebuddy net.bytebuddy.description.modifier.Visibility +6 common-bytebuddy net.bytebuddy.description.modifier.ModifierContributor$ForModule +6 common-bytebuddy net.bytebuddy.description.modifier.ModifierContributor$ForModule$OfRequire +6 common-bytebuddy net.bytebuddy.description.modifier.ModifierContributor$ForModule$OfExport +6 common-bytebuddy net.bytebuddy.description.modifier.ModifierContributor$ForModule$OfOpen +6 common-bytebuddy net.bytebuddy.description.modifier.ModifierContributor$ForParameter +6 common-bytebuddy net.bytebuddy.description.modifier.SyntheticState +6 common-bytebuddy net.bytebuddy.description.modifier.EnumerationState +6 common-bytebuddy net.bytebuddy.matcher.SuperTypeMatcher +6 common-bytebuddy net.bytebuddy.matcher.MethodExceptionTypeMatcher +6 common-bytebuddy net.bytebuddy.matcher.FieldTypeMatcher +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Identified$Extendable +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$Transforming +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher$Conjunction +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$Transformation +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$Transformation$SimpleMatcher +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$PatchMode$Handler$NoOp +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionStrategy$Installation +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionEnforcer$Disabled +6 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer +6 common-bytebuddy net.bytebuddy.dynamic.TypeResolutionStrategy +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType +7 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Factory$CreationAction +7 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Factory +7 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Factory$ForJava9CapableVm +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default +7 common-bytebuddy net.bytebuddy.implementation.attribute.MethodAttributeAppender$Factory +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default$1 +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default$2 +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default$3 +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default$4 +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default$5 +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Handler +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$UsingTypeWriter +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Adapter +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.SubclassDynamicTypeBuilder +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$TypeVariableDefinition +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ExceptionDefinition +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$TypeVariableDefinition +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$RecordComponentDefinition +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$RecordComponentDefinition$Optional +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Simple +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$ModuleDefinition +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Delegator +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition$ForType +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Adapter$InnerTypeDefinitionForTypeAdapter +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Adapter$InnerTypeDefinitionForMethodAdapter +7 common-bytebuddy net.bytebuddy.description.module.ModuleDescription +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Valuable +7 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable +7 common-bytebuddy net.bytebuddy.implementation.attribute.TypeAttributeAppender +7 common-bytebuddy net.bytebuddy.implementation.Implementation$Target$Factory +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$RecordComponentPool +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$FieldPool +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.RecordComponentRegistry +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.FieldRegistry +7 common-bytebuddy net.bytebuddy.description.modifier.ModifierContributor$Resolver +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.InstrumentedType$Default +7 common-bytebuddy net.bytebuddy.description.type.TypeList$Explicit +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeInitializer$None +7 common-bytebuddy net.bytebuddy.implementation.LoadedTypeInitializer$NoOp +7 common-bytebuddy net.bytebuddy.description.type.TypeDescription$LazyProxy +7 common-bytebuddy net.bytebuddy.description.TypeVariableSource$Visitor +7 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Substitutor +7 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Substitutor$ForDetachment +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.FieldRegistry$Default +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.FieldRegistry$Compiled +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Default +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Prepared +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.RecordComponentRegistry$Default +7 common-bytebuddy net.bytebuddy.dynamic.scaffold.RecordComponentRegistry$Compiled +7 common-bytebuddy net.bytebuddy.implementation.attribute.TypeAttributeAppender$ForInstrumentedType +7 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationAppender$Target +7 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationAppender +7 common-bytebuddy net.bytebuddy.asm.AsmVisitorWrapper$NoOp +7 common-bytebuddy net.bytebuddy.utility.JavaType +8 common-bytebuddy net.bytebuddy.description.type.TypeList$Generic$Explicit +8 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Latent +8 common-bytebuddy net.bytebuddy.utility.JavaType$LatentTypeWithSimpleName +8 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition$AbstractBase +8 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Adapter$MethodMatchAdapter +8 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition +8 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ReceiverTypeDefinition +8 common-bytebuddy net.bytebuddy.implementation.Implementation$Composable +8 common-bytebuddy net.bytebuddy.implementation.MethodCall +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$MethodLocator$Factory +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$TerminationHandler$Factory +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$MethodInvoker$Factory +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$TargetHandler$Factory +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$ArgumentLoader$Factory +8 common-bytebuddy net.bytebuddy.dynamic.scaffold.FieldLocator$Factory +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$MethodLocator +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$MethodLocator$ForExplicitMethod +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$WithoutSpecifiedTarget +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$TargetHandler$ForField$Location +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$TargetHandler$ForSelfOrStaticInvocation$Factory +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$TargetHandler +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$MethodInvoker$ForContextualInvocation$Factory +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$MethodInvoker +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$TerminationHandler +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$TerminationHandler$Simple +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$TerminationHandler$Simple$1 +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$TerminationHandler$Simple$2 +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$TerminationHandler$Simple$3 +8 common-bytebuddy net.bytebuddy.implementation.bytecode.assign.Assigner$Typing +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$MethodInvoker$ForSuperMethodInvocation$Factory +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$ArgumentLoader$ArgumentProvider +8 common-bytebuddy net.bytebuddy.implementation.MethodCall$ArgumentLoader$ForMethodParameter$OfInstrumentedMethod +8 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Handler$ForImplementation +8 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Handler$Compiled +8 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$AbstractBase +8 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ReceiverTypeDefinition$AbstractBase +8 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$AbstractBase$Adapter +8 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Adapter$MethodMatchAdapter$AnnotationAdapter +8 common-bytebuddy net.bytebuddy.dynamic.Transformer +8 common-bytebuddy net.bytebuddy.implementation.attribute.MethodAttributeAppender +8 common-bytebuddy net.bytebuddy.implementation.attribute.MethodAttributeAppender$NoOp +8 common-bytebuddy net.bytebuddy.dynamic.Transformer$NoOp +8 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Default$Entry +8 common-bytebuddy net.bytebuddy.dynamic.TypeResolutionStrategy$Resolved +8 common-bytebuddy net.bytebuddy.dynamic.TypeResolutionStrategy$Passive +8 common-bytebuddy net.bytebuddy.pool.TypePool$ClassLoading +8 common-bytebuddy net.bytebuddy.pool.TypePool$CacheProvider$Simple +8 common-bytebuddy net.bytebuddy.implementation.SuperMethodCall +8 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$LazyProjection +8 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$LazyProjection$WithEagerNavigation +8 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$LazyProjection$WithResolvedErasure +8 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Substitutor$ForAttachment +8 common-bytebuddy net.bytebuddy.description.method.MethodList$TypeSubstituting +8 common-bytebuddy net.bytebuddy.description.method.MethodDescription$InGenericShape +8 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$Visitor$NoOp +8 common-bytebuddy net.bytebuddy.matcher.VisibilityMatcher +8 common-bytebuddy net.bytebuddy.description.method.MethodDescription$TypeSubstituting +8 common-bytebuddy net.bytebuddy.description.method.MethodDescription$Token +8 common-bytebuddy net.bytebuddy.description.type.TypeList$Generic$ForLoadedTypes$OfTypeVariables +8 common-bytebuddy net.bytebuddy.matcher.TypeSortMatcher +8 common-bytebuddy net.bytebuddy.description.ByteCodeElement$Token$TokenList +8 common-bytebuddy net.bytebuddy.description.method.ParameterList$AbstractBase +8 common-bytebuddy net.bytebuddy.description.method.ParameterList$TypeSubstituting +8 common-bytebuddy net.bytebuddy.description.method.ParameterDescription +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$InGenericShape +9 common-bytebuddy net.bytebuddy.description.method.ParameterList$ForLoadedExecutable +9 common-bytebuddy net.bytebuddy.description.method.ParameterList$ForLoadedExecutable$OfMethod +9 common-bytebuddy net.bytebuddy.description.method.ParameterList$ForLoadedExecutable$OfLegacyVmMethod +9 common-bytebuddy net.bytebuddy.description.method.ParameterList$ForLoadedExecutable$OfConstructor +9 common-bytebuddy net.bytebuddy.description.method.ParameterList$ForLoadedExecutable$OfLegacyVmConstructor +9 common-bytebuddy net.bytebuddy.description.method.ParameterList$ForLoadedExecutable$Executable +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$InDefinedShape +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$AbstractBase +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$TypeSubstituting +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$InDefinedShape$AbstractBase +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$ForLoadedParameter +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$ForLoadedParameter$OfConstructor +9 common-bytebuddy net.bytebuddy.description.annotation.AnnotationList$AbstractBase +9 common-bytebuddy net.bytebuddy.description.annotation.AnnotationList$ForLoadedAnnotations +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$ForLoadedParameter$Parameter +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$Token +9 common-bytebuddy net.bytebuddy.utility.AnnotationComparator +9 common-bytebuddy net.bytebuddy.description.type.TypeList$Generic$ForDetachedTypes +9 common-bytebuddy net.bytebuddy.description.type.TypeList$Generic$OfConstructorExceptionTypes +9 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue +9 common-bytebuddy net.bytebuddy.description.annotation.AnnotationList$Explicit +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.SubclassDynamicTypeBuilder$InstrumentableMatcher +9 common-bytebuddy net.bytebuddy.description.method.MethodList$ForTokens +9 common-bytebuddy net.bytebuddy.description.method.MethodDescription$Latent +9 common-bytebuddy net.bytebuddy.description.method.ParameterList$ForTokens +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$Latent +9 common-bytebuddy net.bytebuddy.description.method.ParameterDescription$ForLoadedParameter$OfMethod +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store$Entry +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Harmonized +9 common-bytebuddy net.bytebuddy.description.method.MethodDescription$TypeToken +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Harmonizer$ForJavaMethod$Token +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store$Entry$Initial +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store$Entry$Resolved +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Node +9 common-bytebuddy net.bytebuddy.description.modifier.Visibility$1 +9 common-bytebuddy net.bytebuddy.description.type.TypeList$Generic$ForDetachedTypes$WithResolvedErasure +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Linked$Delegation +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store$Entry$Resolved$Node +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Detached +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store$Graph +9 common-bytebuddy net.bytebuddy.matcher.MethodParameterTypeMatcher +9 common-bytebuddy net.bytebuddy.matcher.FailSafeMatcher +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$NodeList +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Node$Sort +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Default$Prepared$Entry +9 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$OfNonGenericType$ForErasure +9 common-bytebuddy net.bytebuddy.description.method.MethodDescription$Latent$TypeInitializer +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Default$Prepared +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Compiled +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget$Factory +9 common-bytebuddy net.bytebuddy.implementation.Implementation$Target +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget$OriginTypeResolver +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget$OriginTypeResolver$1 +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget$OriginTypeResolver$2 +9 common-bytebuddy net.bytebuddy.implementation.Implementation$Target$AbstractBase +9 common-bytebuddy net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget +9 common-bytebuddy net.bytebuddy.implementation.Implementation$SpecialMethodInvocation +9 common-bytebuddy net.bytebuddy.implementation.Implementation$Target$AbstractBase$DefaultMethodInvocation +9 common-bytebuddy net.bytebuddy.implementation.Implementation$Target$AbstractBase$DefaultMethodInvocation$1 +9 common-bytebuddy net.bytebuddy.implementation.Implementation$Target$AbstractBase$DefaultMethodInvocation$2 +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Handler$ForImplementation$Compiled +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record +10 common-bytebuddy net.bytebuddy.implementation.MethodCall$Appender +10 common-bytebuddy net.bytebuddy.implementation.MethodCall$MethodInvoker$ForSuperMethodInvocation +10 common-bytebuddy net.bytebuddy.implementation.MethodCall$TargetHandler$ForSelfOrStaticInvocation +10 common-bytebuddy net.bytebuddy.implementation.MethodCall$TargetHandler$Resolved +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Default$Compiled$Entry +10 common-bytebuddy net.bytebuddy.implementation.SuperMethodCall$Appender +10 common-bytebuddy net.bytebuddy.implementation.SuperMethodCall$Appender$TerminationHandler +10 common-bytebuddy net.bytebuddy.implementation.SuperMethodCall$Appender$TerminationHandler$1 +10 common-bytebuddy net.bytebuddy.implementation.SuperMethodCall$Appender$TerminationHandler$2 +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodRegistry$Default$Compiled +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.FieldRegistry$Default$Compiled +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$FieldPool$Record +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.RecordComponentRegistry$Default$Compiled +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$RecordComponentPool$Record +10 common-bytebuddy net.bytebuddy.pool.TypePool$Explicit +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.inline.MethodRebaseResolver +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ClassDumpAction$Dispatcher +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForCreation +10 common-bytebuddy net.bytebuddy.utility.visitor.MetadataAwareClassVisitor +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForCreation$CreationClassVisitor +10 common-bytebuddy net.bytebuddy.utility.visitor.ContextClassVisitor +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForCreation$ImplementationContextClassVisitor +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeInitializer$Drain +10 common-bytebuddy net.bytebuddy.description.field.FieldList$AbstractBase +10 common-bytebuddy net.bytebuddy.description.field.FieldList$ForTokens +10 common-bytebuddy net.bytebuddy.description.type.RecordComponentList$ForTokens +10 common-bytebuddy net.bytebuddy.description.type.RecordComponentDescription +10 common-bytebuddy net.bytebuddy.description.type.RecordComponentDescription$InDefinedShape +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ClassDumpAction$Dispatcher$Disabled +10 common-bytebuddy net.bytebuddy.utility.AsmClassWriter$Factory$Default$EmptyAsmClassReader +10 common-bytebuddy net.bytebuddy.jar.asm.ClassReader +10 common-bytebuddy net.bytebuddy.utility.AsmClassWriter$ForAsm +10 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$FrameGeneration +10 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$FrameGeneration$1 +10 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$FrameGeneration$2 +10 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$FrameGeneration$3 +10 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$ExtractableView$AbstractBase +10 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$Default +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$ForDefinedMethod +10 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$Default$DelegationRecord +10 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$Default$AccessorMethodDelegation +10 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$Default$FieldGetterDelegation +10 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$Default$FieldSetterDelegation +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$ValidatingFieldVisitor +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$ValidatingMethodVisitor +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$Constraint +10 common-bytebuddy net.bytebuddy.jar.asm.signature.SignatureVisitor +10 common-bytebuddy net.bytebuddy.jar.asm.signature.SignatureWriter +10 common-bytebuddy net.bytebuddy.description.type.TypeList$Generic$ForDetachedTypes$OfTypeVariables +10 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$Visitor$ForSignatureVisitor +10 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationAppender$Default +10 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationAppender$Target$OnType +10 common-bytebuddy net.bytebuddy.implementation.attribute.AnnotationAppender$ForTypeAnnotations +10 common-bytebuddy net.bytebuddy.jar.asm.TypeReference +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$ForDefinedMethod$WithBody +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$AccessBridgeWrapper +10 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$Sort +10 common-bytebuddy net.bytebuddy.implementation.MethodCall$TargetHandler$ForSelfOrStaticInvocation$Resolved +10 common-bytebuddy net.bytebuddy.implementation.bytecode.Duplication +11 common-bytebuddy net.bytebuddy.implementation.bytecode.ByteCodeAppender$Size +11 common-bytebuddy net.bytebuddy.implementation.MethodCall$ArgumentLoader +11 common-bytebuddy net.bytebuddy.implementation.MethodCall$ArgumentLoader$ForMethodParameter +11 common-bytebuddy net.bytebuddy.implementation.bytecode.member.MethodVariableAccess +11 common-bytebuddy net.bytebuddy.implementation.bytecode.member.MethodVariableAccess$MethodLoading$TypeCastingHandler +11 common-bytebuddy net.bytebuddy.implementation.bytecode.member.MethodVariableAccess$OffsetLoading +11 common-bytebuddy net.bytebuddy.description.method.MethodDescription$SignatureToken +11 common-bytebuddy net.bytebuddy.implementation.Implementation$SpecialMethodInvocation$AbstractBase +11 common-bytebuddy net.bytebuddy.implementation.Implementation$SpecialMethodInvocation$Simple +11 common-bytebuddy net.bytebuddy.implementation.bytecode.member.MethodInvocation +11 common-bytebuddy net.bytebuddy.implementation.bytecode.member.MethodInvocation$WithImplicitInvocationTargetType +11 common-bytebuddy net.bytebuddy.implementation.bytecode.member.MethodInvocation$Invocation +11 common-bytebuddy net.bytebuddy.implementation.bytecode.member.MethodReturn +11 common-bytebuddy net.bytebuddy.matcher.SignatureTokenMatcher +11 common-bytebuddy net.bytebuddy.implementation.bytecode.member.MethodVariableAccess$MethodLoading +11 common-bytebuddy net.bytebuddy.implementation.bytecode.member.MethodVariableAccess$MethodLoading$TypeCastingHandler$NoOp +11 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeInitializer$Drain$Default +11 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$ForNonImplementedMethod +11 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$UnresolvedType +11 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Unloaded +11 common-bytebuddy net.bytebuddy.dynamic.DynamicType$AbstractBase +11 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Default +11 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Default$Unloaded +11 common-bytebuddy net.bytebuddy.dynamic.loading.InjectionClassLoader +11 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Loaded +11 common-bytebuddy net.bytebuddy.dynamic.loading.ClassLoadingStrategy$Configurable +11 common-bytebuddy net.bytebuddy.dynamic.loading.ClassLoadingStrategy$Default +11 common-bytebuddy net.bytebuddy.dynamic.loading.ClassLoadingStrategy$Default$WrappingDispatcher +11 common-bytebuddy net.bytebuddy.dynamic.loading.ClassLoaderDecorator$Factory +11 common-bytebuddy net.bytebuddy.dynamic.loading.PackageDefinitionStrategy +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PersistenceHandler +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PersistenceHandler$1 +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PersistenceHandler$2 +11 common-bytebuddy net.bytebuddy.dynamic.loading.PackageDefinitionStrategy$Trivial +11 common-bytebuddy net.bytebuddy.dynamic.loading.PackageDefinitionStrategy$Definition +11 common-bytebuddy net.bytebuddy.dynamic.loading.ClassLoaderDecorator$Factory$NoOp +11 common-bytebuddy net.bytebuddy.dynamic.loading.ClassLoaderDecorator +11 common-bytebuddy net.bytebuddy.dynamic.loading.ClassLoadingStrategy$Default$InjectionDispatcher +11 common-bytebuddy net.bytebuddy.dynamic.loading.PackageDefinitionStrategy$NoOp +11 common-bytebuddy net.bytebuddy.dynamic.DynamicType$Default$Loaded +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader +11 common-bytebuddy net.bytebuddy.dynamic.loading.ClassFilePostProcessor +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PackageLookupStrategy$CreationAction +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PackageLookupStrategy +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PackageLookupStrategy$ForJava9CapableVm +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$CreationAction +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$Initializable +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm +11 common-bytebuddy net.bytebuddy.dynamic.loading.ClassFilePostProcessor$NoOp +11 common-bytebuddy net.bytebuddy.dynamic.loading.ClassLoaderDecorator$NoOp +11 common-bytebuddy net.bytebuddy.dynamic.loading.ByteArrayClassLoader$ClassDefinitionAction +11 common-bytebuddy net.bytebuddy.dynamic.loading.PackageDefinitionStrategy$Definition$Trivial +11 common-bytebuddy net.bytebuddy.pool.TypePool$Resolution$NoSuchTypeException +11 common-bytebuddy net.bytebuddy.utility.StreamDrainer +11 common-bytebuddy net.bytebuddy.description.field.FieldDescription$AbstractBase +11 common-bytebuddy net.bytebuddy.description.field.FieldDescription$InDefinedShape$AbstractBase +11 common-bytebuddy net.bytebuddy.description.field.FieldList$Explicit +11 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector$PrependableIterator +11 common-bytebuddy net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Java9CapableVmDispatcher +11 common-bytebuddy net.bytebuddy.dynamic.ClassFileLocator$Simple +11 common-bytebuddy net.bytebuddy.dynamic.scaffold.inline.MethodNameTransformer +11 common-bytebuddy net.bytebuddy.dynamic.scaffold.inline.MethodNameTransformer$Suffixing +11 common-bytebuddy net.bytebuddy.dynamic.scaffold.inline.AbstractInliningDynamicTypeBuilder +12 common-bytebuddy net.bytebuddy.dynamic.scaffold.inline.RedefinitionDynamicTypeBuilder +12 common-bytebuddy net.bytebuddy.dynamic.scaffold.InstrumentedType$Frozen +12 common-bytebuddy net.bytebuddy.implementation.attribute.TypeAttributeAppender$ForInstrumentedType$Differentiating +12 common-bytebuddy net.bytebuddy.utility.OpenedClassReader +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$TypeContainment +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$ComponentTypeLocator +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$TypeExtractor$AnnotationExtractor +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$AnnotationRegistrant +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$TypeExtractor$ModuleExtractor +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$TypeExtractor$RecordComponentExtractor +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$TypeExtractor$FieldExtractor +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$TypeExtractor$MethodExtractor +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$TypeContainment$SelfContained +12 common-bytebuddy net.bytebuddy.jar.asm.Context +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$FieldToken +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$ForField +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$ForType +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$ForMethod +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$ForRecordComponent +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$Raw +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$ParameterBag +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$MethodToken +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$MethodToken$ParameterToken +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription +12 common-bytebuddy net.bytebuddy.description.annotation.AnnotationDescription$AbstractBase +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationDescription +12 common-bytebuddy net.bytebuddy.description.annotation.AnnotationDescription$Loadable +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationDescription$UnresolvedAnnotationList +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$Raw$RawAnnotatedType$LazyRawAnnotatedTypeList +12 common-bytebuddy net.bytebuddy.matcher.LatentMatcher$ForSelfDeclaredMethod +12 common-bytebuddy net.bytebuddy.matcher.LatentMatcher$Disjunction +12 common-bytebuddy net.bytebuddy.asm.TypeConstantAdjustment +12 common-bytebuddy net.bytebuddy.asm.TypeConstantAdjustment$TypeConstantDissolvingClassVisitor +12 common-bytebuddy net.bytebuddy.asm.AsmVisitorWrapper$Compound +12 common-bytebuddy net.bytebuddy.pool.TypePool$LazyFacade +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$WithLazyResolution +12 common-bytebuddy net.bytebuddy.pool.TypePool$Resolution$Simple +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$WithLazyResolution$LazinessMode +12 common-bytebuddy net.bytebuddy.asm.AsmVisitorWrapper$ForDeclaredMethods +12 common-bytebuddy net.bytebuddy.asm.AsmVisitorWrapper$ForDeclaredMethods$DispatchingVisitor +12 common-bytebuddy net.bytebuddy.pool.TypePool$LazyFacade$LazyResolution +12 common-bytebuddy net.bytebuddy.pool.TypePool$AbstractBase$ArrayTypeResolution +12 common-bytebuddy net.bytebuddy.pool.TypePool$LazyFacade$LazyTypeDescription +12 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Resolved +12 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Resolved$ForMethodEnter +12 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Resolved$ForMethodExit +12 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Bound +12 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inactive +12 common-bytebuddy net.bytebuddy.pool.TypePool$Resolution$Illegal +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$WithLazyResolution$LazyResolution +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$WithLazyResolution$LazyTypeDescription +12 common-bytebuddy net.bytebuddy.dynamic.ClassFileLocator$Resolution$Illegal +12 common-bytebuddy net.bytebuddy.dynamic.ClassFileLocator$Resolution$Explicit +12 common-bytebuddy net.bytebuddy.utility.AsmClassReader$ForAsm +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$TypeContainment$WithinType +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$ComponentTypeLocator$ForAnnotationProperty +12 common-bytebuddy net.bytebuddy.pool.TypePool$AbstractBase$ComponentTypeReference +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$AnnotationRegistrant$AbstractBase +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$AnnotationRegistrant$ForByteCodeElement +12 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$AbstractBase +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationValue +12 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationValue$ForTypeValue +12 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForTypeDescription +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForMissingType +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$AnnotationToken +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$AnnotationToken$Resolution +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$MethodTokenList +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyMethodDescription +13 common-bytebuddy net.bytebuddy.description.type.TypeDescription$Generic$OfParameterizedType +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyMethodDescription$LazyParameterizedReceiverType +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyMethodDescription$LazyNonGenericReceiverType +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationValue$ForEnumerationValue +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$TypeExtractor$AnnotationExtractor$ArrayLookup +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$ComponentTypeLocator$ForAnnotationProperty$Bound +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$ComponentTypeLocator$Illegal +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationValue$ForArray +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$ComponentTypeLocator$ForArrayType +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$Loaded +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$1 +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$2 +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$3 +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$4 +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$5 +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$6 +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$7 +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$8 +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$9 +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$AnnotationToken$Resolution$Simple +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationDescription$Loadable +13 common-bytebuddy net.bytebuddy.matcher.DefinedShapeMatcher +13 common-bytebuddy net.bytebuddy.description.annotation.AnnotationDescription$ForLoadedAnnotation +13 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyMethodDescription$LazyParameterList +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$Raw$RawAnnotatedType +13 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$TokenizedGenericType +13 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Resolved$AbstractBase +13 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved +13 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodEnter +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping +13 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler +13 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$CodeTranslationVisitor +13 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodEnter$WithRetainedEnterType +13 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodEnter$WithDiscardedEnterType +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForArgument$Unresolved$Factory +13 common-bytebuddy net.bytebuddy.asm.Advice$Argument +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForAllArguments$Factory +13 common-bytebuddy net.bytebuddy.asm.Advice$AllArguments +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForThisReference$Factory +13 common-bytebuddy net.bytebuddy.asm.Advice$This +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForField$Unresolved$Factory +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForField +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForField$Unresolved +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForField$Unresolved$WithImplicitType +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForField$Unresolved$WithExplicitType +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle$Unresolved$ReaderFactory +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle$Unresolved +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle$Unresolved$WithImplicitType +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle$Unresolved$WithExplicitType +13 common-bytebuddy net.bytebuddy.asm.Advice$FieldGetterHandle +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle$Unresolved$WriterFactory +13 common-bytebuddy net.bytebuddy.asm.Advice$FieldSetterHandle +13 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForOrigin$Factory +13 common-bytebuddy net.bytebuddy.asm.Advice$Origin +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForSelfCallHandle$Factory +14 common-bytebuddy net.bytebuddy.asm.Advice$SelfCallHandle +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForHandle$Factory +14 common-bytebuddy net.bytebuddy.asm.Advice$Handle +14 common-bytebuddy net.bytebuddy.utility.JavaConstant$MethodHandle$HandleType +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForDynamicConstant$Factory +14 common-bytebuddy net.bytebuddy.asm.Advice$DynamicConstant +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForUnusedValue$Factory +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForStubValue +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Target +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForThrowable$Factory +14 common-bytebuddy net.bytebuddy.asm.Advice$Thrown +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForExitValue$Factory +14 common-bytebuddy net.bytebuddy.asm.Advice$Exit +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Factory$Illegal +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForLocalValue$Factory +14 common-bytebuddy net.bytebuddy.asm.Advice$Local +14 common-bytebuddy net.bytebuddy.asm.Advice$Enter +14 common-bytebuddy net.bytebuddy.asm.Advice$Return +14 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForMismatchedType +14 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Factory$AdviceType +14 common-bytebuddy net.bytebuddy.asm.Advice$FieldValue +14 common-bytebuddy net.bytebuddy.asm.Advice$Unused +14 common-bytebuddy net.bytebuddy.asm.Advice$StubValue +14 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$SuppressionHandler +14 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$SuppressionHandler$Suppressing +14 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$SuppressionHandler$Bound +14 common-bytebuddy net.bytebuddy.asm.Advice$NoExceptionHandler +14 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler +14 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler$ForType +14 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler$Bound +14 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler$Disabled +14 common-bytebuddy net.bytebuddy.asm.AsmVisitorWrapper$ForDeclaredMethods$Entry +14 common-bytebuddy net.bytebuddy.dynamic.TypeResolutionStrategy$Disabled +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.inline.InliningImplementationMatcher +14 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyTypeList +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Simple +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Empty +14 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyMethodDescription$LazyParameterDescription +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$RegistryContextClassVisitor +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor +14 common-bytebuddy net.bytebuddy.jar.asm.commons.SimpleRemapper +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$OpenedClassRemapper +14 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$FieldTokenList +14 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$RecordComponentTokenList +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.inline.MethodRebaseResolver$Disabled +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.inline.MethodRebaseResolver$Resolution +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$ContextRegistry +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor$AttributeObtainingMethodVisitor +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor$CodePreservingMethodVisitor +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor$AttributeObtainingFieldVisitor +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor$AttributeObtainingRecordComponentVisitor +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor$DeduplicatingClassVisitor +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler +14 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyFieldDescription +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$SignatureKey +14 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyNestMemberList +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Creating +14 common-bytebuddy net.bytebuddy.implementation.Implementation$Context$Disabled +14 common-bytebuddy net.bytebuddy.asm.TypeConstantAdjustment$TypeConstantDissolvingClassVisitor$TypeConstantDissolvingMethodVisitor +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$Constraint$ForClassFileVersion +14 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$Constraint$ForClass +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$Constraint$Compound +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$FieldPool$Record$ForImplicitField +15 common-bytebuddy net.bytebuddy.jar.asm.Label +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithDrain +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithDrain$WithActiveRecord +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithDrain$WithoutActiveRecord +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithoutDrain +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithoutDrain$WithActiveRecord +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithoutDrain$WithoutActiveRecord +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$FrameWriter +15 common-bytebuddy net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$FrameWriter$NoOp +15 common-bytebuddy net.bytebuddy.jar.asm.Opcodes +15 common-bytebuddy net.bytebuddy.jar.asm.Handle +15 common-bytebuddy net.bytebuddy.jar.asm.ConstantDynamic +15 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$Factory +15 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$Factory$1 +15 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$Factory$2 +15 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$ForInstrumentedMethod +15 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$ForInstrumentedMethod$Default +15 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$ForInstrumentedMethod$Default$Simple +15 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$ForAdvice +15 common-bytebuddy net.bytebuddy.asm.Advice$MethodSizeHandler +15 common-bytebuddy net.bytebuddy.asm.Advice$MethodSizeHandler$ForInstrumentedMethod +15 common-bytebuddy net.bytebuddy.asm.Advice$MethodSizeHandler$Default +15 common-bytebuddy net.bytebuddy.asm.Advice$MethodSizeHandler$ForAdvice +15 common-bytebuddy net.bytebuddy.asm.Advice$MethodSizeHandler$Default$WithRetainedArguments +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$ForInstrumentedMethod +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$ForPostProcessor +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$ForAdvice +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$Trivial +15 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$AdviceMethodInliner +15 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$AdviceMethodInliner$ExceptionTableSubstitutor +15 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$AdviceMethodInliner$ExceptionTableExtractor +15 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$SuppressionHandler$Suppressing$Bound +15 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler$Relocation$ForLabel +15 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$AdviceMethodInliner$ExceptionTableCollector +15 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$ForAdvice$Default +15 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$ForAdvice$Default$ForMethodEnter +15 common-bytebuddy net.bytebuddy.asm.Advice$MethodSizeHandler$Default$ForAdvice +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$ForAdvice +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$TranslationMode +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$TranslationMode$1 +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$TranslationMode$2 +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$TranslationMode$3 +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$Initialization +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$Initialization$1 +15 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$Initialization$2 +15 common-bytebuddy net.bytebuddy.utility.visitor.StackAwareMethodVisitor +15 common-bytebuddy net.bytebuddy.pool.TypePool$Default$AnnotationRegistrant$ForByteCodeElement$WithIndex +15 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForArgument +15 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForArgument$Unresolved +15 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Target$ForDefaultValue +15 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Target$ForDefaultValue$ReadOnly +15 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Target$ForDefaultValue$ReadWrite +15 common-bytebuddy net.bytebuddy.description.type.TypeDescription$ArrayProjection +15 common-bytebuddy net.bytebuddy.description.enumeration.EnumerationDescription$AbstractBase +15 common-bytebuddy net.bytebuddy.description.enumeration.EnumerationDescription$ForLoadedEnumeration +15 common-bytebuddy net.bytebuddy.description.annotation.AnnotationValue$ForEnumerationDescription +15 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodExit +15 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodExit$WithoutExceptionHandler +15 common-bytebuddy net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodExit$WithExceptionHandler +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForEnterValue$Factory +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForReturnValue$Factory +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForReturnValue +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForEnterValue +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForThrowable +16 common-bytebuddy net.bytebuddy.dynamic.scaffold.MethodGraph$Node$Simple +16 common-bytebuddy net.bytebuddy.description.type.PackageDescription$AbstractBase +16 common-bytebuddy net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyPackageDescription +16 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$ForInstrumentedMethod$Default$Copying +16 common-bytebuddy net.bytebuddy.asm.Advice$MethodSizeHandler$Default$WithCopiedArguments +16 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$WithPreservedArguments +16 common-bytebuddy net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$WithPreservedArguments$WithArgumentCopy +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Sort +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Sort$1 +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Sort$2 +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Target$ForVariable +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Target$ForVariable$ReadOnly +16 common-bytebuddy net.bytebuddy.implementation.bytecode.StackSize$1 +16 common-bytebuddy net.bytebuddy.asm.Advice$ArgumentHandler$ForAdvice$Default$ForMethodExit +16 common-bytebuddy net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveWideningDelegate +16 common-bytebuddy net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveWideningDelegate$WideningStackManipulation +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForThisReference +16 common-bytebuddy net.bytebuddy.asm.Advice$MethodSizeHandler$NoOp +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$Target$ForVariable$ReadWrite +16 common-bytebuddy net.bytebuddy.implementation.bytecode.member.MethodVariableAccess$OffsetWriting +16 common-bytebuddy net.bytebuddy.description.enumeration.EnumerationDescription$Latent +16 common-bytebuddy net.bytebuddy.asm.Advice$OffsetMapping$ForLocalValue +17 common-agent datadog.trace.agent.tooling.AgentInstaller +17 common-agent datadog.trace.agent.tooling.InstrumenterState$Observer +17 common-agent datadog.trace.agent.tooling.InstrumenterModule$TargetSystem +17 common-agent datadog.trace.agent.tooling.WeakMaps +17 common-agent datadog.trace.agent.tooling.WeakMaps$1 +17 common-agent datadog.trace.agent.tooling.Utils +17 common-agent datadog.trace.agent.tooling.Instrumenter +17 common-agent datadog.trace.agent.tooling.bytebuddy.SharedTypePools$Supplier +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.TypePoolFacade +17 common-agent datadog.trace.agent.tooling.bytebuddy.SharedTypePools +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.TypeFactory +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.TypeParser +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.OutlineTypeParser +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.OutlineTypeParser$OutlineTypeExtractor +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.FullTypeParser +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.FullTypeParser$CustomTypeExtractor +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.WithName +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.CachingType +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.TypeOutline +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.MethodOutline +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.AnnotationOutline +17 common-agent datadog.trace.agent.tooling.bytebuddy.TypeInfoCache +17 common-agent datadog.trace.agent.tooling.bytebuddy.TypeInfoCache$SharedTypeInfo +17 common-agent datadog.trace.agent.tooling.bytebuddy.TypeInfoCache$DisambiguatingTypeInfo +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.WithLocation +17 common-agent datadog.trace.agent.tooling.bytebuddy.outline.TypeFactory$LazyType +17 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.HierarchyMatchers$Supplier +17 common-agent datadog.trace.agent.tooling.bytebuddy.memoize.MemoizedMatchers +17 common-agent datadog.trace.agent.tooling.bytebuddy.memoize.PreloadHierarchy +17 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.HierarchyMatchers +17 common-agent datadog.trace.agent.tooling.bytebuddy.memoize.Memoizer +17 common-agent datadog.trace.agent.tooling.bytebuddy.memoize.NoMatchFilter +17 common-agent datadog.trace.agent.tooling.bytebuddy.memoize.NoMatchFilter$ShutdownHook +17 common-agent datadog.trace.agent.tooling.bytebuddy.memoize.Memoizer$MatcherKind +17 common-agent datadog.trace.agent.tooling.bytebuddy.memoize.Memoizer$MemoizingMatcher +17 common-agent datadog.trace.agent.tooling.AgentStrategies +17 common-agent datadog.trace.agent.tooling.bytebuddy.DDJava9ClassFileTransformer +17 common-agent datadog.trace.agent.tooling.bytebuddy.DDRediscoveryStrategy +17 common-agent datadog.trace.agent.tooling.bytebuddy.DDLocationStrategy +17 common-agent datadog.trace.agent.tooling.bytebuddy.DDOutlinePoolStrategy +17 common-agent datadog.trace.agent.tooling.bytebuddy.DDOutlineTypeStrategy +17 common-agent datadog.trace.agent.tooling.AgentInstaller$ClassLoadListener +17 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.GlobalIgnoresMatcher +17 common-agent datadog.trace.agent.tooling.InstrumenterIndex +17 common-agent datadog.trace.agent.tooling.InstrumenterModule +17 common-agent datadog.trace.agent.tooling.InstrumenterState +17 common-agent datadog.trace.agent.tooling.InstrumenterState$1 +17 common-agent datadog.trace.agent.tooling.InstrumenterModuleFilter +17 common-agent datadog.trace.agent.tooling.InstrumenterIndex$ModuleIterator +17 common-agent datadog.trace.agent.tooling.InstrumenterModule$Tracing +17 common-agent datadog.trace.agent.tooling.ExcludeFilterProvider +17 common-agent datadog.trace.agent.tooling.JavaModuleOpenProvider +17 common-agent datadog.trace.agent.tooling.Instrumenter$ForKnownTypes +17 common-agent datadog.trace.agent.tooling.Instrumenter$HasMethodAdvice +17 common-agent datadog.trace.agent.tooling.Instrumenter$ForTypeHierarchy +17 common-agent datadog.trace.agent.tooling.Instrumenter$ForSingleType +17 common-agent datadog.trace.agent.tooling.InstrumenterModule$AppSec +17 common-agent datadog.trace.agent.tooling.InstrumenterModule$ContextTracking +17 common-agent datadog.trace.agent.tooling.Instrumenter$ForBootstrap +17 common-agent datadog.trace.agent.tooling.Instrumenter$ForConfiguredTypes +17 common-agent datadog.trace.agent.tooling.Instrumenter$ForConfiguredType +17 common-agent datadog.trace.agent.tooling.Instrumenter$WithTypeStructure +17 common-agent datadog.trace.agent.tooling.muzzle.Reference$Builder +17 common-agent datadog.trace.agent.tooling.muzzle.Reference$OrBuilder +18 common-agent datadog.trace.agent.tooling.muzzle.Reference +18 common-agent datadog.trace.agent.tooling.muzzle.Reference$Field +18 common-agent datadog.trace.agent.tooling.muzzle.Reference$Method +18 common-agent datadog.trace.agent.tooling.Instrumenter$CanShortcutTypeMatching +18 common-agent datadog.trace.agent.tooling.Instrumenter$HasTypeAdvice +18 common-agent datadog.trace.agent.tooling.muzzle.ReferenceProvider +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$Named +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$OneOf +18 common-agent datadog.trace.agent.tooling.muzzle.OrReference +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$StartsWith +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$EndsWith +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.ClassLoaderMatchers +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.ClassLoaderMatchers$1 +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.ClassLoaderMatchers$HasClassMatcher +18 common-agent datadog.trace.agent.tooling.Instrumenter$TypeTransformer +18 common-agent datadog.trace.agent.tooling.Instrumenter$MethodTransformer +18 common-agent datadog.trace.agent.tooling.CombiningTransformerBuilder +18 common-agent datadog.trace.agent.tooling.Instrumenter$TransformingAdvice +18 common-agent datadog.trace.agent.tooling.AdviceStack +18 common-agent datadog.trace.agent.tooling.AdviceShader +18 common-agent datadog.trace.agent.tooling.AdviceShader$AdviceMapper +18 common-agent datadog.trace.agent.tooling.HelperInjector +18 common-agent datadog.trace.agent.tooling.CombiningTransformerBuilder$HelperTransformer +18 common-agent datadog.trace.agent.tooling.muzzle.MuzzleCheck +18 common-agent datadog.trace.agent.tooling.MatchRecorder +18 common-agent datadog.trace.agent.tooling.MatchRecorder$NarrowLocation +18 common-agent datadog.trace.agent.tooling.bytebuddy.ExceptionHandlers +18 common-agent datadog.trace.agent.tooling.bytebuddy.ExceptionHandlers$1 +18 common-agent datadog.trace.agent.tooling.CombiningTransformerBuilder$VisitingTransformer +18 common-agent datadog.trace.agent.tooling.context.FieldBackedContextRequestRewriter +18 common-agent datadog.trace.agent.tooling.context.FieldBackedContextRequestRewriter$1 +18 common-agent datadog.trace.agent.tooling.MatchRecorder$ForHierarchy +18 common-agent datadog.trace.agent.tooling.Instrumenter$ForCallSite +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$NotExcluded +18 common-agent datadog.trace.agent.tooling.MatchRecorder$NarrowType +18 common-agent datadog.trace.agent.tooling.ShadedAdviceLocator +18 common-agent datadog.trace.agent.tooling.VisitingAdvice +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.ScalaTraitMatchers +18 common-agent datadog.trace.agent.tooling.bytebuddy.memoize.HasSuperMethod +18 common-agent datadog.trace.agent.core.scopemanager.ScopeContext +18 common-agent datadog.trace.agent.core.scopemanager.ScopeStack +18 common-agent datadog.trace.agent.tooling.MatchRecorder$ForType +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$NoneOf +18 common-agent datadog.trace.agent.tooling.InstrumenterFlare +18 common-agent datadog.trace.agent.tooling.AgentInstaller$1 +18 common-agent datadog.trace.agent.tooling.context.FieldBackedContextMatcher +18 common-agent datadog.trace.agent.tooling.bytebuddy.memoize.HasContextField +18 common-agent datadog.trace.agent.tooling.context.FieldBackedContextInjector +18 common-agent datadog.trace.agent.tooling.context.FieldBackedContextInjector$1 +18 common-agent datadog.trace.agent.tooling.MatchRecorder$ForContextStore +18 common-agent datadog.trace.agent.tooling.bytebuddy.memoize.HasContextField$Skip +18 common-agent datadog.trace.agent.tooling.CombiningMatcher +18 common-agent datadog.trace.agent.tooling.KnownTypesIndex +18 common-agent datadog.trace.agent.tooling.bytebuddy.DDTransformers +18 common-agent datadog.trace.agent.tooling.bytebuddy.DDTransformers$1 +18 common-agent datadog.trace.agent.tooling.SplittingTransformer +18 common-agent datadog.trace.agent.tooling.bytebuddy.DDRediscoveryStrategy$1 +18 common-agent datadog.trace.agent.tooling.bytebuddy.DDRediscoveryStrategy$1$1 +18 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.IgnoredClassNameTrie +18 common-agent datadog.trace.agent.tooling.bytebuddy.ClassFileLocators +18 common-agent datadog.trace.agent.tooling.bytebuddy.ClassFileLocators$1 +18 common-agent datadog.trace.agent.tooling.bytebuddy.ClassFileLocators$2 +18 common-agent datadog.trace.agent.tooling.bytebuddy.outline.TypeFactory$LazyResolution +19 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.GlobalIgnores +19 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.CustomExcludes +19 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.CodeSourceExcludes +19 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.ProxyClassIgnores +19 common-agent datadog.trace.agent.tooling.InstrumenterMetrics +19 common-agent datadog.trace.agent.tooling.bytebuddy.ClassFileLocators$LazyResolution +19 common-agent datadog.trace.agent.tooling.bytebuddy.outline.FieldOutline +19 common-agent datadog.trace.agent.tooling.muzzle.ReferenceMatcher +19 common-agent datadog.trace.agent.tooling.bytebuddy.matcher.ProxyIgnoredClassNameTrie +19 common-agent datadog.trace.agent.tooling.context.FieldBackedContextRequestRewriter$1$1 +19 common-agent datadog.trace.agent.tooling.MeterInstaller +19 common-agent datadog.trace.agent.core.DDTraceCoreInfo +19 common-agent datadog.trace.agent.tooling.bytebuddy.ClassFileLocators$DDClassFileLocator +19 common-agent datadog.trace.agent.tooling.TracerInstaller +19 common-agent datadog.trace.agent.core.CoreTracer +19 common-agent datadog.trace.agent.core.CoreTracer$CoreSpanBuilder +19 common-agent datadog.trace.agent.core.CoreTracer$MultiSpanBuilder +19 common-agent datadog.trace.agent.core.CoreTracer$ReusableSingleSpanBuilder +19 common-agent datadog.trace.agent.core.monitor.HealthMetrics +19 common-agent datadog.trace.agent.core.monitor.TracerHealthMetrics +19 common-agent datadog.trace.agent.core.TraceCollector$Factory +19 common-agent datadog.trace.agent.common.metrics.MetricsAggregator +19 common-agent datadog.trace.agent.core.datastreams.DataStreamsMonitoring +19 common-agent datadog.trace.agent.core.CoreTracer$ShutdownHook +19 common-agent datadog.trace.agent.core.CoreTracer$CoreTracerBuilder +19 common-agent datadog.trace.agent.common.sampling.Sampler$Builder +19 common-agent datadog.trace.agent.common.sampling.Sampler +19 common-agent datadog.trace.agent.common.sampling.PrioritySampler +19 common-agent datadog.trace.agent.common.writer.RemoteResponseListener +19 common-agent datadog.trace.agent.common.sampling.RateByServiceTraceSampler +19 common-agent datadog.trace.agent.common.sampling.RateSampler +19 common-agent datadog.trace.agent.common.sampling.RateByServiceTraceSampler$RateSamplersByEnvAndService +19 common-agent datadog.trace.agent.common.sampling.DeterministicSampler +19 common-agent datadog.trace.agent.common.sampling.DeterministicSampler$TraceSampler +19 common-agent datadog.trace.agent.common.sampling.SingleSpanSampler$Builder +19 common-agent datadog.trace.agent.common.sampling.SingleSpanSampler +19 common-agent datadog.trace.agent.core.propagation.HttpCodec +19 common-agent datadog.trace.agent.core.propagation.HttpCodec$Injector +19 common-agent datadog.trace.agent.core.propagation.HttpCodec$Extractor +19 common-agent datadog.trace.agent.core.propagation.HttpCodec$1 +19 common-agent datadog.trace.agent.core.propagation.DatadogHttpCodec +19 common-agent datadog.trace.agent.core.propagation.ContextInterpreter +19 common-agent datadog.trace.agent.core.propagation.DatadogHttpCodec$DatadogContextInterpreter +19 common-agent datadog.trace.agent.core.propagation.DatadogHttpCodec$Injector +19 common-agent datadog.trace.agent.core.propagation.W3CHttpCodec +19 common-agent datadog.trace.agent.core.propagation.W3CHttpCodec$W3CContextInterpreter +19 common-agent datadog.trace.agent.core.propagation.W3CHttpCodec$Injector +19 common-agent datadog.trace.agent.core.propagation.HttpCodec$CompoundInjector +19 common-agent datadog.trace.agent.core.CoreTracer$TraceInterceptors +19 common-agent datadog.trace.agent.core.CoreTracer$ReusableSingleSpanBuilderThreadLocalCache +19 common-agent datadog.trace.agent.core.TraceCollector$PublishState +19 common-agent datadog.trace.agent.common.sampling.TraceSamplingRules +19 common-agent datadog.trace.agent.common.sampling.TraceSamplingRules$RuleAdapter +19 common-agent datadog.trace.agent.common.sampling.TraceSamplingRules$JsonRule +19 common-agent datadog.trace.agent.common.sampling.TraceSamplingRules$Rule +19 common-agent datadog.trace.agent.core.datastreams.DataStreamsTransactionExtractors +19 common-agent datadog.trace.agent.core.datastreams.DataStreamsTransactionExtractors$DataStreamsTransactionExtractorAdapter +19 common-agent datadog.trace.agent.core.datastreams.DataStreamsTransactionExtractors$JsonDataStreamsTransactionExtractor +19 common-agent datadog.trace.agent.core.datastreams.DataStreamsTransactionExtractors$DataStreamsTransactionExtractorImpl +19 common-agent datadog.trace.agent.common.sampling.SpanSamplingRules +19 common-agent datadog.trace.agent.common.sampling.SpanSamplingRules$RuleAdapter +19 common-agent datadog.trace.agent.common.sampling.SpanSamplingRules$JsonRule +19 common-agent datadog.trace.agent.common.sampling.SpanSamplingRules$Rule +19 common-agent datadog.trace.agent.core.taginterceptor.TagInterceptor +20 common-agent datadog.trace.agent.core.taginterceptor.RuleFlags +20 common-agent datadog.trace.agent.core.taginterceptor.RuleFlags$Feature +20 common-agent datadog.trace.agent.core.CoreTracer$ConfigSnapshot +20 common-agent datadog.trace.agent.core.monitor.HealthMetrics$1 +20 common-agent datadog.trace.agent.core.monitor.TracerHealthMetrics$Flush +20 common-agent datadog.trace.agent.core.scopemanager.ContinuableScopeManager +20 common-agent datadog.trace.agent.core.scopemanager.ContinuableScope +20 common-agent datadog.trace.agent.core.scopemanager.ContinuingScope +20 common-agent datadog.trace.agent.core.scopemanager.ContinuableScopeManager$ScopeStackThreadLocal +20 common-agent datadog.trace.agent.core.TracingConfigPoller +20 common-agent datadog.trace.agent.core.TracingConfigPoller$Updater +20 common-agent datadog.trace.agent.core.TracingConfigPoller$TracingSamplingRulesAdapter +20 common-agent datadog.trace.agent.core.TracingConfigPoller$TracingSamplingRules +20 common-agent datadog.trace.agent.core.TracingConfigPoller$TracingSamplingRule +20 common-agent datadog.trace.agent.core.datastreams.DataStreamsTransactionExtractors$DataStreamsTransactionExtractorsAdapter +20 common-agent datadog.trace.agent.core.TracingConfigPoller$ConfigOverrides +20 common-agent datadog.trace.agent.core.TracingConfigPoller$LibConfig +20 common-agent datadog.trace.agent.core.TracingConfigPoller$ServiceTarget +20 common-agent datadog.trace.agent.core.TracingConfigPoller$K8sTargetV2 +20 common-agent datadog.trace.agent.core.TracingConfigPoller$ServiceMappingEntry +20 common-agent datadog.trace.agent.core.TracingConfigPoller$HeaderTagEntry +20 common-agent datadog.trace.agent.core.TracingConfigPoller$SamplingRuleTagEntry +20 common-agent datadog.trace.agent.core.TracingConfigPoller$ClusterTarget +20 common-agent datadog.trace.agent.common.writer.WriterFactory +20 common-agent datadog.trace.agent.common.writer.Writer +20 common-agent datadog.trace.agent.common.writer.ddagent.Prioritization +20 common-agent datadog.trace.agent.common.writer.RemoteWriter +20 common-agent datadog.trace.agent.common.writer.DDIntakeWriter +20 common-agent datadog.trace.agent.common.writer.DDAgentWriter +20 common-agent datadog.trace.agent.common.writer.PayloadDispatcher +20 common-agent datadog.trace.agent.common.writer.RemoteApi +20 common-agent datadog.trace.agent.common.writer.ddintake.DDEvpProxyApi +20 common-agent datadog.trace.agent.common.writer.ddintake.DDIntakeApi +20 common-agent datadog.trace.agent.common.writer.LoggingWriter +20 common-agent datadog.trace.agent.common.writer.DDSpanJsonAdapter +20 common-agent datadog.trace.agent.common.writer.DDSpanJsonAdapter$1 +20 common-agent datadog.trace.agent.core.CoreSpan +20 common-agent datadog.trace.agent.core.DDSpan +20 common-agent datadog.trace.agent.core.PendingTraceBuffer +20 common-agent datadog.trace.agent.core.PendingTraceBuffer$DiscardingPendingTraceBuffer +20 common-agent datadog.trace.agent.core.PendingTraceBuffer$DelayingPendingTraceBuffer +20 common-agent datadog.trace.agent.core.PendingTraceBuffer$Element +20 common-agent datadog.trace.agent.core.PendingTraceBuffer$DelayingPendingTraceBuffer$CommandElement +20 common-agent datadog.trace.agent.core.PendingTraceBuffer$DelayingPendingTraceBuffer$Worker +20 common-agent datadog.trace.agent.core.PendingTrace$Factory +20 common-agent datadog.trace.agent.core.TraceCollector +20 common-agent datadog.trace.agent.core.PendingTrace +20 common-agent datadog.trace.agent.core.PendingTraceBuffer$TracerDump +20 common-agent datadog.trace.agent.common.metrics.NoOpMetricsAggregator +20 common-agent datadog.trace.agent.common.metrics.EventListener +20 common-agent datadog.trace.agent.core.datastreams.DefaultDataStreamsMonitoring +20 common-agent datadog.trace.agent.common.metrics.Sink +20 common-agent datadog.trace.agent.core.datastreams.DatastreamsPayloadWriter +20 common-agent datadog.trace.agent.common.metrics.OkHttpSink +20 common-agent datadog.trace.agent.core.datastreams.MsgPackDatastreamsPayloadWriter +20 common-agent datadog.trace.agent.core.datastreams.DefaultDataStreamsMonitoring$InboxProcessor +20 common-agent datadog.trace.agent.core.datastreams.DataStreamsPropagator +20 common-agent datadog.trace.agent.core.datastreams.DefaultDataStreamsMonitoring$ReportTask +20 common-agent datadog.trace.agent.core.propagation.PropagationTags +20 common-agent datadog.trace.agent.core.propagation.PropagationTags$Factory +20 common-agent datadog.trace.agent.core.propagation.ptags.PTagsFactory +20 common-agent datadog.trace.agent.core.propagation.ptags.PTagsFactory$PTags +20 common-agent datadog.trace.agent.core.propagation.ptags.W3CPTagsCodec$W3CPTags +20 common-agent datadog.trace.agent.core.propagation.PropagationTags$HeaderType +21 common-agent datadog.trace.agent.core.propagation.ptags.PTagsCodec +21 common-agent datadog.trace.agent.core.propagation.ptags.DatadogPTagsCodec +21 common-agent datadog.trace.agent.core.propagation.ptags.TagElement +21 common-agent datadog.trace.agent.core.propagation.ptags.TagValue +21 common-agent datadog.trace.agent.core.propagation.ptags.TagKey +21 common-agent datadog.trace.agent.core.propagation.ptags.TagElement$Encoding +21 common-agent datadog.trace.agent.core.propagation.ptags.W3CPTagsCodec +21 common-agent datadog.trace.agent.core.propagation.TagContextExtractor +21 common-agent datadog.trace.agent.core.propagation.ContextInterpreter$Factory +21 common-agent datadog.trace.agent.core.propagation.HttpCodec$CompoundExtractor +21 common-agent datadog.trace.agent.core.propagation.ExtractedContext +21 common-agent datadog.trace.agent.core.propagation.opg.OrgGuard +21 common-agent datadog.trace.agent.core.propagation.TracingPropagator +21 common-agent datadog.trace.agent.core.propagation.XRayPropagator +21 common-agent datadog.trace.agent.core.propagation.XRayHttpCodec +21 common-agent datadog.trace.agent.core.propagation.XRayHttpCodec$XRayContextInterpreter +21 common-agent datadog.trace.agent.core.propagation.XRayHttpCodec$Injector +21 common-agent datadog.trace.agent.core.baggage.BaggagePropagator +21 common-agent datadog.trace.agent.core.util.PercentEscaper +21 common-agent datadog.trace.agent.common.GitMetadataTraceInterceptor +21 common-agent datadog.trace.agent.core.StatusLogger +21 common-agent datadog.trace.agent.common.metrics.MetricsAggregatorFactory +21 common-agent datadog.trace.agent.common.metrics.ClientStatsAggregator +21 common-agent datadog.trace.agent.common.metrics.MetricWriter +21 common-agent datadog.trace.agent.core.SpanKindFilter +21 common-agent datadog.trace.agent.core.SpanKindFilter$Builder +21 common-agent datadog.trace.agent.common.metrics.AdditionalTagsSchema +21 common-agent datadog.trace.agent.common.metrics.TagCardinalityHandler +21 common-agent datadog.trace.agent.common.metrics.SerializingMetricWriter +21 common-agent datadog.trace.agent.common.metrics.TriState +21 common-agent datadog.trace.agent.common.metrics.CardinalityLimitReporter +21 common-agent datadog.trace.agent.core.otlp.metrics.OtlpStatsMetricWriter +21 common-agent datadog.trace.agent.common.metrics.Aggregator +21 common-agent datadog.trace.agent.common.metrics.AggregateTable +21 common-agent datadog.trace.agent.common.metrics.AggregateEntry +21 common-agent datadog.trace.agent.common.metrics.CoreHandlers +21 common-agent datadog.trace.agent.common.metrics.PropertyCardinalityHandler +21 common-agent datadog.trace.agent.common.metrics.AggregateEntry$Canonical +21 common-agent datadog.trace.agent.tooling.context.asm.SerialVersionUIDAdder +21 common-agent datadog.trace.agent.tooling.context.FieldBackedContextInjector$SerialVersionUIDInjector +21 common-agent datadog.trace.agent.tooling.context.asm.SerialVersionUIDAdder$Item +21 common-agent datadog.trace.agent.tooling.WeakMaps$MapCleaningTask +21 common-agent datadog.trace.agent.tooling.WeakMaps$Adapter +21 common-agent datadog.trace.agent.core.scopemanager.ScopeContinuation +22 common-telemetry datadog.telemetry.TelemetrySystem +22 common-telemetry datadog.telemetry.dependency.DependencyService +22 common-telemetry datadog.telemetry.dependency.DependencyResolverQueue +22 common-telemetry datadog.telemetry.dependency.LocationsCollectingTransformer +22 common-telemetry datadog.telemetry.TelemetryClient +22 common-telemetry datadog.telemetry.TelemetryService +22 common-telemetry datadog.telemetry.EventSource +22 common-telemetry datadog.telemetry.EventSink +22 common-telemetry datadog.telemetry.FileBasedTelemetryClient +22 common-telemetry datadog.telemetry.TelemetryRouter +22 common-telemetry datadog.telemetry.ExtendedHeartbeatData +22 common-telemetry datadog.telemetry.EventSource$Queued +22 common-telemetry datadog.telemetry.TelemetryRunnable$TelemetryPeriodicAction +22 common-telemetry datadog.telemetry.metric.MetricPeriodicAction +22 common-telemetry datadog.telemetry.metric.CoreMetricsPeriodicAction +22 common-telemetry datadog.telemetry.metric.OtelEnvMetricPeriodicAction +22 common-telemetry datadog.telemetry.metric.ConfigInversionMetricPeriodicAction +22 common-telemetry datadog.telemetry.integration.IntegrationPeriodicAction +22 common-telemetry datadog.telemetry.metric.WafMetricPeriodicAction +22 common-telemetry datadog.telemetry.metric.OtlpTelemetryPeriodicAction +22 common-telemetry datadog.telemetry.metric.IastMetricPeriodicAction +22 common-telemetry datadog.telemetry.dependency.DependencyPeriodicAction +22 common-telemetry datadog.telemetry.log.LogPeriodicAction +22 common-telemetry datadog.telemetry.products.ProductChangeAction +22 common-telemetry datadog.telemetry.endpoint.EndpointPeriodicAction +22 common-telemetry datadog.telemetry.TelemetryRunnable +22 common-telemetry datadog.telemetry.TelemetryRunnable$ThreadSleeper +22 common-telemetry datadog.telemetry.TelemetryRunnable$ThreadSleeperImpl +22 common-telemetry datadog.telemetry.TelemetryRunnable$Scheduler +22 common-telemetry datadog.telemetry.BufferedEvents +22 common-telemetry datadog.telemetry.TelemetryRequest +22 common-telemetry datadog.telemetry.TelemetryRequestBody$SerializationException +22 common-telemetry datadog.telemetry.TelemetryRequestBody +22 common-telemetry datadog.telemetry.api.RequestType +22 common-telemetry datadog.telemetry.TelemetryRequestBody$CommonData +22 common-telemetry datadog.telemetry.HostInfo +22 common-telemetry datadog.telemetry.HostInfo$Os +23 common-communication datadog.communication.ddagent.SharedCommunicationObjects +23 common-communication datadog.communication.ddagent.DroppingPolicy +23 common-communication datadog.communication.ddagent.DDAgentFeaturesDiscovery +23 common-communication datadog.communication.ddagent.NoopFeaturesDiscovery +23 common-communication com.squareup.moshi.Moshi$Builder +23 common-communication com.squareup.moshi.JsonAdapter$Factory +23 common-communication com.squareup.moshi.AdapterMethodsFactory +23 common-communication com.squareup.moshi.AdapterMethodsFactory$AdapterMethod +23 common-communication com.squareup.moshi.AdapterMethodsFactory$2 +23 common-communication com.squareup.moshi.AdapterMethodsFactory$3 +23 common-communication com.squareup.moshi.AdapterMethodsFactory$4 +23 common-communication com.squareup.moshi.AdapterMethodsFactory$5 +23 common-communication com.squareup.moshi.JsonAdapter +23 common-communication com.squareup.moshi.AdapterMethodsFactory$1 +23 common-communication com.squareup.moshi.ToJson +23 common-communication com.squareup.moshi.FromJson +23 common-communication com.squareup.moshi.internal.Util +23 common-communication com.squareup.moshi.JsonQualifier +23 common-communication com.squareup.moshi.JsonReader +23 common-communication com.squareup.moshi.Moshi +23 common-communication com.squareup.moshi.StandardJsonAdapters +23 common-communication com.squareup.moshi.JsonDataException +23 common-communication com.squareup.moshi.StandardJsonAdapters$2 +23 common-communication com.squareup.moshi.StandardJsonAdapters$3 +23 common-communication com.squareup.moshi.StandardJsonAdapters$4 +23 common-communication com.squareup.moshi.StandardJsonAdapters$5 +23 common-communication com.squareup.moshi.StandardJsonAdapters$6 +23 common-communication com.squareup.moshi.StandardJsonAdapters$7 +23 common-communication com.squareup.moshi.StandardJsonAdapters$8 +23 common-communication com.squareup.moshi.StandardJsonAdapters$9 +23 common-communication com.squareup.moshi.StandardJsonAdapters$10 +23 common-communication com.squareup.moshi.StandardJsonAdapters$1 +23 common-communication datadog.okio.Source +23 common-communication datadog.okio.BufferedSource +23 common-communication datadog.okio.Sink +23 common-communication datadog.okio.BufferedSink +23 common-communication com.squareup.moshi.JsonWriter +23 common-communication com.squareup.moshi.JsonValueWriter +23 common-communication com.squareup.moshi.JsonValueReader +23 common-communication com.squareup.moshi.JsonAdapter$1 +23 common-communication com.squareup.moshi.internal.NullSafeJsonAdapter +23 common-communication com.squareup.moshi.JsonAdapter$3 +23 common-communication com.squareup.moshi.JsonAdapter$4 +23 common-communication com.squareup.moshi.internal.NonNullJsonAdapter +23 common-communication com.squareup.moshi.JsonAdapter$2 +23 common-communication com.squareup.moshi.CollectionJsonAdapter +23 common-communication com.squareup.moshi.CollectionJsonAdapter$2 +23 common-communication com.squareup.moshi.CollectionJsonAdapter$3 +23 common-communication com.squareup.moshi.CollectionJsonAdapter$1 +23 common-communication com.squareup.moshi.MapJsonAdapter +23 common-communication com.squareup.moshi.MapJsonAdapter$1 +23 common-communication com.squareup.moshi.ArrayJsonAdapter +23 common-communication com.squareup.moshi.ArrayJsonAdapter$1 +23 common-communication com.squareup.moshi.ClassJsonAdapter +23 common-communication com.squareup.moshi.ClassJsonAdapter$1 +23 common-communication com.squareup.moshi.Types +23 common-communication com.squareup.moshi.internal.Util$ParameterizedTypeImpl +23 common-communication com.squareup.moshi.Moshi$LookupChain +23 common-communication com.squareup.moshi.Moshi$Lookup +23 common-communication com.squareup.moshi.JsonClass +23 common-communication com.squareup.moshi.ClassFactory +23 common-communication com.squareup.moshi.ClassFactory$1 +23 common-communication com.squareup.moshi.ClassFactory$2 +23 common-communication com.squareup.moshi.ClassFactory$3 +24 common-communication com.squareup.moshi.ClassFactory$4 +24 common-communication com.squareup.moshi.Json +24 common-communication com.squareup.moshi.ClassJsonAdapter$FieldBinding +24 common-communication com.squareup.moshi.JsonReader$Options +24 common-communication datadog.okio.ByteString +24 common-communication datadog.okio.Buffer +24 common-communication datadog.okio.Buffer$1 +24 common-communication datadog.okio.Buffer$2 +24 common-communication datadog.okio.SegmentedByteString +24 common-communication com.squareup.moshi.JsonUtf8Writer +24 common-communication datadog.okio.SegmentPool +24 common-communication datadog.okio.Segment +24 common-communication datadog.okio.Util +24 common-communication datadog.okio.Options +24 common-communication com.squareup.moshi.StandardJsonAdapters$EnumJsonAdapter +24 common-communication datadog.communication.ddagent.ExternalAgentLauncher +24 common-communication datadog.okhttp3.HttpUrl +24 common-communication datadog.okhttp3.HttpUrl$Builder +24 common-communication datadog.okhttp3.internal.PatchUtil +24 common-communication datadog.okhttp3.ResponseBody +24 common-communication datadog.okhttp3.ResponseBody$BomAwareReader +24 common-communication datadog.okhttp3.ResponseBody$1 +24 common-communication datadog.okhttp3.RequestBody +24 common-communication datadog.okhttp3.RequestBody$2 +24 common-communication datadog.okhttp3.RequestBody$3 +24 common-communication datadog.okhttp3.RequestBody$1 +24 common-communication datadog.okhttp3.internal.PatchUtil$1 +24 common-communication datadog.communication.http.SocketUtils +24 common-communication datadog.communication.http.OkHttpUtils +24 common-communication datadog.communication.http.OkHttpUtils$ByteBufferRequestBody +24 common-communication datadog.okhttp3.EventListener +24 common-communication datadog.communication.http.OkHttpUtils$CustomListener +24 common-communication datadog.communication.http.OkHttpUtils$GZipByteBufferRequestBody +24 common-communication datadog.communication.http.OkHttpUtils$GZipRequestBodyDecorator +24 common-communication datadog.communication.http.OkHttpUtils$JsonRequestBody +24 common-communication datadog.okhttp3.Call$Factory +24 common-communication datadog.okhttp3.OkHttpClient$Builder +24 common-communication datadog.okhttp3.internal.proxy.NullProxySelector +24 common-communication datadog.okhttp3.Dispatcher +24 common-communication datadog.okhttp3.WebSocket$Factory +24 common-communication datadog.okhttp3.OkHttpClient +24 common-communication datadog.okhttp3.Call +24 common-communication datadog.okhttp3.WebSocket +24 common-communication datadog.okhttp3.internal.Internal +24 common-communication datadog.okhttp3.OkHttpClient$1 +24 common-communication datadog.okhttp3.Protocol +24 common-communication datadog.okhttp3.ConnectionSpec +24 common-communication datadog.okhttp3.CipherSuite +24 common-communication datadog.okhttp3.CipherSuite$1 +24 common-communication datadog.okhttp3.ConnectionSpec$Builder +24 common-communication datadog.okhttp3.TlsVersion +24 common-communication datadog.okhttp3.EventListener$1 +24 common-communication datadog.okhttp3.EventListener$Factory +24 common-communication datadog.okhttp3.EventListener$2 +24 common-communication datadog.okhttp3.CookieJar +24 common-communication datadog.okhttp3.CookieJar$1 +24 common-communication datadog.okhttp3.internal.tls.OkHostnameVerifier +24 common-communication datadog.okhttp3.CertificatePinner +24 common-communication datadog.okhttp3.CertificatePinner$Builder +24 common-communication datadog.okhttp3.Authenticator +24 common-communication datadog.okhttp3.Authenticator$1 +24 common-communication datadog.okhttp3.ConnectionPool +24 common-communication datadog.okhttp3.internal.PatchUtil$2 +24 common-communication datadog.okhttp3.ConnectionPool$1 +25 common-communication datadog.okhttp3.internal.connection.RouteDatabase +25 common-communication datadog.okhttp3.Dns +25 common-communication datadog.okhttp3.Dns$1 +25 common-communication datadog.communication.http.RejectingExecutorService +25 common-communication com.squareup.moshi.StandardJsonAdapters$ObjectJsonAdapter +25 common-communication datadog.communication.ddagent.DDAgentFeaturesDiscovery$State +25 common-communication datadog.okhttp3.Request$Builder +25 common-communication datadog.okhttp3.Headers$Builder +25 common-communication datadog.okhttp3.Headers +25 common-communication datadog.okhttp3.internal.http.HttpMethod +25 common-communication datadog.okhttp3.Request +25 common-communication datadog.okhttp3.RealCall +25 common-communication datadog.okhttp3.Interceptor$Chain +25 common-communication datadog.okio.Timeout +25 common-communication datadog.okio.AsyncTimeout +25 common-communication datadog.okhttp3.RealCall$1 +25 common-communication datadog.okhttp3.Interceptor +25 common-communication datadog.okhttp3.internal.http.RetryAndFollowUpInterceptor +25 common-communication datadog.okhttp3.internal.connection.RouteException +25 common-communication datadog.okio.Timeout$1 +25 common-communication datadog.okhttp3.internal.platform.PatchPlatform +25 common-communication datadog.okhttp3.internal.tls.CertificateChainCleaner +25 common-communication datadog.okhttp3.internal.tls.BasicCertificateChainCleaner +25 common-communication datadog.okhttp3.internal.platform.Jdk9Platform +25 common-communication datadog.okhttp3.internal.tls.TrustRootIndex +25 common-communication datadog.okhttp3.internal.http.BridgeInterceptor +25 common-communication datadog.okhttp3.internal.http.RealResponseBody +25 common-communication datadog.okhttp3.internal.cache.CacheInterceptor +25 common-communication datadog.okhttp3.internal.connection.ConnectInterceptor +25 common-communication datadog.okhttp3.internal.http.CallServerInterceptor +25 common-communication datadog.okhttp3.internal.http.RealInterceptorChain +25 common-communication datadog.communication.serialization.ByteBufferConsumer +25 common-communication datadog.okhttp3.Connection +25 common-communication datadog.okhttp3.internal.connection.StreamAllocation +25 common-communication datadog.okhttp3.Address +25 common-communication datadog.okhttp3.internal.connection.RouteSelector +25 common-communication datadog.okhttp3.internal.Version +25 common-communication datadog.okhttp3.internal.cache.CacheStrategy$Factory +25 common-communication datadog.okhttp3.internal.cache.CacheStrategy +25 common-communication datadog.okhttp3.CacheControl +25 common-communication datadog.okhttp3.CacheControl$Builder +25 common-communication datadog.communication.serialization.Writable +25 common-communication datadog.communication.serialization.StreamingBuffer +25 common-communication datadog.communication.serialization.MessageFormatter +25 common-communication datadog.communication.serialization.WritableFormatter +25 common-communication datadog.communication.serialization.GrowableBuffer +25 common-communication datadog.communication.serialization.msgpack.MsgPackWriter +25 common-communication datadog.communication.serialization.Codec +25 common-communication datadog.communication.serialization.ValueWriter +25 common-communication datadog.communication.serialization.custom.stacktrace.StackTraceEventWriter +25 common-communication datadog.communication.serialization.custom.stacktrace.StackTraceEventFrameWriter +25 common-communication datadog.okhttp3.Route +25 common-communication datadog.okhttp3.internal.connection.RouteSelector$Selection +25 common-communication datadog.okhttp3.internal.http2.Http2Connection$Listener +25 common-communication datadog.okhttp3.internal.connection.RealConnection +25 common-communication datadog.okhttp3.internal.http2.Http2Connection$Listener$1 +25 common-communication datadog.okhttp3.internal.http.HttpCodec +25 common-communication datadog.okhttp3.internal.ws.RealWebSocket$Streams +25 common-communication datadog.okhttp3.internal.connection.RealConnection$1 +25 common-communication datadog.okhttp3.internal.connection.StreamAllocation$StreamAllocationReference +25 common-communication datadog.okhttp3.internal.connection.ConnectionSpecSelector +25 common-communication datadog.okhttp3.internal.http2.StreamResetException +25 common-communication datadog.okhttp3.MediaType +25 common-communication datadog.okhttp3.MultipartBody +26 common-communication datadog.okhttp3.Callback +26 common-communication com.squareup.moshi.JsonEncodingException +26 common-communication com.squareup.moshi.JsonUtf8Reader +26 common-communication com.squareup.moshi.JsonReader$Token +26 common-communication com.squareup.moshi.Moshi$1 +26 common-communication datadog.communication.http.HttpRetryPolicy$Factory +27 common-other datadog.crashtracking.Initializer +27 common-other datadog.trace.instrumentation.jdbc.AbstractConnectionInstrumentation +27 common-other datadog.trace.instrumentation.jdbc.AbstractPreparedStatementInstrumentation +27 common-other datadog.trace.instrumentation.mule4.AbstractMuleInstrumentation +27 common-other datadog.trace.instrumentation.aws.v1.sqs.AbstractSqsInstrumentation +27 common-other datadog.trace.instrumentation.graal.nativeimage.AbstractNativeImageModule +27 common-other datadog.trace.instrumentation.jaxrs2.AbstractRequestContextInstrumentation +27 common-other datadog.trace.instrumentation.playws.BasePlayWSClientInstrumentation +27 common-other datadog.trace.instrumentation.jakarta3.AbstractRequestContextInstrumentation +27 common-other datadog.trace.instrumentation.servicetalk0_42_0.ServiceTalkInstrumentation +27 common-other datadog.trace.instrumentation.spark.AbstractSparkInstrumentation +27 common-other datadog.trace.instrumentation.codeorigin.CodeOriginInstrumentation +27 common-other datadog.trace.instrumentation.tibcobw5.AbstractTibcoInstrumentation +27 common-other datadog.trace.instrumentation.tibcobw6.AbstractTibcoInstrumentation +27 common-other datadog.trace.instrumentation.akkahttp.appsec.ScalaListCollectorMuzzleReferences +27 common-other datadog.trace.instrumentation.java.completablefuture.AsyncTaskInstrumentation +27 common-other datadog.trace.instrumentation.springwebflux.server.AbstractWebfluxInstrumentation +27 common-other datadog.trace.instrumentation.aerospike4.AerospikeClientInstrumentation +27 common-other datadog.trace.instrumentation.aerospike4.CommandInstrumentation +27 common-other datadog.trace.instrumentation.aerospike4.NioEventLoopInstrumentation +27 common-other datadog.trace.instrumentation.aerospike4.PartitionInstrumentation +27 common-other datadog.trace.instrumentation.axis2.AxisEngineInstrumentation +27 common-other datadog.trace.instrumentation.axis2.AxisTransportInstrumentation +27 common-other datadog.trace.instrumentation.axis2.WebSphereAsyncInstrumentation +27 common-other datadog.trace.instrumentation.cics.ECIInteractionInstrumentation +27 common-other datadog.trace.instrumentation.cics.JavaGatewayInterfaceInstrumentation +27 common-other datadog.trace.instrumentation.datanucleus.ExecutionContextInstrumentation +27 common-other datadog.trace.instrumentation.datanucleus.JDOQueryInstrumentation +27 common-other datadog.trace.instrumentation.datanucleus.JDOTransactionInstrumentation +27 common-other datadog.trace.instrumentation.googlepubsub.PublisherInstrumentation +27 common-other datadog.trace.instrumentation.googlepubsub.ReceiverInstrumentation +27 common-other datadog.trace.instrumentation.googlepubsub.ReceiverWithAckInstrumentation +27 common-other datadog.trace.instrumentation.grpc.client.ClientCallImplInstrumentation +27 common-other datadog.trace.instrumentation.grpc.client.AbstractClientStreamInstrumentation +27 common-other datadog.trace.instrumentation.grpc.client.ClientStreamListenerImplInstrumentation +27 common-other datadog.trace.instrumentation.grpc.client.MessagesAvailableInstrumentation +27 common-other datadog.trace.instrumentation.grpc.server.GrpcServerBuilderInstrumentation +27 common-other datadog.trace.instrumentation.grpc.server.MethodHandlersInstrumentation +27 common-other datadog.trace.instrumentation.kotlin.coroutines.CoroutineContextInstrumentation +27 common-other datadog.trace.instrumentation.kotlin.coroutines.CoroutineInstrumentation +27 common-other datadog.trace.instrumentation.kotlin.coroutines.LazyCoroutineInstrumentation +27 common-other datadog.trace.instrumentation.logback.LogsIntakeHelper +27 common-other datadog.trace.instrumentation.reactivestreams.PublisherInstrumentation +27 common-other datadog.trace.instrumentation.reactivestreams.SubscriberInstrumentation +27 common-other datadog.trace.instrumentation.reactor.core.BlockingPublisherInstrumentation +27 common-other datadog.trace.instrumentation.reactor.core.CorePublisherInstrumentation +27 common-other datadog.trace.instrumentation.reactor.core.ContextWritingSubscriberInstrumentation +27 common-other datadog.trace.instrumentation.reactor.core.OptimizableOperatorInstrumentation +27 common-other datadog.trace.instrumentation.apachehttpasyncclient.ApacheHttpAsyncClientInstrumentation +27 common-other datadog.trace.instrumentation.apachehttpasyncclient.ApacheHttpClientRedirectInstrumentation +27 common-other datadog.trace.instrumentation.apachehttpasyncclient.BasicFutureInstrumentation +27 common-other datadog.trace.instrumentation.armeria.grpc.client.ArmeriaMessageDeframerInstrumentation +27 common-other datadog.trace.instrumentation.armeria.grpc.client.ClientCallImplInstrumentation +27 common-other datadog.trace.instrumentation.aws.v0.AWSHttpClientInstrumentation +27 common-other datadog.trace.instrumentation.aws.v0.RequestExecutorInstrumentation +27 common-other datadog.trace.instrumentation.aws.v0.HandlerChainFactoryInstrumentation +27 common-other datadog.trace.instrumentation.aws.v2.AwsClientInstrumentation +27 common-other datadog.trace.instrumentation.aws.v2.AwsHttpClientInstrumentation +27 common-other datadog.trace.instrumentation.aws.v2.sqs.SqsClientInstrumentation +27 common-other datadog.trace.instrumentation.aws.v2.sqs.SqsReceiveRequestInstrumentation +27 common-other datadog.trace.instrumentation.aws.v2.sqs.SqsMd5ChecksumInterceptorInstrumentation +27 common-other datadog.trace.instrumentation.aws.v2.sqs.SqsReceiveResponseBuilderInstrumentation +27 common-other datadog.trace.instrumentation.aws.v2.sqs.SqsReceiveResponseBuilderImplInstrumentation +27 common-other datadog.trace.instrumentation.aws.v2.sqs.SqsReceiveResultInstrumentation +28 common-other datadog.trace.instrumentation.confluentschemaregistry.KafkaDeserializerInstrumentation +28 common-other datadog.trace.instrumentation.confluentschemaregistry.KafkaSerializerInstrumentation +28 common-other datadog.trace.instrumentation.grizzlyhttp232.GrizzlyByteBodyInstrumentation +28 common-other datadog.trace.instrumentation.grizzlyhttp232.GrizzlyCharBodyInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v3_3.AbstractHibernateInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v3_3.SessionInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v3_3.SessionFactoryInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v3_3.QueryInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v3_3.CriteriaInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v3_3.TransactionInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v4_0.AbstractHibernateInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v4_0.SessionInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v4_0.SessionFactoryInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v4_0.QueryInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v4_0.CriteriaInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v4_0.TransactionInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v4_3.SessionInstrumentation +28 common-other datadog.trace.instrumentation.hibernate.core.v4_3.ProcedureCallInstrumentation +28 common-other datadog.trace.instrumentation.jetty11.JettyServerInstrumentation$HttpChannelHandleVisitorWrapper +28 common-other datadog.trace.instrumentation.jetty9.HttpChannelHandleVisitor +28 common-other datadog.trace.instrumentation.jetty70.JettyServerInstrumentation$ConnectionHandleRequestVisitorWrapper +28 common-other datadog.trace.instrumentation.jetty.ConnectionHandleRequestVisitor +28 common-other datadog.trace.instrumentation.jetty76.JettyServerInstrumentation$ConnectionHandleRequestVisitorWrapper +28 common-other datadog.trace.instrumentation.jetty9.JettyServerInstrumentation$HttpChannelHandleVisitorWrapper +28 common-other datadog.trace.instrumentation.jms.JMSMessageConsumerInstrumentation +28 common-other datadog.trace.instrumentation.jms.JMSMessageProducerInstrumentation +28 common-other datadog.trace.instrumentation.jms.MDBMessageConsumerInstrumentation +28 common-other datadog.trace.instrumentation.jms.MessageInstrumentation +28 common-other datadog.trace.instrumentation.jms.SessionInstrumentation +28 common-other datadog.trace.instrumentation.kafka_clients.KafkaConsumerInfo +28 common-other datadog.trace.instrumentation.kafka_clients38.KafkaConsumerInfo +28 common-other datadog.trace.instrumentation.codeorigin.EntrySpanOriginAdvice +28 common-other datadog.trace.instrumentation.liberty20.ArrayOfTypeMatcher +28 common-other datadog.trace.instrumentation.liberty20.ParseParametersInstrumentation$ParseParametersVisitorWrapper +28 common-other datadog.trace.instrumentation.liberty20.ParseParametersInstrumentation$RequestClassVisitor +28 common-other datadog.trace.instrumentation.liberty23.ArrayOfTypeMatcher +28 common-other datadog.trace.instrumentation.liberty23.ParseParametersInstrumentation$ParseParametersVisitorWrapper +28 common-other datadog.trace.instrumentation.liberty23.ParseParametersInstrumentation$RequestClassVisitor +28 common-other datadog.trace.instrumentation.openai_java.ChatCompletionServiceAsyncInstrumentation +28 common-other datadog.trace.instrumentation.openai_java.ChatCompletionServiceInstrumentation +28 common-other datadog.trace.instrumentation.openai_java.CompletionServiceAsyncInstrumentation +28 common-other datadog.trace.instrumentation.openai_java.CompletionServiceInstrumentation +28 common-other datadog.trace.instrumentation.openai_java.EmbeddingServiceInstrumentation +28 common-other datadog.trace.instrumentation.openai_java.ResponseServiceAsyncInstrumentation +28 common-other datadog.trace.instrumentation.openai_java.ResponseServiceInstrumentation +28 common-other datadog.trace.instrumentation.play26.appsec.NoDeclaredMethodMatcher +28 common-other datadog.trace.instrumentation.resilience4j.CircuitBreakerOperatorInstrumentation +28 common-other datadog.trace.instrumentation.resilience4j.FallbackOperatorInstrumentation +28 common-other datadog.trace.instrumentation.resilience4j.RetryOperatorInstrumentation +28 common-other datadog.trace.instrumentation.resilience4j.CircuitBreakerInstrumentation +28 common-other datadog.trace.instrumentation.resilience4j.FallbackCallableInstrumentation +28 common-other datadog.trace.instrumentation.resilience4j.FallbackCheckedSupplierInstrumentation +28 common-other datadog.trace.instrumentation.resilience4j.FallbackCompletionStageInstrumentation +28 common-other datadog.trace.instrumentation.resilience4j.FallbackSupplierInstrumentation +28 common-other datadog.trace.instrumentation.resilience4j.RetryInstrumentation +28 common-other datadog.trace.instrumentation.resteasy.DecodedFormParametersInstrumentation$CustomReferenceProvider +28 common-other datadog.trace.instrumentation.rxjava2.CompletableInstrumentation +28 common-other datadog.trace.instrumentation.rxjava2.FlowableInstrumentation +28 common-other datadog.trace.instrumentation.rxjava2.MaybeInstrumentation +28 common-other datadog.trace.instrumentation.rxjava2.ObservableInstrumentation +28 common-other datadog.trace.instrumentation.rxjava2.SingleInstrumentation +28 common-other datadog.trace.instrumentation.rxjava3.CompletableInstrumentation +28 common-other datadog.trace.instrumentation.rxjava3.FlowableInstrumentation +28 common-other datadog.trace.instrumentation.rxjava3.MaybeInstrumentation +29 common-other datadog.trace.instrumentation.rxjava3.ObservableInstrumentation +29 common-other datadog.trace.instrumentation.rxjava3.SingleInstrumentation +29 common-other datadog.trace.instrumentation.scala.concurrent.ScalaForkJoinTaskInstrumentation +29 common-other datadog.trace.instrumentation.scala.concurrent.ScalaForkJoinPoolInstrumentation +29 common-other datadog.trace.instrumentation.sofarpc.AbstractClusterInstrumentation +29 common-other datadog.trace.instrumentation.sofarpc.BoltServerProcessorInstrumentation +29 common-other datadog.trace.instrumentation.sofarpc.H2cServerTaskInstrumentation +29 common-other datadog.trace.instrumentation.sofarpc.RestServerHandlerInstrumentation +29 common-other datadog.trace.instrumentation.sofarpc.TripleServerInstrumentation +29 common-other datadog.trace.instrumentation.sofarpc.ProviderProxyInvokerInstrumentation +29 common-other datadog.trace.instrumentation.tomcat.RequestInstrumentation$ThrowableCaughtVisitorWrapper +29 common-other datadog.trace.instrumentation.tomcat.RequestInstrumentation$ThrowableCaughtVisitor +29 common-other datadog.trace.instrumentation.tomcat7.ParsePartsInstrumentation$ParsePartsVisitorWrapper +29 common-other datadog.trace.instrumentation.tomcat7.ParsePartsInstrumentation$RequestClassVisitor +29 common-other datadog.trace.instrumentation.websocket.jsr256.EndpointInstrumentation +29 common-other datadog.trace.instrumentation.websocket.jsr256.SessionInstrumentation +29 common-other datadog.trace.instrumentation.websocket.jsr256.MessageHandlerInstrumentation +29 common-other datadog.trace.instrumentation.websocket.jsr256.BasicRemoteEndpointInstrumentation +29 common-other datadog.trace.instrumentation.websocket.jsr256.AsyncRemoteEndpointInstrumentation +29 common-other datadog.trace.instrumentation.akkahttp.appsec.Bug4304Instrumentation$MatchesOneHundredContinueStageAnonClass +29 common-other datadog.trace.instrumentation.java.completablefuture.CompletableFutureUniCompletionInstrumentation +29 common-other datadog.trace.instrumentation.java.completablefuture.CompletableFutureUniCompletionSubclassInstrumentation +29 common-other datadog.trace.instrumentation.java.concurrent.executor.AbstractExecutorInstrumentation +29 common-other datadog.trace.instrumentation.java.concurrent.executor.JavaExecutorInstrumentation +29 common-other datadog.trace.instrumentation.java.concurrent.executor.NonStandardExecutorInstrumentation +29 common-other datadog.trace.instrumentation.java.concurrent.executor.RejectedExecutionHandlerInstrumentation +29 common-other datadog.trace.instrumentation.java.concurrent.executor.ThreadPoolExecutorInstrumentation +29 common-other datadog.trace.instrumentation.java.concurrent.forkjoin.JavaForkJoinPoolInstrumentation +29 common-other datadog.trace.instrumentation.java.concurrent.forkjoin.JavaForkJoinTaskInstrumentation +29 common-other datadog.trace.instrumentation.java.concurrent.timer.JavaTimerInstrumentation +29 common-other datadog.trace.instrumentation.java.concurrent.timer.TimerTaskInstrumentation +29 common-other datadog.trace.instrumentation.jetty8.RequestGetPartsInstrumentation$RequestImplementationClassLoaderMatcher +29 common-other datadog.trace.instrumentation.jetty8.RequestGetPartsInstrumentation$ClassLoaderMatcherClassVisitor +29 common-other datadog.trace.instrumentation.jetty10.JettyServerInstrumentation$HttpChannelHandleVisitorWrapper +29 common-other datadog.trace.instrumentation.scala210.concurrent.CallbackRunnableInstrumentation +29 common-other datadog.trace.instrumentation.scala210.concurrent.FutureObjectInstrumentation +29 common-other datadog.trace.instrumentation.scala213.concurrent.FutureObjectInstrumentation +29 common-other datadog.trace.instrumentation.scala213.concurrent.PromiseTransformationInstrumentation +29 common-other datadog.trace.instrumentation.vertx_redis_client.RequestImplInstrumentation$RequestImplVisitorWrapper +29 common-other datadog.trace.instrumentation.vertx_redis_client.RequestImplInstrumentation$RequestImplVisitorWrapper$1 +29 common-other datadog.trace.instrumentation.websocket.jetty10.JavaxWebSocketFrameHandlerFactoryInstrumentation +29 common-other datadog.trace.instrumentation.websocket.jetty10.JavaxWebSocketFrameHandlerInstrumentation +29 common-other datadog.trace.instrumentation.java.lang.ShutdownInstrumentation$Muzzle +29 common-other datadog.trace.instrumentation.java.lang.ProcessImplInstrumentation$Muzzle +29 common-other datadog.trace.instrumentation.java.lang.RuntimeInstrumentation$Muzzle +29 common-other datadog.trace.instrumentation.java.lang.jdk21.VirtualThreadInstrumentation$Muzzle +29 common-other datadog.trace.instrumentation.java.lang.classloading.DefineClassInstrumentation$Muzzle +29 common-other datadog.trace.instrumentation.java.concurrent.runnable.RunnableInstrumentation$Muzzle +29 common-other datadog.remoteconfig.ConfigurationPoller +29 common-other datadog.metrics.impl.statsd.DDAgentStatsDClientManager +29 common-other datadog.metrics.impl.statsd.DDAgentStatsDClientManager$NameResolver +29 common-other datadog.metrics.impl.statsd.DDAgentStatsDClientManager$NameResolver$1 +29 common-other datadog.metrics.impl.statsd.DDAgentStatsDClientManager$TagCombiner +29 common-other datadog.metrics.impl.statsd.LoggingStatsDClient +29 common-other datadog.metrics.impl.MonitoringImpl +29 common-other datadog.metrics.impl.ThreadLocalRecording +29 common-other datadog.metrics.impl.Timer +29 common-other datadog.metrics.impl.DDSketchHistograms +29 common-other com.datadoghq.sketch.ddsketch.store.Store +29 common-other com.datadoghq.sketch.ddsketch.mapping.IndexMapping +29 common-other com.datadoghq.sketch.ddsketch.mapping.BitwiseLinearlyInterpolatedMapping +29 common-other com.datadoghq.sketch.ddsketch.mapping.LogLikeIndexMapping +29 common-other com.datadoghq.sketch.ddsketch.mapping.LogarithmicMapping +29 common-other datadog.trace.instrumentation.java.concurrent.executor.ExecutorModule$Muzzle +30 common-other datadog.trace.instrumentation.java.concurrent.WrapRunnableAsNewTaskInstrumentation$Muzzle +30 common-other datadog.common.socket.UnixDomainSocketFactory +30 common-other datadog.common.socket.NamedPipeSocketFactory +30 common-other datadog.remoteconfig.state.ProductListener +30 common-other com.datadoghq.sketch.QuantileSketch +30 common-other com.datadoghq.sketch.ddsketch.DDSketch +30 common-other com.datadoghq.sketch.ddsketch.encoding.MalformedInputException +30 common-other com.datadoghq.sketch.ddsketch.store.DenseStore +30 common-other com.datadoghq.sketch.ddsketch.store.CollapsingDenseStore +30 common-other com.datadoghq.sketch.ddsketch.store.CollapsingLowestDenseStore +30 common-other datadog.metrics.impl.DDSketchHistogram +30 common-other datadog.metrics.impl.Utils +30 common-other datadog.common.queue.Queues +30 common-other datadog.jctools.queues.MessagePassingQueue +30 common-other datadog.common.container.ContainerInfo +30 common-other datadog.common.queue.MessagePassingBlockingQueue +30 common-other datadog.jctools.queues.QueueProgressIndicators +30 common-other datadog.jctools.queues.IndexedQueueSizeUtil$IndexedQueue +30 common-other datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueuePad1 +30 common-other datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueueColdProducerFields +30 common-other datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueuePad2 +30 common-other datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueueProducerFields +30 common-other datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueuePad3 +30 common-other datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueueConsumerFields +30 common-other datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueue +30 common-other datadog.common.queue.MpscBlockingConsumerVarHandleArrayQueue +30 common-other datadog.jctools.util.Pow2 +30 common-other datadog.jctools.queues.varhandle.VarHandleQueueUtil +30 common-other datadog.jctools.util.RangeUtil +30 common-other datadog.jctools.queues.MessagePassingQueue$Consumer +30 common-other datadog.jctools.queues.MessagePassingQueue$Supplier +30 common-other datadog.jctools.queues.SupportsIterator +30 common-other datadog.jctools.queues.varhandle.ConcurrentCircularVarHandleArrayQueueL0Pad +30 common-other datadog.jctools.queues.varhandle.ConcurrentCircularVarHandleArrayQueue +30 common-other datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueColdField +30 common-other datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueL1Pad +30 common-other datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueProducerIndexFields +30 common-other datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueL2Pad +30 common-other datadog.trace.instrumentation.java.lang.module.JpmsClearanceInstrumentation$Muzzle +30 common-other datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueConsumerIndexField +30 common-other datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueL3Pad +30 common-other datadog.jctools.queues.varhandle.SpscVarHandleArrayQueue +30 common-other datadog.jctools.util.SpscLookAheadUtil +30 common-other datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueL1Pad +30 common-other datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueProducerIndexField +30 common-other datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueMidPad +30 common-other datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueProducerLimitField +30 common-other datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueL2Pad +30 common-other datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueConsumerIndexField +30 common-other datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueL3Pad +30 common-other datadog.jctools.queues.varhandle.MpscVarHandleArrayQueue +30 common-other com.datadog.appsec.AppSecSystem +30 common-other com.datadog.appsec.event.EventProducerService +30 common-other com.datadog.appsec.event.OrderedCallback +30 common-other com.datadog.appsec.event.DataListener +30 common-other com.datadog.appsec.api.security.ApiSecuritySampler +30 common-other com.datadog.appsec.util.AbortStartupException +30 common-other com.datadog.appsec.AppSecModule$AppSecModuleActivationException +30 common-other com.datadog.appsec.config.AppSecModuleConfigurer +30 common-other com.datadog.appsec.api.security.ApiSecuritySampler$NoOp +30 common-other com.datadog.appsec.event.ReplaceableEventProducerService +30 common-other com.datadog.appsec.event.EventDispatcher +30 common-other com.datadog.appsec.event.EventProducerService$DataSubscriberInfo +30 common-other com.datadog.appsec.event.ExpiredSubscriberInfoException +31 common-other com.datadog.appsec.event.data.KnownAddresses +31 common-other com.datadog.appsec.event.data.Address +31 common-other com.datadog.appsec.config.AppSecConfigService +31 common-other com.datadog.appsec.config.AppSecConfigServiceImpl +31 common-other com.datadog.ddwaf.exception.AbstractWafException +31 common-other com.datadog.ddwaf.exception.UnclassifiedWafException +31 common-other com.datadog.ddwaf.exception.InvalidRuleSetException +31 common-other com.datadog.appsec.config.AppSecConfigService$TransactionalAppSecModuleConfigurer +31 common-other datadog.remoteconfig.ConfigurationDeserializer +31 common-other com.datadog.appsec.config.AppSecModuleConfigurer$Reconfiguration +31 common-other com.datadog.appsec.config.MergedAsmFeatures +31 common-other datadog.remoteconfig.ConfigurationEndListener +31 common-other com.datadog.appsec.config.TraceSegmentPostProcessor +31 common-other com.datadog.appsec.ddwaf.WAFInitializationResultReporter +31 common-other com.datadog.appsec.ddwaf.WAFStatsReporter +31 common-other com.datadog.appsec.gateway.GatewayBridge +31 common-other com.datadog.appsec.api.security.ApiSecurityDownstreamSampler +31 common-other com.datadog.appsec.event.data.DataBundle +31 common-other com.datadog.appsec.event.EventDispatcher$DataSubscriptionSet +31 common-other com.datadog.appsec.AppSecModule +31 common-other com.datadog.appsec.ddwaf.WAFModule +31 common-other com.datadog.appsec.ddwaf.WAFResultData +31 common-other com.datadog.appsec.ddwaf.WAFResultData$Rule +31 common-other com.datadog.appsec.ddwaf.WAFResultData$RuleMatch +31 common-other com.datadog.appsec.ddwaf.WAFResultData$MatchInfo +31 common-other com.datadog.appsec.ddwaf.WAFResultData$Parameter +31 common-other com.datadog.ddwaf.Waf$Limits +31 common-other datadog.metrics.impl.StatsDCounter +31 common-other com.datadog.appsec.gateway.RateLimiter +31 common-other com.datadog.appsec.gateway.RateLimiter$ThrottledCallback +31 common-other com.datadog.appsec.config.AppSecConfigServiceImpl$TransactionalAppSecModuleConfigurerImpl +31 common-other com.datadog.appsec.config.AppSecModuleConfigurer$SubconfigListener +31 common-other com.datadog.appsec.event.OrderedCallback$CallbackPriorityComparator +31 common-other com.datadog.appsec.gateway.GatewayBridge$IGAppSecEventDependencies +31 common-other com.datadog.appsec.gateway.NoopFlow +31 common-other com.datadog.appsec.blocking.BlockingServiceImpl +31 common-other com.datadog.debugger.agent.DebuggerAgent +31 common-other com.datadog.debugger.exception.AbstractExceptionDebugger +31 common-other com.datadog.debugger.exception.FailedTestReplayExceptionDebugger +31 common-other com.datadog.debugger.exception.DefaultExceptionDebugger +31 common-other com.datadog.debugger.agent.ConfigurationAcceptor +31 common-other com.datadog.debugger.agent.DebuggerAgent$ShutdownHook +31 common-other com.datadog.debugger.agent.JsonSnapshotSerializer +31 common-other com.datadog.debugger.sink.DebuggerSink +31 common-other com.datadog.debugger.agent.ClassesToRetransformFinder +31 common-other com.datadog.debugger.agent.SourceFileTrackingTransformer +31 common-other com.datadoghq.sketch.ddsketch.mapping.DoubleBitOperationHelper +31 common-other com.datadoghq.sketch.ddsketch.store.DenseStore$2 +31 common-other com.datadoghq.sketch.ddsketch.store.DenseStore$1 +31 common-other com.datadog.debugger.agent.SourceFileTrackingTransformer$SourceFileItem +31 common-other com.datadoghq.sketch.ddsketch.store.Bin +31 common-other com.datadog.debugger.agent.DefaultDebuggerConfigUpdater +31 common-other com.datadog.debugger.sink.ProbeStatusSink +31 common-other com.datadog.debugger.util.MoshiHelper +31 common-other com.datadog.debugger.el.ProbeCondition$ProbeConditionJsonAdapter +31 common-other com.datadog.debugger.el.ValueScript$ValueScriptAdapter +31 common-other com.datadog.debugger.probe.LogProbe$Segment$SegmentJsonAdapter +31 common-other com.datadog.debugger.probe.Where$SourceLineAdapter +31 common-other com.datadog.debugger.probe.ProbeDefinition$TagAdapter +31 common-other com.datadog.debugger.agent.ProbeStatus$DiagnosticsFactory +31 common-other com.datadog.debugger.agent.ProbeStatus$DiagnosticsWrapperAdapter +31 common-other com.datadog.debugger.agent.ProbeStatus +31 common-other com.datadog.debugger.agent.ProbeStatus$Diagnostics +31 common-other com.datadog.debugger.agent.ProbeStatus$Status +32 common-other com.datadog.debugger.agent.ProbeStatus$ProbeException +32 common-other com.datadog.debugger.uploader.BatchUploader$RetryPolicy +32 common-other com.datadog.debugger.uploader.BatchUploader +32 common-other com.datadog.debugger.util.ClassNameFiltering +32 common-other com.datadog.debugger.agent.ThirdPartyLibraries +32 common-other com.datadog.debugger.agent.ThirdPartyLibraries$InternalConfig +32 common-other com.datadog.debugger.uploader.BatchUploader$ResponseCallback +32 common-other com.datadog.debugger.util.DebuggerMetrics +32 common-other com.datadog.debugger.agent.ProbeStatus$Builder +32 common-other com.datadog.debugger.util.ClassFileHelper +32 common-other datadog.instrument.asm.tree.ClassNode +32 common-other datadog.trace.instrumentation.java.concurrent.forkjoin.ForkJoinModule$Muzzle +32 common-other com.blogspot.mydailyjava.weaklockfree.WeakConcurrentMap +32 common-other com.blogspot.mydailyjava.weaklockfree.WeakConcurrentMap$1 +32 common-other com.blogspot.mydailyjava.weaklockfree.WeakConcurrentMap$LatentKey +32 common-other datadog.trace.instrumentation.java.completablefuture.CompletableFutureModule$Muzzle +32 common-other com.datadog.debugger.sink.SnapshotSink +32 common-other com.datadog.debugger.sink.SymbolSink +32 common-other com.datadog.debugger.symbol.ServiceVersion +32 common-other com.datadog.debugger.symbol.Scope +32 common-other com.datadog.debugger.symbol.ScopeType +32 common-other com.datadog.debugger.symbol.LanguageSpecifics +32 common-other com.datadog.debugger.symbol.Scope$LineRange +32 common-other com.datadog.debugger.symbol.Symbol +32 common-other com.datadog.debugger.symbol.SymbolType +32 common-other com.datadog.debugger.sink.SymbolSink$Stats +32 common-other com.datadog.debugger.sink.IntakeBatchHelper +32 common-other com.datadog.debugger.agent.ConfigurationUpdater +32 common-other com.datadog.debugger.agent.ConfigurationAcceptor$Source +32 common-other com.datadog.debugger.agent.ConfigurationUpdater$TransformerSupplier +32 common-other com.datadog.debugger.agent.Configuration +32 common-other com.datadog.debugger.agent.DebuggerTransformer$InstrumentationListener +32 common-other com.datadog.debugger.agent.ProbeMetadata +32 common-other com.datadog.debugger.agent.DebuggerTransformer +32 common-other com.timgroup.statsd.StatsDClientErrorHandler +32 common-other com.datadog.debugger.agent.StatsdMetricForwarder +32 common-other com.datadog.debugger.agent.DenyListHelper +32 common-other com.datadog.debugger.util.MoshiSnapshotHelper$CapturedValueAdapter +32 common-other com.datadog.debugger.util.MoshiSnapshotHelper$SnapshotJsonFactory +32 common-other com.datadog.debugger.util.MoshiSnapshotHelper$CapturedContextAdapter +32 common-other com.datadog.debugger.util.MoshiSnapshotHelper$CapturesAdapter +32 common-other com.datadog.debugger.util.MoshiSnapshotHelper$ProbeDetailsAdapter +32 common-other com.datadog.debugger.agent.JsonSnapshotSerializer$IntakeRequest +32 common-other com.datadog.debugger.sink.Snapshot$Captures +32 common-other com.datadog.debugger.agent.JsonSnapshotSerializer$DebuggerIntakeRequestData +32 common-other com.datadog.debugger.sink.Snapshot +32 common-other com.datadog.debugger.sink.Snapshot$CapturedThread +32 common-other com.datadog.debugger.util.MoshiSnapshotHelper$CapturedThrowableAdapter +32 common-other com.datadog.debugger.util.SerializerWithLimits$TokenWriter +32 common-other com.datadog.debugger.agent.DebuggerTracer +32 common-other com.datadog.debugger.codeorigin.DefaultCodeOriginRecorder +32 common-other com.datadog.debugger.symbol.ScopeFilter +32 common-other com.datadog.debugger.symbol.AvroFilter +32 common-other com.datadog.debugger.symbol.ProtoFilter +32 common-other com.datadog.debugger.symbol.WireFilter +32 common-other com.datadog.debugger.symbol.SymbolAggregator +32 common-other com.datadog.debugger.symbol.SymDBEnablement +32 common-other com.datadog.debugger.symbol.SymDBReport +32 common-other com.datadog.debugger.el.ProbeCondition +32 common-other com.datadog.debugger.el.ValueScript +32 common-other com.datadog.debugger.el.Visitor +32 common-other com.datadog.debugger.probe.LogProbe$Segment +32 common-other com.datadog.debugger.probe.Where$SourceLine +32 common-other com.datadog.debugger.probe.ProbeDefinition$Tag +33 common-other com.datadog.debugger.symbol.SymDbRemoteConfigRecord +33 common-other com.datadog.featureflag.FeatureFlaggingSystem +33 common-other com.datadog.featureflag.ConfigurationSourceService +33 common-other com.datadog.featureflag.ExposureWriter +33 common-other com.datadog.featureflag.FeatureFlaggingSystem$SystemInitializer +33 common-other datadog.flare.TracerFlarePoller +33 common-other datadog.flare.TracerFlarePoller$Preparer +33 common-other datadog.flare.TracerFlarePoller$AgentConfigLayer +33 common-other datadog.flare.TracerFlarePoller$AgentConfig +33 common-other datadog.flare.TracerFlarePoller$Submitter +33 common-other datadog.flare.TracerFlarePoller$AgentTask +33 common-other datadog.flare.TracerFlarePoller$AgentTaskArgs +33 common-other datadog.flare.TracerFlareService +34 early datadog.trace.instrumentation.googlepubsub.GooglePubSubModule +34 early datadog.trace.instrumentation.mule4.JpmsMuleInstrumentation +34 early datadog.trace.instrumentation.reactor.core.ReactorCoreModule +34 early datadog.trace.instrumentation.akka.concurrent.AkkaForkJoinTaskInstrumentation +34 early datadog.trace.instrumentation.graal.nativeimage.VMRuntimeModule +34 early datadog.trace.instrumentation.jetty11.JettyServerInstrumentation +34 early datadog.trace.instrumentation.jetty12.JettyServerInstrumentation +34 early datadog.trace.instrumentation.jetty9.JettyServerInstrumentation +34 early datadog.trace.instrumentation.scala.concurrent.ScalaConcurrentModule +34 early datadog.trace.instrumentation.springamqp.AbstractMessageListenerContainerInstrumentation +34 early datadog.trace.instrumentation.springscheduling.SpringSchedulingInstrumentation +34 early datadog.trace.instrumentation.tomcat.TomcatServerInstrumentation +34 early datadog.trace.instrumentation.zio.v2_0.ZioRuntimeInstrumentation +34 early datadog.trace.instrumentation.java.completablefuture.CompletableFutureModule +34 early datadog.trace.instrumentation.java.concurrent.executor.ExecutorModule +34 early datadog.trace.instrumentation.java.concurrent.forkjoin.ForkJoinModule +34 early datadog.trace.instrumentation.java.concurrent.runnable.RunnableFutureInstrumentation +34 early datadog.trace.instrumentation.java.lang.jdk21.VirtualThreadInstrumentation +34 early datadog.trace.instrumentation.httpclient.JpmsInetAddressInstrumentation +34 early datadog.trace.instrumentation.jetty_client10.JettyClientInstrumentation +34 early datadog.trace.instrumentation.jetty_client12.JettyHttpClientInstrumentation +34 early datadog.trace.instrumentation.jetty_client91.JettyClientInstrumentation +34 early datadog.trace.instrumentation.jetty10.JettyServerInstrumentation +34 early datadog.trace.instrumentation.scala210.concurrent.ScalaPromiseModule +34 early datadog.trace.instrumentation.scala213.concurrent.ScalaPromiseModule +35 targets-0001 datadog.trace.instrumentation.aerospike4.AerospikeModule +35 targets-0001 datadog.trace.instrumentation.axway.AxwayHTTPPluginInstrumentation +35 targets-0001 datadog.trace.instrumentation.caffeine.BoundedLocalCacheInstrumentation +35 targets-0001 datadog.trace.instrumentation.cics.CicsModule +35 targets-0001 datadog.trace.instrumentation.cxf.InvokerInstrumentation +35 targets-0001 datadog.trace.instrumentation.datanucleus.DatanucleusModule +35 targets-0001 datadog.trace.instrumentation.finatra.FinatraInstrumentation +35 targets-0001 datadog.trace.instrumentation.glassfish.GlassFishInstrumentation +35 targets-0001 datadog.trace.instrumentation.grpc.server.GrpcServerModule +35 targets-0001 datadog.trace.instrumentation.hystrix.HystrixInstrumentation +35 targets-0001 datadog.trace.instrumentation.ignite.v2.IgniteModule +35 targets-0001 datadog.trace.instrumentation.jdbc.DB2ConnectionInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.DB2PreparedStatementInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.DBMCompatibleConnectionInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.DataSourceInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.Dbcp2LinkedBlockingDequeInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.Dbcp2ManagedConnectionInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.Dbcp2PerUserPoolDataSourceInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.Dbcp2PoolingDataSourceInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.Dbcp2PoolingDriverInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.Dbcp2SharedPoolDataSourceInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.DefaultConnectionInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.DriverInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.HikariConcurrentBagHandoffQueueInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.HikariConcurrentBagInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.HikariDataSourceInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.HikariPoolInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.HikariQueuedSequenceSynchronizerInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.PreparedStatementInstrumentation +35 targets-0001 datadog.trace.instrumentation.jdbc.StatementInstrumentation +35 targets-0001 datadog.trace.instrumentation.jsp.JSPInstrumentation +35 targets-0001 datadog.trace.instrumentation.jsp.JasperJSPCompilationContextInstrumentation +35 targets-0001 datadog.trace.instrumentation.logback.LoggingEventInstrumentation +35 targets-0001 datadog.trace.instrumentation.mule4.EventContextInstrumentation +35 targets-0001 datadog.trace.instrumentation.mule4.EventTracerInstrumentation +35 targets-0001 datadog.trace.instrumentation.mule4.ExecutionInitialSpanInfoInstrumentation +35 targets-0001 datadog.trace.instrumentation.osgi43.BundleReferenceInstrumentation +35 targets-0001 datadog.trace.instrumentation.quartz.QuartzSchedulingInstrumentation +35 targets-0001 datadog.trace.instrumentation.rabbitmq.amqp.RabbitCommandInstrumentation +35 targets-0001 datadog.trace.instrumentation.ratpack.ContinuationInstrumentation +35 targets-0001 datadog.trace.instrumentation.ratpack.DefaultExecutionInstrumentation +35 targets-0001 datadog.trace.instrumentation.ratpack.ServerErrorHandlerInstrumentation +35 targets-0001 datadog.trace.instrumentation.ratpack.ServerRegistryInstrumentation +35 targets-0001 datadog.trace.instrumentation.reactor.netty.HttpClientInstrumentation +35 targets-0001 datadog.trace.instrumentation.rediscala.RedisClientActorInstrumentation +35 targets-0001 datadog.trace.instrumentation.rediscala.RediscalaInstrumentation +35 targets-0001 datadog.trace.instrumentation.renaissance.RenaissanceInstrumentation +35 targets-0001 datadog.trace.instrumentation.restlet.ResourceInstrumentation +35 targets-0001 datadog.trace.instrumentation.restlet.RouteInstrumentation +35 targets-0001 datadog.trace.instrumentation.slick.SlickRunnableInstrumentation +35 targets-0001 datadog.trace.instrumentation.spray.SprayHttpServerInstrumentation +35 targets-0001 datadog.trace.instrumentation.spymemcached.MemcachedClientInstrumentation +35 targets-0001 datadog.trace.instrumentation.spymemcached.MemcachedConnectionInstrumentation +35 targets-0001 datadog.trace.instrumentation.synapse3.SynapseClientWorkerInstrumentation +35 targets-0001 datadog.trace.instrumentation.synapse3.SynapsePassthruInstrumentation +35 targets-0001 datadog.trace.instrumentation.synapse3.SynapseServerWorkerInstrumentation +35 targets-0001 datadog.trace.instrumentation.tinylog2.LogEntryInstrumentation +35 targets-0001 datadog.trace.instrumentation.tinylog2.TinylogLoggingProviderInstrumentation +35 targets-0001 datadog.trace.instrumentation.twilio.TwilioAsyncInstrumentation +35 targets-0001 datadog.trace.instrumentation.twilio.TwilioSyncInstrumentation +35 targets-0001 datadog.trace.instrumentation.valkey.ValkeyInstrumentation +35 targets-0001 datadog.trace.instrumentation.websphere_jmx.WebsphereSecurityInstrumentation +35 targets-0001 datadog.trace.instrumentation.wildfly.EnvEntryInjectionSourceInstrumentation +35 targets-0001 datadog.trace.instrumentation.wildfly.ResourceReferenceProcessorInstrumentation +36 targets-0001 datadog.trace.instrumentation.akka.init.DisableTracingActorInitInstrumentation +36 targets-0001 datadog.trace.instrumentation.armeria.grpc.server.HandlerRegistryBuilderInstrumentation +36 targets-0001 datadog.trace.instrumentation.armeria.jetty.ArmeriaHttpConnectionInstrumentation +36 targets-0001 datadog.trace.instrumentation.armeria.jetty.ArmeriaJettyInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v2.dynamodb.DynamoDbClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v2.eventbridge.EventBridgeClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v1.lambda.LambdaHandlerInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v2.s3.S3ClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v0.AwsSdkModule +36 targets-0001 datadog.trace.instrumentation.aws.v0.EmrSdkModule +36 targets-0001 datadog.trace.instrumentation.aws.v2.AwsSdkModule +36 targets-0001 datadog.trace.instrumentation.aws.v2.sfn.SfnClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v1.sns.SnsClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v2.sns.SnsClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v1.sqs.QueueBufferConfigInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v1.sqs.SqsClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v1.sqs.SqsJmsMessageInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v1.sqs.SqsReceiveRequestInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v1.sqs.SqsReceiveResultInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v2.sqs.SqsJmsMessageInstrumentation +36 targets-0001 datadog.trace.instrumentation.aws.v2.sqs.SqsModule +36 targets-0001 datadog.trace.instrumentation.confluentschemaregistry.ConfluentSchemaRegistryModule +36 targets-0001 datadog.trace.instrumentation.couchbase.client.CouchbaseBucketInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase.client.CouchbaseClusterInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase.client.CouchbaseCoreInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase.client.CouchbaseNetworkInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase_31.client.BaseRequestInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase_31.client.CoreEnvironmentBuilderInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase_31.client.CoreInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase_31.client.DefaultErrorUtilInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase_32.client.BaseRequestInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase_32.client.CoreEnvironmentBuilderInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase_32.client.CoreInstrumentation +36 targets-0001 datadog.trace.instrumentation.couchbase_32.client.DefaultErrorUtilInstrumentation +36 targets-0001 datadog.trace.instrumentation.datastax.cassandra.CassandraClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.datastax.cassandra.CassandraClusterInstrumentation +36 targets-0001 datadog.trace.instrumentation.datastax.cassandra38.CassandraClusterInstrumentation +36 targets-0001 datadog.trace.instrumentation.datastax.cassandra4.CassandraClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.dropwizard.view.DropwizardViewInstrumentation +36 targets-0001 datadog.trace.instrumentation.elasticsearch5.Elasticsearch5RestClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.elasticsearch6_4.Elasticsearch6RestClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.elasticsearch7.Elasticsearch7RestClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.elasticsearch2.Elasticsearch2TransportClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.elasticsearch5.Elasticsearch5TransportClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.elasticsearch5_3.Elasticsearch53TransportClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.elasticsearch6.Elasticsearch6TransportClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.elasticsearch7_3.Elasticsearch73TransportClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.graphqljava14.GraphQLJavaInstrumentation +36 targets-0001 datadog.trace.instrumentation.graphqljava20.GraphQLJavaInstrumentation +36 targets-0001 datadog.trace.instrumentation.graphqljava.GraphQLUnwrapExceptionInstrumentation +36 targets-0001 datadog.trace.instrumentation.grizzlyhttp232.GrizzlyFilterChainModule +36 targets-0001 datadog.trace.instrumentation.hazelcast36.HazelcastLegacyModule +36 targets-0001 datadog.trace.instrumentation.hazelcast39.HazelcastModule +36 targets-0001 datadog.trace.instrumentation.hazelcast4.HazelcastModule +36 targets-0001 datadog.trace.instrumentation.hibernate.core.v3_3.HibernateModule +36 targets-0001 datadog.trace.instrumentation.hibernate.core.v4_0.HibernateModule +36 targets-0001 datadog.trace.instrumentation.hibernate.core.v4_3.HibernateModule +36 targets-0001 datadog.trace.instrumentation.rmi.client.RmiClientInstrumentation +36 targets-0001 datadog.trace.instrumentation.rmi.context.client.RmiClientContextInstrumentation +36 targets-0001 datadog.trace.instrumentation.rmi.context.server.RmiServerContextInstrumentation +36 targets-0001 datadog.trace.instrumentation.rmi.server.RmiServerInstrumentation +36 targets-0001 datadog.trace.instrumentation.jbosslogmanager.ExtLogRecordInstrumentation +36 targets-0001 datadog.trace.instrumentation.jbosslogmanager.LoggerNodeInstrumentation +36 targets-0001 datadog.trace.instrumentation.jbossmodules.ModuleInstrumentation +37 targets-0001 datadog.trace.instrumentation.jedis.JedisInstrumentation +37 targets-0001 datadog.trace.instrumentation.jedis30.JedisInstrumentation +37 targets-0001 datadog.trace.instrumentation.jedis40.JedisInstrumentation +37 targets-0001 datadog.trace.instrumentation.connection_error.jersey.ClientRuntimeInstrumentation +37 targets-0001 datadog.trace.instrumentation.jaxrs2.JerseyRequestContextInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty11.RequestInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty12.ContextHandlerInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty70.JettyGeneratorInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty70.RequestInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty70.ServerHandleInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty76.JettyGeneratorInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty76.RequestInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty76.ServerHandleInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty9.RequestInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty9.ServerHandleInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty9.WebSocketSessionInstrumentation +37 targets-0001 datadog.trace.instrumentation.jetty_util.QueuedThreadPoolInstrumentation +37 targets-0001 datadog.trace.instrumentation.springjms.AbstractPollingMessageListenerContainerInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_streams.KafkaStreamsSourceNodeRecordDeserializerInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_clients.ConsumerCoordinatorInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_clients.KafkaConsumerInfoInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_clients.KafkaConsumerInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_clients.MetadataInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_clients38.ConsumerCoordinatorInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_clients38.KafkaConsumerInfoInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_clients38.KafkaConsumerInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_clients38.LegacyKafkaConsumerInfoInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_clients38.MessageListenerInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_clients38.MetadataInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_streams10.InternalTopologyBuilderInstrumentation +37 targets-0001 datadog.trace.instrumentation.kafka_connect.ConnectWorkerInstrumentation +37 targets-0001 datadog.trace.instrumentation.lettuce4.LettuceAsyncCommandsInstrumentation +37 targets-0001 datadog.trace.instrumentation.lettuce4.LettuceClientInstrumentation +37 targets-0001 datadog.trace.instrumentation.lettuce5.LettuceAsyncCommandsInstrumentation +37 targets-0001 datadog.trace.instrumentation.lettuce5.LettuceClientInstrumentation +37 targets-0001 datadog.trace.instrumentation.lettuce5.LettuceReactiveClientInstrumentation +37 targets-0001 datadog.trace.instrumentation.lettuce5.MasterReplicaConnectionProviderInstrumentation +37 targets-0001 datadog.trace.instrumentation.liberty20.RequestFinishInstrumentation +37 targets-0001 datadog.trace.instrumentation.liberty20.ResponseFinishInstrumentation +37 targets-0001 datadog.trace.instrumentation.liberty20.ThreadContextClassloaderInstrumentation +37 targets-0001 datadog.trace.instrumentation.servlet3.AsyncContextInstrumentation +37 targets-0001 datadog.trace.instrumentation.servlet3.RumAsyncContextInstrumentation +37 targets-0001 datadog.trace.instrumentation.servlet3.Servlet3Instrumentation +37 targets-0001 datadog.trace.instrumentation.liberty23.RequestFinishInstrumentation +37 targets-0001 datadog.trace.instrumentation.liberty23.ResponseFinishInstrumentation +37 targets-0001 datadog.trace.instrumentation.servlet5.JakartaServletInstrumentation +37 targets-0001 datadog.trace.instrumentation.servlet5.RumAsyncContextInstrumentation +37 targets-0001 datadog.trace.instrumentation.log4j1.CategoryInstrumentation +37 targets-0001 datadog.trace.instrumentation.log4j1.LoggingEventInstrumentation +37 targets-0001 datadog.trace.instrumentation.log4j2.ThreadContextInstrumentation +37 targets-0001 datadog.trace.instrumentation.log4j27.ContextDataInjectorFactoryInstrumentation +37 targets-0001 datadog.trace.instrumentation.mongo.BaseCluster410Instrumentation +37 targets-0001 datadog.trace.instrumentation.mongo.BaseClusterInstrumentation +37 targets-0001 datadog.trace.instrumentation.mongo.DefaultConnectionPool410Instrumentation +37 targets-0001 datadog.trace.instrumentation.mongo.DefaultConnectionPoolInstrumentation +37 targets-0001 datadog.trace.instrumentation.mongo.InternalStreamConnectionInstrumentation +37 targets-0001 datadog.trace.instrumentation.mongo.ByteBufBsonDocumentInstrumentation +37 targets-0001 datadog.trace.instrumentation.mongo.MongoClient31Instrumentation +37 targets-0001 datadog.trace.instrumentation.mongo.MongoClient34Instrumentation +37 targets-0001 datadog.trace.instrumentation.mongo.DefaultServerConnection36Instrumentation +37 targets-0001 datadog.trace.instrumentation.mongo.DefaultServerConnection38Instrumentation +37 targets-0001 datadog.trace.instrumentation.netty38.ChannelFutureListenerInstrumentation +37 targets-0001 datadog.trace.instrumentation.netty38.NettyChannelPipelineInstrumentation +37 targets-0001 datadog.trace.instrumentation.netty38.NettyChannelInstrumentation +38 targets-0001 datadog.trace.instrumentation.netty40.ChannelFutureListenerInstrumentation +38 targets-0001 datadog.trace.instrumentation.netty40.NettyChannelHandlerContextInstrumentation +38 targets-0001 datadog.trace.instrumentation.netty41.ChannelFutureListenerInstrumentation +38 targets-0001 datadog.trace.instrumentation.netty41.Http2MultiplexHandlerStreamChannelInstrumentation +38 targets-0001 datadog.trace.instrumentation.netty41.NettyChannelHandlerContextInstrumentation +38 targets-0001 datadog.trace.instrumentation.vertx_4_0.client.HttpClientRequestBaseInstrumentation +38 targets-0001 datadog.trace.instrumentation.vertx_4_0.server.HttpServerResponseEndHandlerInstrumentation +38 targets-0001 datadog.trace.instrumentation.vertx_4_0.server.RouteHandlerInstrumentation +38 targets-0001 datadog.trace.instrumentation.okhttp2.OkHttp2Instrumentation +38 targets-0001 datadog.trace.instrumentation.okhttp3.OkHttp3Instrumentation +38 targets-0001 datadog.trace.instrumentation.openai_java.ChatCompletionModule +38 targets-0001 datadog.trace.instrumentation.openai_java.CompletionModule +38 targets-0001 datadog.trace.instrumentation.openai_java.EmbeddingModule +38 targets-0001 datadog.trace.instrumentation.openai_java.ResponseModule +38 targets-0001 datadog.trace.instrumentation.opensearch.OpensearchRestClientInstrumentation +38 targets-0001 datadog.trace.instrumentation.opensearch.OpensearchTransportClientInstrumentation +38 targets-0001 datadog.trace.instrumentation.opensearch.ThreadedActionListenerInstrumentation +38 targets-0001 datadog.trace.instrumentation.opentelemetry.OpenTelemetryInstrumentation +38 targets-0001 datadog.trace.instrumentation.opentelemetry127.OpenTelemetryLogsInstrumentation +38 targets-0001 datadog.trace.instrumentation.opentelemetry14.OpenTelemetryInstrumentation +38 targets-0001 datadog.trace.instrumentation.opentelemetry14.context.OpenTelemetryContextInstrumentation +38 targets-0001 datadog.trace.instrumentation.opentelemetry14.context.OpenTelemetryContextStorageInstrumentation +38 targets-0001 datadog.trace.instrumentation.opentelemetry147.OpenTelemetryMetricsInstrumentation +38 targets-0001 datadog.trace.instrumentation.opentelemetry.annotations.AddingSpanAttributesInstrumentation +38 targets-0001 datadog.trace.instrumentation.opentelemetry.annotations.WithSpanAnnotationInstrumentation +38 targets-0001 datadog.trace.instrumentation.opentracing31.GlobalTracerInstrumentation +38 targets-0001 datadog.trace.instrumentation.opentracing32.GlobalTracerInstrumentation +38 targets-0001 datadog.trace.instrumentation.pekkohttp.PekkoHttp2ServerInstrumentation +38 targets-0001 datadog.trace.instrumentation.pekkohttp.PekkoHttpServerInstrumentation +38 targets-0001 datadog.trace.instrumentation.pekkohttp.PekkoPoolMasterActorInstrumentation +38 targets-0001 datadog.trace.instrumentation.play23.PlayInstrumentation +38 targets-0001 datadog.trace.instrumentation.play24.PlayInstrumentation +38 targets-0001 datadog.trace.instrumentation.play26.PlayInstrumentation +38 targets-0001 datadog.trace.instrumentation.play26.SaveRawRemoteConnectionInstrumentation +38 targets-0001 datadog.trace.instrumentation.redisson.RedissonInstrumentation +38 targets-0001 datadog.trace.instrumentation.redisson23.RedissonInstrumentation +38 targets-0001 datadog.trace.instrumentation.redisson30.RedissonInstrumentation +38 targets-0001 datadog.trace.instrumentation.resilience4j.Resilience4jReactorModule +38 targets-0001 datadog.trace.instrumentation.resilience4j.Resilience4jModule +38 targets-0001 datadog.trace.instrumentation.connection_error.resteasy.ResteasyClientConnectionErrorInstrumentation +38 targets-0001 datadog.trace.instrumentation.jakarta3.ContainerRequestFilterInstrumentation +38 targets-0001 datadog.trace.instrumentation.jakarta3.DefaultRequestContextInstrumentation +38 targets-0001 datadog.trace.instrumentation.jakarta3.JakartaRsAnnotationsInstrumentation +38 targets-0001 datadog.trace.instrumentation.jakarta3.JakartaRsAsyncResponseInstrumentation +38 targets-0001 datadog.trace.instrumentation.servicetalk0_42_0.ContextMapInstrumentation +38 targets-0001 datadog.trace.instrumentation.servicetalk0_42_0.ContextPreservingInstrumentation +38 targets-0001 datadog.trace.instrumentation.servicetalk0_42_56.CapturedContextProvidersInstrumentation +38 targets-0001 datadog.trace.instrumentation.sofarpc.SofaRpcModule +38 targets-0001 datadog.trace.instrumentation.spark.Spark212Instrumentation +38 targets-0001 datadog.trace.instrumentation.spark.Spark213Instrumentation +38 targets-0001 datadog.trace.instrumentation.spark.OpenLineageInstrumentation +38 targets-0001 datadog.trace.instrumentation.spark.SparkExitInstrumentation +38 targets-0001 datadog.trace.instrumentation.spark.SparkLauncherInstrumentation +38 targets-0001 datadog.trace.instrumentation.spark.SparkExecutorInstrumentation +38 targets-0001 datadog.trace.instrumentation.sparkjava.RoutesInstrumentation +38 targets-0001 datadog.trace.instrumentation.springbeans.BeanFactoryInstrumentation +38 targets-0001 datadog.trace.instrumentation.springboot.SBCodeOriginInstrumentation +38 targets-0001 datadog.trace.instrumentation.springboot.SpringApplicationInstrumentation +38 targets-0001 datadog.trace.instrumentation.springboot.SpringServletInitializerInstrumentation +38 targets-0001 datadog.trace.instrumentation.springcloudzuul2.ZuulProxyRequestHelperInstrumentation +38 targets-0001 datadog.trace.instrumentation.springcloudzuul2.ZuulSendForwardFilterInstrumentation +38 targets-0001 datadog.trace.instrumentation.springdata.SpringRepositoryInstrumentation +38 targets-0001 datadog.trace.instrumentation.springmessaging.KotlinAwareHandlerInstrumentation +38 targets-0001 datadog.trace.instrumentation.springamqp.BlockingQueueConsumerInstrumentation +39 targets-0001 datadog.trace.instrumentation.springamqp.DeliveryInstrumentation +39 targets-0001 datadog.trace.instrumentation.springscheduling.SpringAsyncInstrumentation +39 targets-0001 datadog.trace.instrumentation.springws2.MethodEndpointInstrumentation +39 targets-0001 datadog.trace.instrumentation.tibcobw5.JobInstrumentation +39 targets-0001 datadog.trace.instrumentation.tibcobw5.JobPoolInstrumentation +39 targets-0001 datadog.trace.instrumentation.tibcobw5.TaskInstrumentation +39 targets-0001 datadog.trace.instrumentation.tibcobw5.ThreadPoolInstrumentation +39 targets-0001 datadog.trace.instrumentation.tibcobw6.BehaviorInstrumentation +39 targets-0001 datadog.trace.instrumentation.tibcobw6.CallbackHandlerInstrumentation +39 targets-0001 datadog.trace.instrumentation.tibcobw6.JmsMessageGetterInstrumentation +39 targets-0001 datadog.trace.instrumentation.tibcobw6.ProcessInstrumentation +39 targets-0001 datadog.trace.instrumentation.tomcat.ContainerBaseInstrumentation +39 targets-0001 datadog.trace.instrumentation.tomcat.RequestInstrumentation +39 targets-0001 datadog.trace.instrumentation.tomcat.ResponseInstrumentation +39 targets-0001 datadog.trace.instrumentation.tomcat.WsHandshakeRequestInstrumentation +39 targets-0001 datadog.trace.instrumentation.tomcat.WsHttpUpgradeHandlerInstrumentation +39 targets-0001 datadog.trace.instrumentation.tomcat9.WebappClassLoaderInstrumentation +39 targets-0001 datadog.trace.instrumentation.undertow.HttpRequestParserInstrumentation +39 targets-0001 datadog.trace.instrumentation.undertow.RequestParserInstrumentation +39 targets-0001 datadog.trace.instrumentation.undertow.ServletInstrumentation +39 targets-0001 datadog.trace.instrumentation.undertow.UndertowInstrumentation +39 targets-0001 datadog.trace.instrumentation.undertow.JakartaServletInstrumentation +39 targets-0001 datadog.trace.instrumentation.vertx_sql_client_39.CursorImplInstrumentation +39 targets-0001 datadog.trace.instrumentation.vertx_sql_client_39.PreparedQueryInstrumentation +39 targets-0001 datadog.trace.instrumentation.vertx_sql_client_39.PreparedStatementImplInstrumentation +39 targets-0001 datadog.trace.instrumentation.vertx_sql_client_39.QueryImplInstrumentation +39 targets-0001 datadog.trace.instrumentation.vertx_sql_client_39.SqlClientBaseInstrumentation +39 targets-0001 datadog.trace.instrumentation.vertx_sql_client_39.SqlConnectionBaseInstrumentation +39 targets-0001 datadog.trace.instrumentation.websocket.jsr256.JavaxWebsocketModule +39 targets-0001 datadog.trace.instrumentation.websocket.jsr256.JakartaWebsocketModule +39 targets-0001 datadog.trace.instrumentation.jakartaws.WebServiceInstrumentation +39 targets-0001 datadog.trace.instrumentation.akkahttp.AkkaHttp2ServerInstrumentation +39 targets-0001 datadog.trace.instrumentation.akkahttp.AkkaHttpServerInstrumentation +39 targets-0001 datadog.trace.instrumentation.akkahttp.AkkaPoolMasterActorInstrumentation +39 targets-0001 datadog.trace.instrumentation.micronaut.v2_0.MicronautInstrumentation +39 targets-0001 datadog.trace.instrumentation.micronaut.v3_0.MicronautInstrumentation +39 targets-0001 datadog.trace.instrumentation.micronaut.v4_0.MicronautInstrumentation +39 targets-0001 datadog.trace.instrumentation.micronaut.MicronautCodeOriginInstrumentation +39 targets-0001 datadog.trace.instrumentation.springweb6.DispatcherServletInstrumentation +39 targets-0001 datadog.trace.instrumentation.springweb6.HandlerAdapterInstrumentation +39 targets-0001 datadog.trace.instrumentation.springweb6.InvocableHandlerMethodInstrumentation +39 targets-0001 datadog.trace.instrumentation.springweb6.ResourceNameFilterMappingInstrumentation +39 targets-0001 datadog.trace.instrumentation.springweb6.ServletPathRequestFilterInstrumentation +39 targets-0001 datadog.trace.instrumentation.springweb6.SpringWebCodeOriginInstrumentation +39 targets-0001 datadog.trace.instrumentation.springweb6.WebApplicationContextInstrumentation +39 targets-0001 datadog.trace.instrumentation.java.lang.jdk22.FFMApiModule +39 targets-0001 datadog.trace.instrumentation.trace_annotation.DoNotTraceAnnotationInstrumentation +39 targets-0001 datadog.trace.instrumentation.trace_annotation.TraceAnnotationsInstrumentation +39 targets-0001 datadog.trace.instrumentation.trace_annotation.TraceConfigInstrumentation +39 targets-0001 datadog.trace.instrumentation.elasticsearch.ThreadedActionListenerInstrumentation +39 targets-0001 datadog.trace.instrumentation.java.lang.ProcessImplInstrumentation +39 targets-0001 datadog.trace.instrumentation.java.lang.ShutdownInstrumentation +39 targets-0001 datadog.trace.instrumentation.java.lang.management.CustomMBeanBuilderInstrumentation +39 targets-0001 datadog.trace.instrumentation.java.lang.classloading.DefineClassInstrumentation +39 targets-0001 datadog.trace.instrumentation.java.net.HttpUrlConnectionInstrumentation +39 targets-0001 datadog.trace.instrumentation.java.net.UrlInstrumentation +39 targets-0001 datadog.trace.instrumentation.httpclient.HttpClientInstrumentation +39 targets-0001 datadog.trace.instrumentation.jetty_client91.FutureResponseListenerInstrumentation +39 targets-0001 datadog.trace.instrumentation.jetty_client91.JettyAddListenerInstrumentation +39 targets-0001 datadog.trace.instrumentation.jetty10.RequestInstrumentation +39 targets-0001 datadog.trace.instrumentation.jetty10.ServerHandleInstrumentation +39 targets-0001 datadog.trace.instrumentation.jaxrs2.Resteasy30RequestContextInstrumentation +39 targets-0001 datadog.trace.instrumentation.jaxrs2.Resteasy31RequestContextInstrumentation +39 targets-0001 datadog.trace.instrumentation.servlet2.Servlet2Instrumentation +40 targets-0001 datadog.trace.instrumentation.servlet2.Servlet2ResponseStatusInstrumentation +40 targets-0001 datadog.trace.instrumentation.servlet.dispatcher.RequestDispatcherInstrumentation +40 targets-0001 datadog.trace.instrumentation.servlet.dispatcher.ServletContextInstrumentation +40 targets-0001 datadog.trace.instrumentation.servlet.filter.FilterInstrumentation +40 targets-0001 datadog.trace.instrumentation.servlet.http.HttpServletInstrumentation +40 targets-0001 datadog.trace.instrumentation.servlet.http.HttpServletResponseInstrumentation +40 targets-0001 datadog.trace.instrumentation.springwebflux.client.WebClientFilterInstrumentation +40 targets-0001 datadog.trace.instrumentation.springwebflux.server.DispatcherHandlerInstrumentation +40 targets-0001 datadog.trace.instrumentation.springwebflux.server.HandlerAdapterInstrumentation +40 targets-0001 datadog.trace.instrumentation.springwebflux.server.RouterFunctionInstrumentation +40 targets-0001 datadog.trace.instrumentation.springweb.DispatcherServletInstrumentation +40 targets-0001 datadog.trace.instrumentation.springweb.HandlerAdapterInstrumentation +40 targets-0001 datadog.trace.instrumentation.springweb.InvocableHandlerMethodInstrumentation +40 targets-0001 datadog.trace.instrumentation.springweb.SpringBeanProcessorInstrumentation +40 targets-0001 datadog.trace.instrumentation.springweb.WebApplicationContextInstrumentation +40 targets-0001 datadog.trace.instrumentation.springweb.ServletPathRequestFilterInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_sql_client.MySQLConnectionFactoryInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_sql_client.MySQLConnectionImplInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_sql_client.MySQLPoolImplInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_sql_client_4.MySQLConnectionFactoryInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_sql_client_4.MySQLConnectionImplInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_sql_client_4.MySQLPoolImplInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_sql_client_4_4_2.MySQLConnectionFactoryInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_sql_client_4_4_2.MySQLDriverInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_sql_client_4_4_2.SqlConnectionBaseInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_pg_client_4.PgConnectionFactoryInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_pg_client_4.PgConnectionImplInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_pg_client_4.PgPoolImplInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_pg_client_4_4_2.PgConnectionFactoryInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_pg_client_4_4_2.PgDriverInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_redis_client.CommandImplInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_redis_client.RedisAPIInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_redis_client.RedisInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_redis_client.RequestImplInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_3_4.server.HttpServerResponseEndHandlerInstrumentation +40 targets-0001 datadog.trace.instrumentation.vertx_3_4.server.RouteHandlerInstrumentation +40 targets-0001 datadog.trace.instrumentation.websocket.jetty10.Jetty10JavaxPojoWebSocketModule +40 targets-0001 datadog.trace.instrumentation.websocket.jetty11.Jetty11JakartaPojoWebsocketModule +40 targets-0001 datadog.trace.instrumentation.websocket.jetty12.Jetty12EE10JakartaPojoWebsocketModule +40 targets-0001 datadog.trace.instrumentation.websocket.jetty12.Jetty12EE8JavaxPojoWebsocketModule +40 targets-0001 datadog.trace.instrumentation.websocket.jetty12.Jetty12EE9JakartaPojoWebsocketModule +40 targets-0001 datadog.trace.instrumentation.jaxws1.WebServiceInstrumentation +40 targets-0001 datadog.trace.instrumentation.jaxws2.WebServiceProviderInstrumentation +40 targets-0001 datadog.trace.instrumentation.jaxrs1.JaxRsAnnotationsInstrumentation +40 targets-0001 datadog.trace.instrumentation.jaxrs2.ContainerRequestFilterInstrumentation +40 targets-0001 datadog.trace.instrumentation.jaxrs2.DefaultRequestContextInstrumentation +40 targets-0001 datadog.trace.instrumentation.jaxrs2.JaxRsAnnotationsInstrumentation +40 targets-0001 datadog.trace.instrumentation.jaxrs2.JaxRsAsyncResponseInstrumentation +40 targets-0001 datadog.trace.instrumentation.jaxrs.JaxRsClientInstrumentation +41 targets-0004 datadog.trace.instrumentation.commons.fileupload.CommonsFileUploadAppSecInstrumentation +41 targets-0004 datadog.trace.instrumentation.ognl.OgnlInstrumentation +41 targets-0004 datadog.trace.instrumentation.ratpack.ContextParseInstrumentation +41 targets-0004 datadog.trace.instrumentation.ratpack.JsonRendererInstrumentation +41 targets-0004 datadog.trace.instrumentation.ratpack.PathHandlerInstrumentation +41 targets-0004 datadog.trace.instrumentation.ratpack.RatpackRequestBodyInstrumentation +41 targets-0004 datadog.trace.instrumentation.ratpack.RatpackTypedDataInstrumentation +41 targets-0004 datadog.trace.instrumentation.grizzlyhttp232.GrizzlyBodyModule +41 targets-0004 datadog.trace.instrumentation.grizzlyhttp232.ParsedBodyParametersInstrumentation +41 targets-0004 datadog.trace.instrumentation.jetty12.AbstractSessionManagerInstrumentation +41 targets-0004 datadog.trace.instrumentation.jetty70.JettyCommitResponseInstrumentation +41 targets-0004 datadog.trace.instrumentation.jetty76.JettyCommitResponseInstrumentation +41 targets-0004 datadog.trace.instrumentation.jetty904.JettyCommitResponseInstrumentation +41 targets-0004 datadog.trace.instrumentation.jetty93.JettyCommitResponseInstrumentation +41 targets-0004 datadog.trace.instrumentation.jetty9421.JettyCommitResponseInstrumentation +41 targets-0004 datadog.trace.instrumentation.jetty9.JettyCommitResponseInstrumentation +41 targets-0004 datadog.trace.instrumentation.liberty20.GetPartsInstrumentation +41 targets-0004 datadog.trace.instrumentation.liberty20.HttpInboundServiceContextImplInstrumentation +41 targets-0004 datadog.trace.instrumentation.liberty20.ParseParametersInstrumentation +41 targets-0004 datadog.trace.instrumentation.liberty20.ParsePostDataInstrumentation +41 targets-0004 datadog.trace.instrumentation.liberty20.WebAppHandleExceptionInstrumentation +41 targets-0004 datadog.trace.instrumentation.liberty23.HttpInboundServiceContextImplInstrumentation +41 targets-0004 datadog.trace.instrumentation.liberty23.ParseParametersInstrumentation +41 targets-0004 datadog.trace.instrumentation.liberty23.ParsePostDataInstrumentation +41 targets-0004 datadog.trace.instrumentation.liberty23.WebAppHandleExceptionInstrumentation +41 targets-0004 datadog.trace.instrumentation.netty41.HttpPostRequestDecoderInstrumentation +41 targets-0004 datadog.trace.instrumentation.vertx_4_0.server.HttpServerRequestInstrumentation +41 targets-0004 datadog.trace.instrumentation.vertx_4_0.server.RequestBodyInstrumentation +41 targets-0004 datadog.trace.instrumentation.vertx_4_0.server.RoutingContextImplInstrumentation +41 targets-0004 datadog.trace.instrumentation.vertx_4_0.server.RoutingContextInstrumentation +41 targets-0004 datadog.trace.instrumentation.vertx_4_0.server.VertxHandlerInstrumentation +41 targets-0004 datadog.trace.instrumentation.vertx_4_0.server.VertxImplInstrumentation +41 targets-0004 datadog.trace.instrumentation.vertx_5_0.server.HttpServerRequestInstrumentation +41 targets-0004 datadog.trace.instrumentation.vertx_5_0.server.RoutingContextImplInstrumentation +41 targets-0004 datadog.trace.instrumentation.okhttp2.AppSecHttpEngineInstrumentation +41 targets-0004 datadog.trace.instrumentation.okhttp3.AppSecHttpEngineInstrumentation +41 targets-0004 datadog.trace.instrumentation.play27.appsec.RoutingDsl27Instrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.DelegatingBodyParserInstrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.FormUrlEncodedInstrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.HttpErrorHandlerInstrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.PathPatternInstrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.PlayBodyParsersInstrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.ResultsStatusInstrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.RoutingDslInstrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.SirdPathExtractorInstrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.StatusHeaderInstrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.TolerantJsonInstrumentation +41 targets-0004 datadog.trace.instrumentation.play25.appsec.TolerantTextInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.DelegatingBodyParserInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.FormUrlEncodedInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.HttpErrorHandlerInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.PathPatternInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.PlayBodyParsersInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.ResultsStatusInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.RoutingDslInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.SirdPathExtractorInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.StatusHeaderInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.TolerantJsonInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.TolerantTextInstrumentation +41 targets-0004 datadog.trace.instrumentation.play26.appsec.TolerantXmlInstrumentation +41 targets-0004 datadog.trace.instrumentation.resteasy.DecodedFormParametersInstrumentation +41 targets-0004 datadog.trace.instrumentation.resteasy.MessageBodyReaderInvocationInstrumentation +41 targets-0004 datadog.trace.instrumentation.resteasy.MethodExpressionInstrumentation +41 targets-0004 datadog.trace.instrumentation.resteasy.MultipartFormDataReaderInstrumentation +42 targets-0004 datadog.trace.instrumentation.jakarta3.MessageBodyWriterInstrumentation +42 targets-0004 datadog.trace.instrumentation.tomcat55.CommitActionInstrumentation +42 targets-0004 datadog.trace.instrumentation.tomcat55.ParsedBodyParametersInstrumentation +42 targets-0004 datadog.trace.instrumentation.tomcat7.CommitActionInstrumentation +42 targets-0004 datadog.trace.instrumentation.tomcat7.GlassFishMultipartInstrumentation +42 targets-0004 datadog.trace.instrumentation.tomcat7.ParsePartsInstrumentation +42 targets-0004 datadog.trace.instrumentation.undertow.FormDataParserInstrumentation +42 targets-0004 datadog.trace.instrumentation.undertow.HttpServerExchangeSenderInstrumentation +42 targets-0004 datadog.trace.instrumentation.undertow.MultiPartUploadHandlerInstrumentation +42 targets-0004 datadog.trace.instrumentation.akkahttp.DefaultExceptionHandlerInstrumentation +42 targets-0004 datadog.trace.instrumentation.akkahttp.appsec.Bug4304Instrumentation +42 targets-0004 datadog.trace.instrumentation.akkahttp.appsec.ConfigProvideRemoteAddressHeaderInstrumentation +42 targets-0004 datadog.trace.instrumentation.akkahttp.appsec.FormDataToStrictInstrumentation +42 targets-0004 datadog.trace.instrumentation.akkahttp.appsec.JacksonUnmarshallerInstrumentation +42 targets-0004 datadog.trace.instrumentation.akkahttp.appsec.MultipartUnmarshallersInstrumentation +42 targets-0004 datadog.trace.instrumentation.akkahttp.appsec.PredefinedFromEntityUnmarshallersInstrumentation +42 targets-0004 datadog.trace.instrumentation.akkahttp.appsec.SprayUnmarshallerInstrumentation +42 targets-0004 datadog.trace.instrumentation.akkahttp.appsec.StrictFormCompanionInstrumentation +42 targets-0004 datadog.trace.instrumentation.java.lang.RuntimeInstrumentation +42 targets-0004 datadog.trace.instrumentation.jersey2.MessageBodyReaderInstrumentation +42 targets-0004 datadog.trace.instrumentation.jersey2.MultiPartReaderServerSideInstrumentation +42 targets-0004 datadog.trace.instrumentation.jersey2.ServerRuntimeResponderInstrumentation +42 targets-0004 datadog.trace.instrumentation.jersey2.UriRoutingContextGetPathSegmentsInstrumentation +42 targets-0004 datadog.trace.instrumentation.jersey2.UriRoutingContextInstrumentation +42 targets-0004 datadog.trace.instrumentation.jersey3.MessageBodyReaderInstrumentation +42 targets-0004 datadog.trace.instrumentation.jersey3.MultiPartReaderServerSideInstrumentation +42 targets-0004 datadog.trace.instrumentation.jersey3.UriRoutingContextGetPathSegmentsInstrumentation +42 targets-0004 datadog.trace.instrumentation.jetty11.RequestExtractContentParametersInstrumentation +42 targets-0004 datadog.trace.instrumentation.jetty70.RequestExtractParametersInstrumentation +42 targets-0004 datadog.trace.instrumentation.jetty70.UrlEncodedInstrumentation +42 targets-0004 datadog.trace.instrumentation.jetty8.RequestGetPartsInstrumentation +42 targets-0004 datadog.trace.instrumentation.jetty92.RequestExtractContentParametersInstrumentation +42 targets-0004 datadog.trace.instrumentation.jetty93.RequestExtractContentParametersInstrumentation +42 targets-0004 datadog.trace.instrumentation.jetty94.RequestExtractContentParametersInstrumentation +42 targets-0004 datadog.trace.instrumentation.jetty10.DispatchableInstrumentation +42 targets-0004 datadog.trace.instrumentation.jetty10.JettyCommitResponseInstrumentation +42 targets-0004 datadog.trace.instrumentation.springsecurity5.AuthenticationManagerInstrumentation +42 targets-0004 datadog.trace.instrumentation.springsecurity5.SecurityContextHolderInstrumentation +42 targets-0004 datadog.trace.instrumentation.springsecurity5.UserDetailsManagerInstrumentation +42 targets-0004 datadog.trace.instrumentation.springsecurity5.UsernameNotFoundExceptionInstrumentation +42 targets-0004 datadog.trace.instrumentation.springweb.AppSecDispatcherServletInstrumentation +42 targets-0004 datadog.trace.instrumentation.springweb.HttpMessageConverterInstrumentation +42 targets-0004 datadog.trace.instrumentation.springweb.AppSecDispatcherServletWithPathPatternsInstrumentation +42 targets-0004 datadog.trace.instrumentation.tomcat6.ParsedBodyParametersInstrumentation +42 targets-0004 datadog.trace.instrumentation.vertx_3_4.server.HttpServerRequestInstrumentation +42 targets-0004 datadog.trace.instrumentation.vertx_3_4.server.RoutingContextImplInstrumentation +42 targets-0004 datadog.trace.instrumentation.vertx_3_4.server.VertxImplInstrumentation +42 targets-0004 datadog.trace.instrumentation.jaxrs2.MessageBodyWriterInstrumentation +42 targets-0004 datadog.trace.instrumentation.servlet3.Servlet31RequestBodyInstrumentation +42 targets-0004 datadog.trace.instrumentation.servlet5.Servlet5RequestBodyInstrumentation +42 targets-0004 datadog.trace.instrumentation.servlet2.ServletRequestBodyInstrumentation +43 targets-000c datadog.trace.instrumentation.vertx_4_0.server.RouteImplInstrumentation +43 targets-000c datadog.trace.instrumentation.springweb6.TemplateAndMatrixVariablesInstrumentation +43 targets-000c datadog.trace.instrumentation.springweb6.TemplateVariablesUrlHandlerInstrumentation +43 targets-000c datadog.trace.instrumentation.springweb.TemplateAndMatrixVariablesInstrumentation +43 targets-000c datadog.trace.instrumentation.springweb.TemplateVariablesUrlHandlerInstrumentation +43 targets-000c datadog.trace.instrumentation.vertx_3_4.server.RouteImplInstrumentation +44 targets-0080 datadog.trace.instrumentation.gax.CallbackChainRetryingFutureInstrumentation +44 targets-0080 datadog.trace.instrumentation.guava10.ListenableFutureInstrumentation +44 targets-0080 datadog.trace.instrumentation.kotlin.coroutines.KotlinCoroutinesModule +44 targets-0080 datadog.trace.instrumentation.logback.LogbackLoggerInstrumentation +44 targets-0080 datadog.trace.instrumentation.reactivestreams.ReactiveStreamsModule +44 targets-0080 datadog.trace.instrumentation.akka.concurrent.AkkaActorCellInstrumentation +44 targets-0080 datadog.trace.instrumentation.akka.concurrent.AkkaEnvelopeInstrumentation +44 targets-0080 datadog.trace.instrumentation.akka.concurrent.AkkaForkJoinExecutorTaskInstrumentation +44 targets-0080 datadog.trace.instrumentation.akka.concurrent.AkkaForkJoinPoolInstrumentation +44 targets-0080 datadog.trace.instrumentation.akka.concurrent.AkkaMailboxInstrumentation +44 targets-0080 datadog.trace.instrumentation.akka.concurrent.AkkaRoutedActorCellInstrumentation +44 targets-0080 datadog.trace.instrumentation.lettuce5.AsyncCommandInstrumentation +44 targets-0080 datadog.trace.instrumentation.lettuce5.CommandHandlerInstrumentation +44 targets-0080 datadog.trace.instrumentation.netty4.promise.NettyPromiseInstrumentation +44 targets-0080 datadog.trace.instrumentation.pekko.concurrent.PekkoActorCellInstrumentation +44 targets-0080 datadog.trace.instrumentation.pekko.concurrent.PekkoEnvelopeInstrumentation +44 targets-0080 datadog.trace.instrumentation.pekko.concurrent.PekkoForkJoinExecutorTaskInstrumentation +44 targets-0080 datadog.trace.instrumentation.pekko.concurrent.PekkoMailboxInstrumentation +44 targets-0080 datadog.trace.instrumentation.pekko.concurrent.PekkoRoutedActorCellInstrumentation +44 targets-0080 datadog.trace.instrumentation.pekko.concurrent.PekkoSchedulerInstrumentation +44 targets-0080 datadog.trace.instrumentation.rxjava2.RxJavaModule +44 targets-0080 datadog.trace.instrumentation.rxjava3.RxJavaModule +44 targets-0080 datadog.trace.instrumentation.java.concurrent.AsyncPropagatingDisableInstrumentation +44 targets-0080 datadog.trace.instrumentation.java.concurrent.WrapRunnableAsNewTaskInstrumentation +44 targets-0080 datadog.trace.instrumentation.java.concurrent.runnable.ConsumerTaskInstrumentation +44 targets-0080 datadog.trace.instrumentation.java.concurrent.runnable.RunnableInstrumentation +44 targets-0080 datadog.trace.instrumentation.java.concurrent.timer.JavaTimerModule +44 targets-0080 datadog.trace.instrumentation.java.concurrent.structuredconcurrency21.StructuredTaskScope21Instrumentation +44 targets-0080 datadog.trace.instrumentation.java.concurrent.virtualthread.TaskRunnerInstrumentation +44 targets-0080 datadog.trace.instrumentation.java.concurrent.structuredconcurrency25.StructuredTaskScope25Instrumentation +45 targets-0081 datadog.trace.instrumentation.axis2.Axis2Module +45 targets-0081 datadog.trace.instrumentation.azure.functions.AzureFunctionsInstrumentation +45 targets-0081 datadog.trace.instrumentation.commonshttpclient.CommonsHttpClientInstrumentation +45 targets-0081 datadog.trace.instrumentation.googlehttpclient.GoogleHttpClientInstrumentation +45 targets-0081 datadog.trace.instrumentation.grpc.client.GrpcClientModule +45 targets-0081 datadog.trace.instrumentation.mule4.ComponentMessageProcessorInstrumentation +45 targets-0081 datadog.trace.instrumentation.rabbitmq.amqp.RabbitChannelInstrumentation +45 targets-0081 datadog.trace.instrumentation.restlet.RestletInstrumentation +45 targets-0081 datadog.trace.instrumentation.synapse3.SynapseClientInstrumentation +45 targets-0081 datadog.trace.instrumentation.synapse3.SynapseServerInstrumentation +45 targets-0081 datadog.trace.instrumentation.apachehttpasyncclient.ApacheHttpAsyncClientModule +45 targets-0081 datadog.trace.instrumentation.apachehttpclient.ApacheHttpClientInstrumentation +45 targets-0081 datadog.trace.instrumentation.apachehttpclient5.ApacheHttpAsyncClientInstrumentation +45 targets-0081 datadog.trace.instrumentation.apachehttpclient5.ApacheHttpClientInstrumentation +45 targets-0081 datadog.trace.instrumentation.armeria.grpc.client.ArmeriaGrpcClientModule +45 targets-0081 datadog.trace.instrumentation.grizzly.GrizzlyModule +45 targets-0081 datadog.trace.instrumentation.grizzly.client.GrizzlyClientModule +45 targets-0081 datadog.trace.instrumentation.jetty70.JettyServerInstrumentation +45 targets-0081 datadog.trace.instrumentation.jetty76.JettyServerInstrumentation +45 targets-0081 datadog.trace.instrumentation.jms.JavaxJmsModule +45 targets-0081 datadog.trace.instrumentation.jms.JakartaJmsModule +45 targets-0081 datadog.trace.instrumentation.kafka_streams.KafkaStreamTaskInstrumentation +45 targets-0081 datadog.trace.instrumentation.kafka_clients.KafkaProducerInstrumentation +45 targets-0081 datadog.trace.instrumentation.kafka_clients38.KafkaProducerInstrumentation +45 targets-0081 datadog.trace.instrumentation.liberty20.LibertyServerInstrumentation +45 targets-0081 datadog.trace.instrumentation.liberty23.LibertyServerInstrumentation +45 targets-0081 datadog.trace.instrumentation.netty40.NettyChannelPipelineInstrumentation +45 targets-0081 datadog.trace.instrumentation.netty41.NettyChannelPipelineInstrumentation +45 targets-0081 datadog.trace.instrumentation.pekkohttp.PekkoHttpSingleRequestInstrumentation +45 targets-0081 datadog.trace.instrumentation.playws1.PlayWSClientInstrumentation +45 targets-0081 datadog.trace.instrumentation.playws2.PlayWSClientInstrumentation +45 targets-0081 datadog.trace.instrumentation.playws21.PlayWSClientInstrumentation +45 targets-0081 datadog.trace.instrumentation.springmessaging.SpringMessageHandlerInstrumentation +45 targets-0081 datadog.trace.instrumentation.undertow.HandlerInstrumentation +45 targets-0081 datadog.trace.instrumentation.akkahttp.AkkaHttpSingleRequestInstrumentation +45 targets-0081 datadog.trace.instrumentation.httpclient.HttpHeadersInstrumentation +45 targets-0081 datadog.trace.instrumentation.jaxrs.v1.JaxRsClientV1Instrumentation +46 targets-01ff datadog.trace.instrumentation.graal.nativeimage.GraalNativeImageModule +46 targets-01ff datadog.trace.instrumentation.log4j2.LoggerConfigInstrumentation +46 targets-01ff datadog.trace.instrumentation.java.lang.module.JpmsClearanceInstrumentation +46 targets-01ff datadog.trace.instrumentation.java.lang.classloading.ClassloadingInstrumentation diff --git a/metadata/common-classdata.txt b/metadata/common-classdata.txt new file mode 100644 index 00000000000..4f6d7aba233 --- /dev/null +++ b/metadata/common-classdata.txt @@ -0,0 +1,2572 @@ +# Default-agent startup load-order profile generated by ClassDataBenchmarkArtifacts. +# Update only with fresh cross-JDK and representative-application benchmark evidence. +# Then run ./gradlew :dd-java-agent:generateCommonClassDataPlan and commit both files. +datadog.crashtracking.Initializer +datadog.trace.agent.tooling.AgentInstaller +net.bytebuddy.matcher.ElementMatcher +net.bytebuddy.matcher.LatentMatcher +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler +net.bytebuddy.dynamic.VisibilityBridgeStrategy +net.bytebuddy.dynamic.scaffold.InstrumentedType$Factory +net.bytebuddy.agent.builder.AgentBuilder +net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy +net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy +net.bytebuddy.agent.builder.AgentBuilder$Listener +net.bytebuddy.agent.builder.AgentBuilder$RawMatcher +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener +datadog.trace.agent.tooling.InstrumenterState$Observer +datadog.trace.agent.tooling.InstrumenterModule$TargetSystem +net.bytebuddy.description.NamedElement +net.bytebuddy.description.ModifierReviewable +net.bytebuddy.description.ModifierReviewable$OfByteCodeElement +net.bytebuddy.description.ModifierReviewable$OfAbstraction +net.bytebuddy.description.ModifierReviewable$OfEnumeration +net.bytebuddy.description.ModifierReviewable$ForTypeDefinition +net.bytebuddy.description.type.TypeDefinition +net.bytebuddy.description.NamedElement$WithRuntimeName +net.bytebuddy.description.NamedElement$WithDescriptor +net.bytebuddy.description.DeclaredByType +net.bytebuddy.description.annotation.AnnotationSource +net.bytebuddy.description.ByteCodeElement +net.bytebuddy.description.TypeVariableSource +net.bytebuddy.description.type.TypeDescription +net.bytebuddy.description.ModifierReviewable$ForFieldDescription +net.bytebuddy.description.ModifierReviewable$ForMethodDescription +net.bytebuddy.description.ModifierReviewable$OfMandatable +net.bytebuddy.description.ModifierReviewable$ForParameterDescription +net.bytebuddy.description.ModifierReviewable$ForModuleDescription +net.bytebuddy.description.ModifierReviewable$ForModuleRequirement +net.bytebuddy.description.ModifierReviewable$AbstractBase +net.bytebuddy.description.TypeVariableSource$AbstractBase +net.bytebuddy.description.type.TypeDescription$AbstractBase +net.bytebuddy.matcher.FilterableList +net.bytebuddy.description.type.TypeList$Generic +net.bytebuddy.description.type.TypeDescription$Generic +net.bytebuddy.description.DeclaredByType$WithMandatoryDeclaration +net.bytebuddy.description.NamedElement$WithGenericName +net.bytebuddy.description.ByteCodeElement$Member +net.bytebuddy.description.ByteCodeElement$TypeDependant +net.bytebuddy.description.method.MethodDescription +net.bytebuddy.description.annotation.AnnotationList +net.bytebuddy.description.type.TypeDescription$Generic$Visitor +net.bytebuddy.utility.privilege.GetSystemPropertyAction +net.bytebuddy.dynamic.NexusAccessor +net.bytebuddy.dynamic.NexusAccessor$Dispatcher$CreationAction +net.bytebuddy.dynamic.NexusAccessor$Dispatcher +net.bytebuddy.dynamic.NexusAccessor$Dispatcher$Unavailable +datadog.trace.agent.tooling.WeakMaps +datadog.trace.agent.tooling.WeakMaps$1 +datadog.trace.agent.tooling.Utils +datadog.trace.agent.tooling.Instrumenter +net.bytebuddy.pool.TypePool +datadog.trace.agent.tooling.bytebuddy.SharedTypePools$Supplier +datadog.trace.agent.tooling.bytebuddy.outline.TypePoolFacade +net.bytebuddy.pool.TypePool$Resolution +datadog.trace.agent.tooling.bytebuddy.SharedTypePools +datadog.trace.agent.tooling.bytebuddy.outline.TypeFactory +datadog.trace.agent.tooling.bytebuddy.outline.TypeParser +net.bytebuddy.description.type.TypeDescription$ForLoadedType +net.bytebuddy.description.type.TypeList +net.bytebuddy.matcher.FilterableList$Empty +net.bytebuddy.description.type.TypeList$Empty +net.bytebuddy.matcher.FilterableList$AbstractBase +net.bytebuddy.description.type.TypeList$AbstractBase +net.bytebuddy.description.type.TypeList$ForLoadedTypes +net.bytebuddy.description.type.PackageDescription +net.bytebuddy.description.method.MethodDescription$InDefinedShape +net.bytebuddy.description.field.FieldList +net.bytebuddy.description.type.RecordComponentList +net.bytebuddy.description.type.RecordComponentList$Empty +net.bytebuddy.description.type.RecordComponentList$AbstractBase +net.bytebuddy.description.type.RecordComponentList$ForLoadedRecordComponents +net.bytebuddy.description.method.MethodList +net.bytebuddy.description.type.TypeDescription$ForLoadedType$Dispatcher +net.bytebuddy.utility.dispatcher.JavaDispatcher +net.bytebuddy.utility.dispatcher.JavaDispatcher$Dispatcher +net.bytebuddy.utility.dispatcher.JavaDispatcher$DynamicClassLoader$Resolver$CreationAction +net.bytebuddy.utility.dispatcher.JavaDispatcher$DynamicClassLoader$Resolver +net.bytebuddy.utility.dispatcher.JavaDispatcher$DynamicClassLoader$Resolver$ForModuleSystem +net.bytebuddy.utility.dispatcher.JavaDispatcher$InvokerCreationAction +net.bytebuddy.utility.dispatcher.JavaDispatcher$DynamicClassLoader +net.bytebuddy.utility.Invoker +net.bytebuddy.jar.asm.ClassVisitor +net.bytebuddy.jar.asm.ClassWriter +net.bytebuddy.jar.asm.AnnotationVisitor +net.bytebuddy.jar.asm.AnnotationWriter +net.bytebuddy.jar.asm.ModuleVisitor +net.bytebuddy.jar.asm.ModuleWriter +net.bytebuddy.jar.asm.RecordComponentVisitor +net.bytebuddy.jar.asm.RecordComponentWriter +net.bytebuddy.jar.asm.FieldVisitor +net.bytebuddy.jar.asm.FieldWriter +net.bytebuddy.jar.asm.MethodVisitor +net.bytebuddy.jar.asm.MethodWriter +net.bytebuddy.jar.asm.ClassTooLargeException +net.bytebuddy.jar.asm.SymbolTable +net.bytebuddy.jar.asm.Symbol +net.bytebuddy.jar.asm.SymbolTable$Entry +net.bytebuddy.jar.asm.ByteVector +net.bytebuddy.ClassFileVersion +net.bytebuddy.ClassFileVersion$VersionLocator$Resolver +net.bytebuddy.ClassFileVersion$VersionLocator +net.bytebuddy.ClassFileVersion$VersionLocator$Resolved +net.bytebuddy.jar.asm.Type +net.bytebuddy.utility.GraalImageCode +net.bytebuddy.utility.MethodComparator +net.bytebuddy.jar.asm.MethodTooLargeException +net.bytebuddy.jar.asm.Frame +net.bytebuddy.jar.asm.CurrentFrame +net.bytebuddy.jar.asm.Handler +net.bytebuddy.jar.asm.Attribute +net.bytebuddy.utility.dispatcher.JavaDispatcher$Proxied +net.bytebuddy.utility.dispatcher.JavaDispatcher$Defaults +net.bytebuddy.utility.dispatcher.JavaDispatcher$Instance +net.bytebuddy.utility.dispatcher.JavaDispatcher$Container +net.bytebuddy.utility.dispatcher.JavaDispatcher$IsStatic +net.bytebuddy.utility.dispatcher.JavaDispatcher$IsConstructor +net.bytebuddy.utility.dispatcher.JavaDispatcher$Dispatcher$ForNonStaticMethod +net.bytebuddy.utility.nullability.MaybeNull +net.bytebuddy.utility.dispatcher.JavaDispatcher$ProxiedInvocationHandler +net.bytebuddy.dynamic.TargetType +datadog.trace.agent.tooling.bytebuddy.outline.OutlineTypeParser +datadog.trace.agent.tooling.bytebuddy.outline.OutlineTypeParser$OutlineTypeExtractor +net.bytebuddy.description.field.FieldDescription +net.bytebuddy.description.field.FieldDescription$InDefinedShape +net.bytebuddy.pool.TypePool$AbstractBase +net.bytebuddy.pool.TypePool$AbstractBase$Hierarchical +net.bytebuddy.pool.TypePool$Default +datadog.trace.agent.tooling.bytebuddy.outline.FullTypeParser +net.bytebuddy.pool.TypePool$Default$TypeExtractor +net.bytebuddy.utility.AsmClassReader$Factory +net.bytebuddy.pool.TypePool$CacheProvider +net.bytebuddy.dynamic.ClassFileLocator +datadog.trace.agent.tooling.bytebuddy.outline.FullTypeParser$CustomTypeExtractor +net.bytebuddy.pool.TypePool$CacheProvider$NoOp +net.bytebuddy.dynamic.ClassFileLocator$NoOp +net.bytebuddy.dynamic.ClassFileLocator$Resolution +net.bytebuddy.pool.TypePool$Default$ReaderMode +net.bytebuddy.pool.TypePool$Empty +net.bytebuddy.utility.AsmClassReader$Factory$Default +net.bytebuddy.utility.AsmClassReader$Factory$Default$1 +net.bytebuddy.utility.AsmClassReader$Factory$Default$2 +net.bytebuddy.utility.AsmClassReader$Factory$Default$3 +net.bytebuddy.utility.AsmClassReader$Factory$Default$4 +net.bytebuddy.utility.AsmClassReader$Factory$Default$5 +net.bytebuddy.utility.AsmClassReader +net.bytebuddy.description.type.TypeDescription$AbstractBase$OfSimpleType +net.bytebuddy.description.type.TypeDescription$AbstractBase$OfSimpleType$WithDelegation +datadog.trace.agent.tooling.bytebuddy.outline.WithName +datadog.trace.agent.tooling.bytebuddy.outline.CachingType +net.bytebuddy.description.type.TypeDescription$Generic$AbstractBase +net.bytebuddy.description.type.TypeDescription$Generic$OfNonGenericType +net.bytebuddy.description.type.TypeDescription$Generic$OfNonGenericType$ForLoadedType +net.bytebuddy.description.type.TypeDescription$Generic$AnnotationReader +net.bytebuddy.description.type.TypeDescription$Generic$AnnotationReader$NoOp +datadog.trace.agent.tooling.bytebuddy.outline.TypeOutline +net.bytebuddy.description.type.TypeList$Generic$Empty +net.bytebuddy.description.ByteCodeElement$Token +net.bytebuddy.description.annotation.AnnotationList$Empty +net.bytebuddy.description.annotation.AnnotationDescription +net.bytebuddy.description.field.FieldList$Empty +net.bytebuddy.description.method.MethodList$Empty +net.bytebuddy.description.method.MethodDescription$AbstractBase +net.bytebuddy.description.method.MethodDescription$InDefinedShape$AbstractBase +datadog.trace.agent.tooling.bytebuddy.outline.MethodOutline +net.bytebuddy.description.method.ParameterList +net.bytebuddy.description.method.ParameterList$Empty +datadog.trace.agent.tooling.bytebuddy.outline.AnnotationOutline +datadog.trace.agent.tooling.bytebuddy.TypeInfoCache +datadog.trace.agent.tooling.bytebuddy.TypeInfoCache$SharedTypeInfo +datadog.trace.agent.tooling.bytebuddy.TypeInfoCache$DisambiguatingTypeInfo +datadog.trace.agent.tooling.bytebuddy.outline.WithLocation +datadog.trace.agent.tooling.bytebuddy.outline.TypeFactory$LazyType +datadog.trace.agent.tooling.bytebuddy.matcher.HierarchyMatchers$Supplier +datadog.trace.agent.tooling.bytebuddy.memoize.MemoizedMatchers +net.bytebuddy.matcher.ElementMatcher$Junction +datadog.trace.agent.tooling.bytebuddy.memoize.PreloadHierarchy +datadog.trace.agent.tooling.bytebuddy.matcher.HierarchyMatchers +datadog.trace.agent.tooling.bytebuddy.memoize.Memoizer +datadog.trace.agent.tooling.bytebuddy.memoize.NoMatchFilter +datadog.trace.agent.tooling.bytebuddy.memoize.NoMatchFilter$ShutdownHook +datadog.trace.agent.tooling.bytebuddy.memoize.Memoizer$MatcherKind +net.bytebuddy.matcher.ElementMatchers +net.bytebuddy.matcher.ElementMatcher$Junction$AbstractBase +net.bytebuddy.matcher.BooleanMatcher +net.bytebuddy.matcher.ElementMatcher$Junction$ForNonNullValues +datadog.trace.agent.tooling.bytebuddy.memoize.Memoizer$MemoizingMatcher +net.bytebuddy.matcher.ModifierMatcher$Mode +net.bytebuddy.matcher.ModifierMatcher +net.bytebuddy.matcher.NegatingMatcher +net.bytebuddy.ByteBuddy +net.bytebuddy.dynamic.DynamicType$Builder +net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy +net.bytebuddy.utility.AsmClassWriter$Factory +net.bytebuddy.dynamic.scaffold.InstrumentedType$Prepareable +net.bytebuddy.implementation.Implementation +net.bytebuddy.NamingStrategy +net.bytebuddy.implementation.auxiliary.AuxiliaryType$NamingStrategy +net.bytebuddy.implementation.Implementation$Context$Factory +net.bytebuddy.implementation.attribute.AnnotationValueFilter$Factory +net.bytebuddy.NamingStrategy$Suffixing$BaseNameResolver +net.bytebuddy.dynamic.scaffold.TypeValidation +net.bytebuddy.NamingStrategy$AbstractBase +net.bytebuddy.NamingStrategy$Suffixing +net.bytebuddy.NamingStrategy$SuffixingRandom +net.bytebuddy.NamingStrategy$Suffixing$BaseNameResolver$ForUnnamedType +net.bytebuddy.utility.RandomString +net.bytebuddy.implementation.auxiliary.AuxiliaryType$NamingStrategy$SuffixingRandom +net.bytebuddy.implementation.attribute.AnnotationValueFilter +net.bytebuddy.implementation.attribute.AnnotationValueFilter$Default +net.bytebuddy.implementation.attribute.AnnotationValueFilter$Default$1 +net.bytebuddy.implementation.attribute.AnnotationValueFilter$Default$2 +net.bytebuddy.implementation.attribute.AnnotationRetention +net.bytebuddy.implementation.Implementation$Context$Default$Factory +net.bytebuddy.implementation.MethodAccessorFactory +net.bytebuddy.implementation.Implementation$Context +net.bytebuddy.implementation.Implementation$Context$ExtractableView +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$AbstractBase +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Merger +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Harmonizer +net.bytebuddy.dynamic.scaffold.MethodGraph +net.bytebuddy.dynamic.scaffold.MethodGraph$Linked +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Harmonizer$ForJavaMethod +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Merger$Directional +net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Reifying +net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Reifying$1 +net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Reifying$2 +net.bytebuddy.dynamic.scaffold.InstrumentedType$Factory$Default +net.bytebuddy.implementation.LoadedTypeInitializer +net.bytebuddy.implementation.bytecode.ByteCodeAppender +net.bytebuddy.dynamic.scaffold.TypeInitializer +net.bytebuddy.dynamic.scaffold.InstrumentedType +net.bytebuddy.dynamic.scaffold.InstrumentedType$WithFlexibleName +net.bytebuddy.dynamic.scaffold.InstrumentedType$Factory$Default$1 +net.bytebuddy.dynamic.scaffold.InstrumentedType$Factory$Default$2 +net.bytebuddy.dynamic.VisibilityBridgeStrategy$Default +net.bytebuddy.dynamic.VisibilityBridgeStrategy$Default$1 +net.bytebuddy.dynamic.VisibilityBridgeStrategy$Default$2 +net.bytebuddy.dynamic.VisibilityBridgeStrategy$Default$3 +net.bytebuddy.utility.AsmClassWriter$Factory$Default +net.bytebuddy.utility.AsmClassWriter$Factory$Default$1 +net.bytebuddy.utility.AsmClassWriter$Factory$Default$2 +net.bytebuddy.utility.AsmClassWriter$Factory$Default$3 +net.bytebuddy.utility.AsmClassWriter$Factory$Default$4 +net.bytebuddy.utility.AsmClassWriter$Factory$Default$5 +net.bytebuddy.utility.AsmClassWriter$FrameComputingClassWriter +net.bytebuddy.utility.AsmClassWriter +net.bytebuddy.matcher.LatentMatcher$Resolved +net.bytebuddy.matcher.NameMatcher +net.bytebuddy.matcher.StringMatcher +net.bytebuddy.matcher.StringMatcher$Mode +net.bytebuddy.matcher.StringMatcher$Mode$1 +net.bytebuddy.matcher.StringMatcher$Mode$2 +net.bytebuddy.matcher.StringMatcher$Mode$3 +net.bytebuddy.matcher.StringMatcher$Mode$4 +net.bytebuddy.matcher.StringMatcher$Mode$5 +net.bytebuddy.matcher.StringMatcher$Mode$6 +net.bytebuddy.matcher.StringMatcher$Mode$7 +net.bytebuddy.matcher.StringMatcher$Mode$8 +net.bytebuddy.matcher.StringMatcher$Mode$9 +net.bytebuddy.matcher.MethodParametersMatcher +net.bytebuddy.matcher.CollectionSizeMatcher +net.bytebuddy.matcher.ElementMatcher$Junction$Conjunction +net.bytebuddy.matcher.EqualityMatcher +net.bytebuddy.matcher.ErasureMatcher +net.bytebuddy.matcher.MethodReturnTypeMatcher +net.bytebuddy.matcher.DeclaringTypeMatcher +net.bytebuddy.matcher.ElementMatcher$Junction$Disjunction +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$ForDeclaredMethods +net.bytebuddy.agent.builder.AgentBuilder$Default +net.bytebuddy.agent.builder.AgentBuilder$PatchMode$Handler +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionEnforcer +net.bytebuddy.agent.builder.AgentBuilder$InstallationListener +net.bytebuddy.agent.builder.AgentBuilder$InitializationStrategy +net.bytebuddy.agent.builder.AgentBuilder$Default$NativeMethodStrategy +net.bytebuddy.agent.builder.AgentBuilder$ClassFileBufferStrategy +net.bytebuddy.agent.builder.AgentBuilder$InjectionStrategy +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionStrategy +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy +net.bytebuddy.agent.builder.AgentBuilder$TransformerDecorator +net.bytebuddy.agent.builder.AgentBuilder$Default$WarmupStrategy +net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy +net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy +net.bytebuddy.agent.builder.AgentBuilder$CircularityLock +net.bytebuddy.agent.builder.AgentBuilder$Matchable +net.bytebuddy.agent.builder.AgentBuilder$Identified +net.bytebuddy.agent.builder.AgentBuilder$Identified$Narrowable +net.bytebuddy.build.EntryPoint +net.bytebuddy.agent.builder.AgentBuilder$Transformer +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable$WithImplicitDiscoveryStrategy +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable$WithoutBatchStrategy +net.bytebuddy.agent.builder.AgentBuilder$Ignored +net.bytebuddy.agent.builder.AgentBuilder$Default$Dispatcher +net.bytebuddy.agent.builder.AgentBuilder$CircularityLock$WithInnerClassLoadingLock +net.bytebuddy.agent.builder.AgentBuilder$CircularityLock$Default +net.bytebuddy.agent.builder.AgentBuilder$CircularityLock$WithInnerClassLoadingLock$TrivialLock +net.bytebuddy.agent.builder.AgentBuilder$Listener$NoOp +net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy$Default +net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy$Default +net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy$Default$1 +net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy$Default$2 +net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy$Default$3 +net.bytebuddy.agent.builder.AgentBuilder$TypeStrategy$Default$4 +net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy$ForClassLoader +net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy$ForClassLoader$1 +net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy$ForClassLoader$2 +net.bytebuddy.agent.builder.AgentBuilder$Default$NativeMethodStrategy$Disabled +net.bytebuddy.agent.builder.AgentBuilder$Default$WarmupStrategy$NoOp +net.bytebuddy.agent.builder.AgentBuilder$TransformerDecorator$NoOp +net.bytebuddy.agent.builder.AgentBuilder$InitializationStrategy$SelfInjection +net.bytebuddy.agent.builder.AgentBuilder$InitializationStrategy$SelfInjection$Split +net.bytebuddy.agent.builder.AgentBuilder$InitializationStrategy$Dispatcher +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$1 +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$2 +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$3 +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector$ForRedefinition +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector$ForRetransformation +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy$SinglePass +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator$ForTotal +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener$NoOp +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionStrategy$Disabled +net.bytebuddy.agent.builder.AgentBuilder$InjectionStrategy$UsingReflection +net.bytebuddy.dynamic.loading.ClassInjector +net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy +net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy$1 +net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy$2 +net.bytebuddy.dynamic.loading.ClassLoadingStrategy +net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy$Default +net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy$Default$1 +net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy$Default$2 +net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy$Default$3 +net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy +net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy$ByThrowableType +net.bytebuddy.agent.builder.AgentBuilder$ClassFileBufferStrategy$Default +net.bytebuddy.agent.builder.AgentBuilder$ClassFileBufferStrategy$Default$1 +net.bytebuddy.agent.builder.AgentBuilder$ClassFileBufferStrategy$Default$2 +net.bytebuddy.agent.builder.AgentBuilder$InstallationListener$NoOp +net.bytebuddy.agent.builder.AgentBuilder$RawMatcher$Disjunction +net.bytebuddy.agent.builder.AgentBuilder$RawMatcher$ForElementMatchers +net.bytebuddy.matcher.NullMatcher +net.bytebuddy.agent.builder.AgentBuilder$RawMatcher$Trivial +net.bytebuddy.implementation.Implementation$Context$Disabled$Factory +net.bytebuddy.agent.builder.AgentBuilder$InitializationStrategy$NoOp +net.bytebuddy.description.NamedElement$WithOptionalName +net.bytebuddy.utility.JavaModule +net.bytebuddy.utility.JavaModule$Resolver +net.bytebuddy.utility.JavaModule$Module +net.bytebuddy.utility.dispatcher.JavaDispatcher$Dispatcher$ForInstanceCheck +net.bytebuddy.agent.builder.AgentBuilder$Listener$Adapter +net.bytebuddy.agent.builder.AgentBuilder$Listener$ModuleReadEdgeCompleting +net.bytebuddy.agent.builder.AgentBuilder$Listener$Compound +datadog.trace.agent.tooling.AgentStrategies +net.bytebuddy.agent.builder.ResettableClassFileTransformer +net.bytebuddy.agent.builder.ResettableClassFileTransformer$AbstractBase +net.bytebuddy.agent.builder.ResettableClassFileTransformer$WithDelegation +datadog.trace.agent.tooling.bytebuddy.DDJava9ClassFileTransformer +datadog.trace.agent.tooling.bytebuddy.DDRediscoveryStrategy +datadog.trace.agent.tooling.bytebuddy.DDLocationStrategy +datadog.trace.agent.tooling.bytebuddy.DDOutlinePoolStrategy +datadog.trace.agent.tooling.bytebuddy.DDOutlineTypeStrategy +net.bytebuddy.agent.builder.AgentBuilder$TransformerDecorator$Compound +net.bytebuddy.agent.builder.AgentBuilder$Default$Redefining +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable$ResubmissionImmediateMatcher +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable$ResubmissionOnErrorMatcher +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionListenable$WithoutResubmissionSpecification +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener$Compound +datadog.trace.agent.tooling.AgentInstaller$ClassLoadListener +datadog.trace.agent.tooling.bytebuddy.matcher.GlobalIgnoresMatcher +net.bytebuddy.agent.builder.AgentBuilder$Default$Delegator +net.bytebuddy.agent.builder.AgentBuilder$Default$Delegator$Matchable +net.bytebuddy.agent.builder.AgentBuilder$Default$Ignoring +datadog.trace.agent.tooling.InstrumenterIndex +datadog.trace.agent.tooling.InstrumenterModule +datadog.trace.agent.tooling.InstrumenterState +datadog.trace.agent.tooling.InstrumenterState$1 +datadog.trace.agent.tooling.InstrumenterModuleFilter +datadog.trace.agent.tooling.InstrumenterIndex$ModuleIterator +datadog.trace.agent.tooling.InstrumenterModule$Tracing +datadog.trace.instrumentation.aerospike4.AerospikeModule +datadog.trace.agent.tooling.ExcludeFilterProvider +datadog.trace.agent.tooling.JavaModuleOpenProvider +datadog.trace.instrumentation.axis2.Axis2Module +datadog.trace.agent.tooling.Instrumenter$ForKnownTypes +datadog.trace.agent.tooling.Instrumenter$HasMethodAdvice +datadog.trace.instrumentation.axway.AxwayHTTPPluginInstrumentation +datadog.trace.agent.tooling.Instrumenter$ForTypeHierarchy +datadog.trace.instrumentation.azure.functions.AzureFunctionsInstrumentation +datadog.trace.agent.tooling.Instrumenter$ForSingleType +datadog.trace.instrumentation.caffeine.BoundedLocalCacheInstrumentation +datadog.trace.instrumentation.cics.CicsModule +datadog.trace.agent.tooling.InstrumenterModule$AppSec +datadog.trace.instrumentation.commons.fileupload.CommonsFileUploadAppSecInstrumentation +datadog.trace.instrumentation.commonshttpclient.CommonsHttpClientInstrumentation +datadog.trace.instrumentation.cxf.InvokerInstrumentation +datadog.trace.instrumentation.datanucleus.DatanucleusModule +datadog.trace.instrumentation.finatra.FinatraInstrumentation +datadog.trace.agent.tooling.InstrumenterModule$ContextTracking +datadog.trace.instrumentation.gax.CallbackChainRetryingFutureInstrumentation +datadog.trace.instrumentation.glassfish.GlassFishInstrumentation +datadog.trace.instrumentation.googlehttpclient.GoogleHttpClientInstrumentation +datadog.trace.instrumentation.googlepubsub.GooglePubSubModule +datadog.trace.instrumentation.grpc.client.GrpcClientModule +datadog.trace.instrumentation.grpc.server.GrpcServerModule +datadog.trace.instrumentation.guava10.ListenableFutureInstrumentation +datadog.trace.instrumentation.hystrix.HystrixInstrumentation +datadog.trace.instrumentation.ignite.v2.IgniteModule +datadog.trace.agent.tooling.Instrumenter$ForBootstrap +datadog.trace.instrumentation.jdbc.AbstractConnectionInstrumentation +datadog.trace.instrumentation.jdbc.DB2ConnectionInstrumentation +datadog.trace.instrumentation.jdbc.AbstractPreparedStatementInstrumentation +datadog.trace.instrumentation.jdbc.DB2PreparedStatementInstrumentation +datadog.trace.instrumentation.jdbc.DBMCompatibleConnectionInstrumentation +datadog.trace.instrumentation.jdbc.DataSourceInstrumentation +datadog.trace.instrumentation.jdbc.Dbcp2LinkedBlockingDequeInstrumentation +datadog.trace.instrumentation.jdbc.Dbcp2ManagedConnectionInstrumentation +datadog.trace.instrumentation.jdbc.Dbcp2PerUserPoolDataSourceInstrumentation +datadog.trace.instrumentation.jdbc.Dbcp2PoolingDataSourceInstrumentation +datadog.trace.instrumentation.jdbc.Dbcp2PoolingDriverInstrumentation +datadog.trace.instrumentation.jdbc.Dbcp2SharedPoolDataSourceInstrumentation +datadog.trace.agent.tooling.Instrumenter$ForConfiguredTypes +datadog.trace.agent.tooling.Instrumenter$ForConfiguredType +datadog.trace.instrumentation.jdbc.DefaultConnectionInstrumentation +datadog.trace.instrumentation.jdbc.DriverInstrumentation +datadog.trace.agent.tooling.Instrumenter$WithTypeStructure +datadog.trace.instrumentation.jdbc.HikariConcurrentBagHandoffQueueInstrumentation +datadog.trace.instrumentation.jdbc.HikariConcurrentBagInstrumentation +datadog.trace.instrumentation.jdbc.HikariDataSourceInstrumentation +datadog.trace.instrumentation.jdbc.HikariPoolInstrumentation +datadog.trace.instrumentation.jdbc.HikariQueuedSequenceSynchronizerInstrumentation +datadog.trace.instrumentation.jdbc.PreparedStatementInstrumentation +datadog.trace.instrumentation.jdbc.StatementInstrumentation +datadog.trace.instrumentation.jsp.JSPInstrumentation +datadog.trace.instrumentation.jsp.JasperJSPCompilationContextInstrumentation +datadog.trace.instrumentation.kotlin.coroutines.KotlinCoroutinesModule +datadog.trace.instrumentation.logback.LogbackLoggerInstrumentation +datadog.trace.instrumentation.logback.LoggingEventInstrumentation +datadog.trace.instrumentation.mule4.AbstractMuleInstrumentation +datadog.trace.instrumentation.mule4.ComponentMessageProcessorInstrumentation +datadog.trace.instrumentation.mule4.EventContextInstrumentation +datadog.trace.instrumentation.mule4.EventTracerInstrumentation +datadog.trace.instrumentation.mule4.ExecutionInitialSpanInfoInstrumentation +datadog.trace.instrumentation.mule4.JpmsMuleInstrumentation +datadog.trace.instrumentation.ognl.OgnlInstrumentation +datadog.trace.instrumentation.osgi43.BundleReferenceInstrumentation +datadog.trace.instrumentation.quartz.QuartzSchedulingInstrumentation +datadog.trace.instrumentation.rabbitmq.amqp.RabbitChannelInstrumentation +datadog.trace.instrumentation.rabbitmq.amqp.RabbitCommandInstrumentation +datadog.trace.instrumentation.ratpack.ContextParseInstrumentation +datadog.trace.agent.tooling.muzzle.Reference$Builder +datadog.trace.agent.tooling.muzzle.Reference$OrBuilder +datadog.trace.agent.tooling.muzzle.Reference +datadog.trace.agent.tooling.muzzle.Reference$Field +datadog.trace.agent.tooling.muzzle.Reference$Method +datadog.trace.instrumentation.ratpack.ContinuationInstrumentation +datadog.trace.instrumentation.ratpack.DefaultExecutionInstrumentation +datadog.trace.instrumentation.ratpack.JsonRendererInstrumentation +datadog.trace.instrumentation.ratpack.PathHandlerInstrumentation +datadog.trace.instrumentation.ratpack.RatpackRequestBodyInstrumentation +datadog.trace.instrumentation.ratpack.RatpackTypedDataInstrumentation +datadog.trace.instrumentation.ratpack.ServerErrorHandlerInstrumentation +datadog.trace.instrumentation.ratpack.ServerRegistryInstrumentation +datadog.trace.instrumentation.reactivestreams.ReactiveStreamsModule +datadog.trace.instrumentation.reactor.core.ReactorCoreModule +datadog.trace.instrumentation.reactor.netty.HttpClientInstrumentation +datadog.trace.instrumentation.rediscala.RedisClientActorInstrumentation +datadog.trace.instrumentation.rediscala.RediscalaInstrumentation +datadog.trace.instrumentation.renaissance.RenaissanceInstrumentation +datadog.trace.instrumentation.restlet.ResourceInstrumentation +datadog.trace.instrumentation.restlet.RestletInstrumentation +datadog.trace.instrumentation.restlet.RouteInstrumentation +datadog.trace.instrumentation.slick.SlickRunnableInstrumentation +datadog.trace.instrumentation.spray.SprayHttpServerInstrumentation +datadog.trace.instrumentation.spymemcached.MemcachedClientInstrumentation +datadog.trace.instrumentation.spymemcached.MemcachedConnectionInstrumentation +datadog.trace.instrumentation.synapse3.SynapseClientInstrumentation +datadog.trace.instrumentation.synapse3.SynapseClientWorkerInstrumentation +datadog.trace.instrumentation.synapse3.SynapsePassthruInstrumentation +datadog.trace.instrumentation.synapse3.SynapseServerInstrumentation +datadog.trace.instrumentation.synapse3.SynapseServerWorkerInstrumentation +datadog.trace.instrumentation.tinylog2.LogEntryInstrumentation +datadog.trace.instrumentation.tinylog2.TinylogLoggingProviderInstrumentation +datadog.trace.instrumentation.twilio.TwilioAsyncInstrumentation +datadog.trace.instrumentation.twilio.TwilioSyncInstrumentation +datadog.trace.instrumentation.valkey.ValkeyInstrumentation +datadog.trace.instrumentation.websphere_jmx.WebsphereSecurityInstrumentation +datadog.trace.instrumentation.wildfly.EnvEntryInjectionSourceInstrumentation +datadog.trace.instrumentation.wildfly.ResourceReferenceProcessorInstrumentation +datadog.trace.instrumentation.akka.concurrent.AkkaActorCellInstrumentation +datadog.trace.instrumentation.akka.concurrent.AkkaEnvelopeInstrumentation +datadog.trace.instrumentation.akka.concurrent.AkkaForkJoinExecutorTaskInstrumentation +datadog.trace.instrumentation.akka.concurrent.AkkaForkJoinPoolInstrumentation +datadog.trace.instrumentation.akka.concurrent.AkkaForkJoinTaskInstrumentation +datadog.trace.instrumentation.akka.concurrent.AkkaMailboxInstrumentation +datadog.trace.instrumentation.akka.concurrent.AkkaRoutedActorCellInstrumentation +datadog.trace.instrumentation.akka.init.DisableTracingActorInitInstrumentation +datadog.trace.instrumentation.apachehttpasyncclient.ApacheHttpAsyncClientModule +datadog.trace.agent.tooling.Instrumenter$CanShortcutTypeMatching +datadog.trace.instrumentation.apachehttpclient.ApacheHttpClientInstrumentation +datadog.trace.instrumentation.apachehttpclient5.ApacheHttpAsyncClientInstrumentation +datadog.trace.instrumentation.apachehttpclient5.ApacheHttpClientInstrumentation +datadog.trace.instrumentation.armeria.grpc.client.ArmeriaGrpcClientModule +datadog.trace.instrumentation.armeria.grpc.server.HandlerRegistryBuilderInstrumentation +datadog.trace.instrumentation.armeria.jetty.ArmeriaHttpConnectionInstrumentation +datadog.trace.instrumentation.armeria.jetty.ArmeriaJettyInstrumentation +datadog.trace.instrumentation.aws.v2.dynamodb.DynamoDbClientInstrumentation +datadog.trace.instrumentation.aws.v2.eventbridge.EventBridgeClientInstrumentation +datadog.trace.instrumentation.aws.v1.lambda.LambdaHandlerInstrumentation +datadog.trace.instrumentation.aws.v2.s3.S3ClientInstrumentation +datadog.trace.instrumentation.aws.v0.AwsSdkModule +datadog.trace.instrumentation.aws.v0.EmrSdkModule +datadog.trace.instrumentation.aws.v2.AwsSdkModule +datadog.trace.instrumentation.aws.v2.sfn.SfnClientInstrumentation +datadog.trace.instrumentation.aws.v1.sns.SnsClientInstrumentation +datadog.trace.instrumentation.aws.v2.sns.SnsClientInstrumentation +datadog.trace.instrumentation.aws.v1.sqs.AbstractSqsInstrumentation +datadog.trace.instrumentation.aws.v1.sqs.QueueBufferConfigInstrumentation +datadog.trace.instrumentation.aws.v1.sqs.SqsClientInstrumentation +datadog.trace.instrumentation.aws.v1.sqs.SqsJmsMessageInstrumentation +datadog.trace.instrumentation.aws.v1.sqs.SqsReceiveRequestInstrumentation +datadog.trace.instrumentation.aws.v1.sqs.SqsReceiveResultInstrumentation +datadog.trace.instrumentation.aws.v2.sqs.SqsJmsMessageInstrumentation +datadog.trace.instrumentation.aws.v2.sqs.SqsModule +datadog.trace.instrumentation.confluentschemaregistry.ConfluentSchemaRegistryModule +datadog.trace.instrumentation.couchbase.client.CouchbaseBucketInstrumentation +datadog.trace.instrumentation.couchbase.client.CouchbaseClusterInstrumentation +datadog.trace.instrumentation.couchbase.client.CouchbaseCoreInstrumentation +datadog.trace.instrumentation.couchbase.client.CouchbaseNetworkInstrumentation +datadog.trace.instrumentation.couchbase_31.client.BaseRequestInstrumentation +datadog.trace.instrumentation.couchbase_31.client.CoreEnvironmentBuilderInstrumentation +datadog.trace.instrumentation.couchbase_31.client.CoreInstrumentation +datadog.trace.instrumentation.couchbase_31.client.DefaultErrorUtilInstrumentation +datadog.trace.instrumentation.couchbase_32.client.BaseRequestInstrumentation +datadog.trace.instrumentation.couchbase_32.client.CoreEnvironmentBuilderInstrumentation +datadog.trace.instrumentation.couchbase_32.client.CoreInstrumentation +datadog.trace.instrumentation.couchbase_32.client.DefaultErrorUtilInstrumentation +datadog.trace.instrumentation.datastax.cassandra.CassandraClientInstrumentation +datadog.trace.instrumentation.datastax.cassandra.CassandraClusterInstrumentation +datadog.trace.instrumentation.datastax.cassandra38.CassandraClusterInstrumentation +datadog.trace.instrumentation.datastax.cassandra4.CassandraClientInstrumentation +datadog.trace.instrumentation.dropwizard.view.DropwizardViewInstrumentation +datadog.trace.instrumentation.elasticsearch5.Elasticsearch5RestClientInstrumentation +datadog.trace.instrumentation.elasticsearch6_4.Elasticsearch6RestClientInstrumentation +datadog.trace.instrumentation.elasticsearch7.Elasticsearch7RestClientInstrumentation +datadog.trace.instrumentation.elasticsearch2.Elasticsearch2TransportClientInstrumentation +datadog.trace.instrumentation.elasticsearch5.Elasticsearch5TransportClientInstrumentation +datadog.trace.instrumentation.elasticsearch5_3.Elasticsearch53TransportClientInstrumentation +datadog.trace.instrumentation.elasticsearch6.Elasticsearch6TransportClientInstrumentation +datadog.trace.instrumentation.elasticsearch7_3.Elasticsearch73TransportClientInstrumentation +datadog.trace.instrumentation.graal.nativeimage.AbstractNativeImageModule +datadog.trace.instrumentation.graal.nativeimage.GraalNativeImageModule +datadog.trace.instrumentation.graal.nativeimage.VMRuntimeModule +datadog.trace.instrumentation.graphqljava14.GraphQLJavaInstrumentation +datadog.trace.instrumentation.graphqljava20.GraphQLJavaInstrumentation +datadog.trace.instrumentation.graphqljava.GraphQLUnwrapExceptionInstrumentation +datadog.trace.instrumentation.grizzly.GrizzlyModule +datadog.trace.instrumentation.grizzly.client.GrizzlyClientModule +datadog.trace.instrumentation.grizzlyhttp232.GrizzlyBodyModule +datadog.trace.instrumentation.grizzlyhttp232.GrizzlyFilterChainModule +datadog.trace.instrumentation.grizzlyhttp232.ParsedBodyParametersInstrumentation +datadog.trace.instrumentation.hazelcast36.HazelcastLegacyModule +datadog.trace.instrumentation.hazelcast39.HazelcastModule +datadog.trace.instrumentation.hazelcast4.HazelcastModule +datadog.trace.instrumentation.hibernate.core.v3_3.HibernateModule +datadog.trace.instrumentation.hibernate.core.v4_0.HibernateModule +datadog.trace.instrumentation.hibernate.core.v4_3.HibernateModule +datadog.trace.instrumentation.rmi.client.RmiClientInstrumentation +datadog.trace.instrumentation.rmi.context.client.RmiClientContextInstrumentation +datadog.trace.instrumentation.rmi.context.server.RmiServerContextInstrumentation +datadog.trace.instrumentation.rmi.server.RmiServerInstrumentation +datadog.trace.instrumentation.jbosslogmanager.ExtLogRecordInstrumentation +datadog.trace.instrumentation.jbosslogmanager.LoggerNodeInstrumentation +datadog.trace.instrumentation.jbossmodules.ModuleInstrumentation +datadog.trace.instrumentation.jedis.JedisInstrumentation +datadog.trace.instrumentation.jedis30.JedisInstrumentation +datadog.trace.instrumentation.jedis40.JedisInstrumentation +datadog.trace.instrumentation.connection_error.jersey.ClientRuntimeInstrumentation +datadog.trace.instrumentation.jaxrs2.AbstractRequestContextInstrumentation +datadog.trace.instrumentation.jaxrs2.JerseyRequestContextInstrumentation +datadog.trace.agent.tooling.Instrumenter$HasTypeAdvice +datadog.trace.instrumentation.jetty11.JettyServerInstrumentation +net.bytebuddy.asm.AsmVisitorWrapper +datadog.trace.instrumentation.jetty11.RequestInstrumentation +datadog.trace.instrumentation.jetty12.AbstractSessionManagerInstrumentation +datadog.trace.instrumentation.jetty12.ContextHandlerInstrumentation +datadog.trace.instrumentation.jetty12.JettyServerInstrumentation +datadog.trace.instrumentation.jetty70.JettyCommitResponseInstrumentation +datadog.trace.instrumentation.jetty70.JettyGeneratorInstrumentation +datadog.trace.instrumentation.jetty70.JettyServerInstrumentation +datadog.trace.instrumentation.jetty70.RequestInstrumentation +datadog.trace.instrumentation.jetty70.ServerHandleInstrumentation +datadog.trace.instrumentation.jetty76.JettyCommitResponseInstrumentation +datadog.trace.instrumentation.jetty76.JettyGeneratorInstrumentation +datadog.trace.instrumentation.jetty76.JettyServerInstrumentation +datadog.trace.instrumentation.jetty76.RequestInstrumentation +datadog.trace.instrumentation.jetty76.ServerHandleInstrumentation +datadog.trace.instrumentation.jetty904.JettyCommitResponseInstrumentation +datadog.trace.instrumentation.jetty93.JettyCommitResponseInstrumentation +datadog.trace.instrumentation.jetty9421.JettyCommitResponseInstrumentation +datadog.trace.instrumentation.jetty9.JettyCommitResponseInstrumentation +datadog.trace.instrumentation.jetty9.JettyServerInstrumentation +datadog.trace.instrumentation.jetty9.RequestInstrumentation +datadog.trace.instrumentation.jetty9.ServerHandleInstrumentation +datadog.trace.instrumentation.jetty9.WebSocketSessionInstrumentation +datadog.trace.instrumentation.jetty_util.QueuedThreadPoolInstrumentation +datadog.trace.instrumentation.jms.JavaxJmsModule +datadog.trace.instrumentation.jms.JakartaJmsModule +datadog.trace.instrumentation.springjms.AbstractPollingMessageListenerContainerInstrumentation +datadog.trace.instrumentation.kafka_streams.KafkaStreamTaskInstrumentation +datadog.trace.instrumentation.kafka_streams.KafkaStreamsSourceNodeRecordDeserializerInstrumentation +datadog.trace.instrumentation.kafka_clients.ConsumerCoordinatorInstrumentation +datadog.trace.instrumentation.kafka_clients.KafkaConsumerInfoInstrumentation +datadog.trace.instrumentation.kafka_clients.KafkaConsumerInstrumentation +datadog.trace.instrumentation.kafka_clients.KafkaProducerInstrumentation +datadog.trace.instrumentation.kafka_clients.MetadataInstrumentation +datadog.trace.instrumentation.kafka_clients38.ConsumerCoordinatorInstrumentation +datadog.trace.instrumentation.kafka_clients38.KafkaConsumerInfoInstrumentation +datadog.trace.instrumentation.kafka_clients38.KafkaConsumerInstrumentation +datadog.trace.instrumentation.kafka_clients38.KafkaProducerInstrumentation +datadog.trace.instrumentation.kafka_clients38.LegacyKafkaConsumerInfoInstrumentation +datadog.trace.instrumentation.kafka_clients38.MessageListenerInstrumentation +datadog.trace.instrumentation.kafka_clients38.MetadataInstrumentation +datadog.trace.instrumentation.kafka_streams10.InternalTopologyBuilderInstrumentation +datadog.trace.instrumentation.kafka_connect.ConnectWorkerInstrumentation +datadog.trace.instrumentation.lettuce4.LettuceAsyncCommandsInstrumentation +datadog.trace.instrumentation.lettuce4.LettuceClientInstrumentation +datadog.trace.instrumentation.lettuce5.AsyncCommandInstrumentation +datadog.trace.instrumentation.lettuce5.CommandHandlerInstrumentation +datadog.trace.instrumentation.lettuce5.LettuceAsyncCommandsInstrumentation +datadog.trace.instrumentation.lettuce5.LettuceClientInstrumentation +datadog.trace.instrumentation.lettuce5.LettuceReactiveClientInstrumentation +datadog.trace.instrumentation.lettuce5.MasterReplicaConnectionProviderInstrumentation +datadog.trace.instrumentation.liberty20.GetPartsInstrumentation +datadog.trace.instrumentation.liberty20.HttpInboundServiceContextImplInstrumentation +datadog.trace.instrumentation.liberty20.LibertyServerInstrumentation +datadog.trace.instrumentation.liberty20.ParseParametersInstrumentation +datadog.trace.instrumentation.liberty20.ParsePostDataInstrumentation +datadog.trace.instrumentation.liberty20.RequestFinishInstrumentation +datadog.trace.instrumentation.liberty20.ResponseFinishInstrumentation +datadog.trace.instrumentation.liberty20.ThreadContextClassloaderInstrumentation +datadog.trace.instrumentation.liberty20.WebAppHandleExceptionInstrumentation +datadog.trace.instrumentation.servlet3.AsyncContextInstrumentation +datadog.trace.instrumentation.servlet3.RumAsyncContextInstrumentation +datadog.trace.instrumentation.servlet3.Servlet3Instrumentation +datadog.trace.instrumentation.liberty23.HttpInboundServiceContextImplInstrumentation +datadog.trace.instrumentation.liberty23.LibertyServerInstrumentation +datadog.trace.instrumentation.liberty23.ParseParametersInstrumentation +datadog.trace.instrumentation.liberty23.ParsePostDataInstrumentation +datadog.trace.instrumentation.liberty23.RequestFinishInstrumentation +datadog.trace.instrumentation.liberty23.ResponseFinishInstrumentation +datadog.trace.instrumentation.liberty23.WebAppHandleExceptionInstrumentation +datadog.trace.instrumentation.servlet5.JakartaServletInstrumentation +datadog.trace.instrumentation.servlet5.RumAsyncContextInstrumentation +datadog.trace.instrumentation.log4j1.CategoryInstrumentation +datadog.trace.instrumentation.log4j1.LoggingEventInstrumentation +datadog.trace.instrumentation.log4j2.LoggerConfigInstrumentation +datadog.trace.instrumentation.log4j2.ThreadContextInstrumentation +datadog.trace.instrumentation.log4j27.ContextDataInjectorFactoryInstrumentation +datadog.trace.instrumentation.mongo.BaseCluster410Instrumentation +datadog.trace.instrumentation.mongo.BaseClusterInstrumentation +datadog.trace.instrumentation.mongo.DefaultConnectionPool410Instrumentation +datadog.trace.instrumentation.mongo.DefaultConnectionPoolInstrumentation +datadog.trace.instrumentation.mongo.InternalStreamConnectionInstrumentation +datadog.trace.instrumentation.mongo.ByteBufBsonDocumentInstrumentation +datadog.trace.instrumentation.mongo.MongoClient31Instrumentation +datadog.trace.instrumentation.mongo.MongoClient34Instrumentation +datadog.trace.instrumentation.mongo.DefaultServerConnection36Instrumentation +datadog.trace.instrumentation.mongo.DefaultServerConnection38Instrumentation +datadog.trace.instrumentation.netty38.ChannelFutureListenerInstrumentation +datadog.trace.instrumentation.netty38.NettyChannelPipelineInstrumentation +datadog.trace.instrumentation.netty38.NettyChannelInstrumentation +datadog.trace.instrumentation.netty40.ChannelFutureListenerInstrumentation +datadog.trace.instrumentation.netty40.NettyChannelPipelineInstrumentation +datadog.trace.instrumentation.netty40.NettyChannelHandlerContextInstrumentation +datadog.trace.instrumentation.netty41.ChannelFutureListenerInstrumentation +datadog.trace.instrumentation.netty41.NettyChannelPipelineInstrumentation +datadog.trace.instrumentation.netty41.Http2MultiplexHandlerStreamChannelInstrumentation +datadog.trace.instrumentation.netty41.HttpPostRequestDecoderInstrumentation +datadog.trace.instrumentation.netty41.NettyChannelHandlerContextInstrumentation +datadog.trace.instrumentation.vertx_4_0.client.HttpClientRequestBaseInstrumentation +datadog.trace.instrumentation.vertx_4_0.server.HttpServerRequestInstrumentation +datadog.trace.instrumentation.vertx_4_0.server.HttpServerResponseEndHandlerInstrumentation +datadog.trace.instrumentation.vertx_4_0.server.RequestBodyInstrumentation +datadog.trace.instrumentation.vertx_4_0.server.RouteHandlerInstrumentation +datadog.trace.instrumentation.vertx_4_0.server.RouteImplInstrumentation +datadog.trace.instrumentation.vertx_4_0.server.RoutingContextImplInstrumentation +datadog.trace.instrumentation.vertx_4_0.server.RoutingContextInstrumentation +datadog.trace.instrumentation.vertx_4_0.server.VertxHandlerInstrumentation +datadog.trace.instrumentation.vertx_4_0.server.VertxImplInstrumentation +datadog.trace.instrumentation.vertx_5_0.server.HttpServerRequestInstrumentation +datadog.trace.instrumentation.vertx_5_0.server.RoutingContextImplInstrumentation +datadog.trace.instrumentation.netty4.promise.NettyPromiseInstrumentation +datadog.trace.instrumentation.okhttp2.AppSecHttpEngineInstrumentation +datadog.trace.instrumentation.okhttp2.OkHttp2Instrumentation +datadog.trace.instrumentation.okhttp3.AppSecHttpEngineInstrumentation +datadog.trace.instrumentation.okhttp3.OkHttp3Instrumentation +datadog.trace.instrumentation.openai_java.ChatCompletionModule +datadog.trace.instrumentation.openai_java.CompletionModule +datadog.trace.instrumentation.openai_java.EmbeddingModule +datadog.trace.instrumentation.openai_java.ResponseModule +datadog.trace.instrumentation.opensearch.OpensearchRestClientInstrumentation +datadog.trace.instrumentation.opensearch.OpensearchTransportClientInstrumentation +datadog.trace.instrumentation.opensearch.ThreadedActionListenerInstrumentation +datadog.trace.instrumentation.opentelemetry.OpenTelemetryInstrumentation +datadog.trace.instrumentation.opentelemetry127.OpenTelemetryLogsInstrumentation +datadog.trace.instrumentation.opentelemetry14.OpenTelemetryInstrumentation +datadog.trace.instrumentation.opentelemetry14.context.OpenTelemetryContextInstrumentation +datadog.trace.instrumentation.opentelemetry14.context.OpenTelemetryContextStorageInstrumentation +datadog.trace.instrumentation.opentelemetry147.OpenTelemetryMetricsInstrumentation +datadog.trace.instrumentation.opentelemetry.annotations.AddingSpanAttributesInstrumentation +datadog.trace.instrumentation.opentelemetry.annotations.WithSpanAnnotationInstrumentation +datadog.trace.instrumentation.opentracing31.GlobalTracerInstrumentation +datadog.trace.instrumentation.opentracing32.GlobalTracerInstrumentation +datadog.trace.instrumentation.pekko.concurrent.PekkoActorCellInstrumentation +datadog.trace.instrumentation.pekko.concurrent.PekkoEnvelopeInstrumentation +datadog.trace.instrumentation.pekko.concurrent.PekkoForkJoinExecutorTaskInstrumentation +datadog.trace.instrumentation.pekko.concurrent.PekkoMailboxInstrumentation +datadog.trace.instrumentation.pekko.concurrent.PekkoRoutedActorCellInstrumentation +datadog.trace.instrumentation.pekko.concurrent.PekkoSchedulerInstrumentation +datadog.trace.instrumentation.pekkohttp.PekkoHttp2ServerInstrumentation +datadog.trace.instrumentation.pekkohttp.PekkoHttpServerInstrumentation +datadog.trace.instrumentation.pekkohttp.PekkoHttpSingleRequestInstrumentation +datadog.trace.instrumentation.pekkohttp.PekkoPoolMasterActorInstrumentation +datadog.trace.instrumentation.play23.PlayInstrumentation +datadog.trace.instrumentation.play24.PlayInstrumentation +datadog.trace.instrumentation.play27.appsec.RoutingDsl27Instrumentation +datadog.trace.instrumentation.play26.PlayInstrumentation +datadog.trace.instrumentation.play26.SaveRawRemoteConnectionInstrumentation +datadog.trace.instrumentation.play25.appsec.DelegatingBodyParserInstrumentation +datadog.trace.instrumentation.play25.appsec.FormUrlEncodedInstrumentation +datadog.trace.instrumentation.play25.appsec.HttpErrorHandlerInstrumentation +datadog.trace.instrumentation.play25.appsec.PathPatternInstrumentation +datadog.trace.instrumentation.play25.appsec.PlayBodyParsersInstrumentation +datadog.trace.instrumentation.play25.appsec.ResultsStatusInstrumentation +datadog.trace.instrumentation.play25.appsec.RoutingDslInstrumentation +datadog.trace.instrumentation.play25.appsec.SirdPathExtractorInstrumentation +datadog.trace.instrumentation.play25.appsec.StatusHeaderInstrumentation +datadog.trace.instrumentation.play25.appsec.TolerantJsonInstrumentation +datadog.trace.instrumentation.play25.appsec.TolerantTextInstrumentation +datadog.trace.instrumentation.play26.appsec.DelegatingBodyParserInstrumentation +datadog.trace.instrumentation.play26.appsec.FormUrlEncodedInstrumentation +datadog.trace.instrumentation.play26.appsec.HttpErrorHandlerInstrumentation +datadog.trace.instrumentation.play26.appsec.PathPatternInstrumentation +datadog.trace.instrumentation.play26.appsec.PlayBodyParsersInstrumentation +datadog.trace.instrumentation.play26.appsec.ResultsStatusInstrumentation +datadog.trace.instrumentation.play26.appsec.RoutingDslInstrumentation +datadog.trace.instrumentation.play26.appsec.SirdPathExtractorInstrumentation +datadog.trace.instrumentation.play26.appsec.StatusHeaderInstrumentation +datadog.trace.instrumentation.play26.appsec.TolerantJsonInstrumentation +datadog.trace.instrumentation.play26.appsec.TolerantTextInstrumentation +datadog.trace.instrumentation.play26.appsec.TolerantXmlInstrumentation +datadog.trace.instrumentation.playws.BasePlayWSClientInstrumentation +datadog.trace.instrumentation.playws1.PlayWSClientInstrumentation +datadog.trace.instrumentation.playws2.PlayWSClientInstrumentation +datadog.trace.instrumentation.playws21.PlayWSClientInstrumentation +datadog.trace.instrumentation.redisson.RedissonInstrumentation +datadog.trace.instrumentation.redisson23.RedissonInstrumentation +datadog.trace.instrumentation.redisson30.RedissonInstrumentation +datadog.trace.instrumentation.resilience4j.Resilience4jReactorModule +datadog.trace.instrumentation.resilience4j.Resilience4jModule +datadog.trace.instrumentation.connection_error.resteasy.ResteasyClientConnectionErrorInstrumentation +datadog.trace.instrumentation.resteasy.DecodedFormParametersInstrumentation +datadog.trace.agent.tooling.muzzle.ReferenceProvider +datadog.trace.instrumentation.resteasy.MessageBodyReaderInvocationInstrumentation +datadog.trace.instrumentation.resteasy.MethodExpressionInstrumentation +datadog.trace.instrumentation.resteasy.MultipartFormDataReaderInstrumentation +datadog.trace.instrumentation.jakarta3.ContainerRequestFilterInstrumentation +datadog.trace.instrumentation.jakarta3.AbstractRequestContextInstrumentation +datadog.trace.instrumentation.jakarta3.DefaultRequestContextInstrumentation +datadog.trace.instrumentation.jakarta3.JakartaRsAnnotationsInstrumentation +datadog.trace.instrumentation.jakarta3.JakartaRsAsyncResponseInstrumentation +datadog.trace.instrumentation.jakarta3.MessageBodyWriterInstrumentation +datadog.trace.instrumentation.rxjava2.RxJavaModule +datadog.trace.instrumentation.rxjava3.RxJavaModule +datadog.trace.instrumentation.scala.concurrent.ScalaConcurrentModule +datadog.trace.instrumentation.servicetalk0_42_0.ServiceTalkInstrumentation +datadog.trace.instrumentation.servicetalk0_42_0.ContextMapInstrumentation +datadog.trace.instrumentation.servicetalk0_42_0.ContextPreservingInstrumentation +datadog.trace.instrumentation.servicetalk0_42_56.CapturedContextProvidersInstrumentation +datadog.trace.instrumentation.sofarpc.SofaRpcModule +datadog.trace.instrumentation.spark.AbstractSparkInstrumentation +datadog.trace.instrumentation.spark.Spark212Instrumentation +datadog.trace.instrumentation.spark.Spark213Instrumentation +datadog.trace.instrumentation.spark.OpenLineageInstrumentation +datadog.trace.instrumentation.spark.SparkExitInstrumentation +datadog.trace.instrumentation.spark.SparkLauncherInstrumentation +datadog.trace.instrumentation.spark.SparkExecutorInstrumentation +datadog.trace.instrumentation.sparkjava.RoutesInstrumentation +datadog.trace.instrumentation.springbeans.BeanFactoryInstrumentation +datadog.trace.instrumentation.codeorigin.CodeOriginInstrumentation +datadog.trace.instrumentation.springboot.SBCodeOriginInstrumentation +datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers +datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$Named +datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$OneOf +datadog.trace.instrumentation.springboot.SpringApplicationInstrumentation +datadog.trace.instrumentation.springboot.SpringServletInitializerInstrumentation +datadog.trace.instrumentation.springcloudzuul2.ZuulProxyRequestHelperInstrumentation +datadog.trace.instrumentation.springcloudzuul2.ZuulSendForwardFilterInstrumentation +datadog.trace.instrumentation.springdata.SpringRepositoryInstrumentation +datadog.trace.instrumentation.springmessaging.KotlinAwareHandlerInstrumentation +datadog.trace.instrumentation.springmessaging.SpringMessageHandlerInstrumentation +datadog.trace.instrumentation.springamqp.AbstractMessageListenerContainerInstrumentation +datadog.trace.instrumentation.springamqp.BlockingQueueConsumerInstrumentation +datadog.trace.instrumentation.springamqp.DeliveryInstrumentation +datadog.trace.instrumentation.springscheduling.SpringAsyncInstrumentation +datadog.trace.instrumentation.springscheduling.SpringSchedulingInstrumentation +datadog.trace.instrumentation.springws2.MethodEndpointInstrumentation +datadog.trace.instrumentation.tibcobw5.AbstractTibcoInstrumentation +datadog.trace.instrumentation.tibcobw5.JobInstrumentation +datadog.trace.instrumentation.tibcobw5.JobPoolInstrumentation +datadog.trace.instrumentation.tibcobw5.TaskInstrumentation +datadog.trace.instrumentation.tibcobw5.ThreadPoolInstrumentation +datadog.trace.instrumentation.tibcobw6.AbstractTibcoInstrumentation +datadog.trace.instrumentation.tibcobw6.BehaviorInstrumentation +datadog.trace.instrumentation.tibcobw6.CallbackHandlerInstrumentation +datadog.trace.instrumentation.tibcobw6.JmsMessageGetterInstrumentation +datadog.trace.instrumentation.tibcobw6.ProcessInstrumentation +datadog.trace.instrumentation.tomcat.ContainerBaseInstrumentation +datadog.trace.instrumentation.tomcat.RequestInstrumentation +datadog.trace.instrumentation.tomcat.ResponseInstrumentation +datadog.trace.instrumentation.tomcat.TomcatServerInstrumentation +datadog.trace.agent.tooling.muzzle.OrReference +datadog.trace.instrumentation.tomcat.WsHandshakeRequestInstrumentation +datadog.trace.instrumentation.tomcat.WsHttpUpgradeHandlerInstrumentation +datadog.trace.instrumentation.tomcat9.WebappClassLoaderInstrumentation +datadog.trace.instrumentation.tomcat55.CommitActionInstrumentation +datadog.trace.instrumentation.tomcat55.ParsedBodyParametersInstrumentation +datadog.trace.instrumentation.tomcat7.CommitActionInstrumentation +datadog.trace.instrumentation.tomcat7.GlassFishMultipartInstrumentation +datadog.trace.instrumentation.tomcat7.ParsePartsInstrumentation +datadog.trace.instrumentation.undertow.FormDataParserInstrumentation +datadog.trace.instrumentation.undertow.HandlerInstrumentation +datadog.trace.instrumentation.undertow.HttpRequestParserInstrumentation +datadog.trace.instrumentation.undertow.HttpServerExchangeSenderInstrumentation +datadog.trace.instrumentation.undertow.MultiPartUploadHandlerInstrumentation +datadog.trace.instrumentation.undertow.RequestParserInstrumentation +datadog.trace.instrumentation.undertow.ServletInstrumentation +datadog.trace.instrumentation.undertow.UndertowInstrumentation +datadog.trace.instrumentation.undertow.JakartaServletInstrumentation +datadog.trace.instrumentation.vertx_sql_client_39.CursorImplInstrumentation +datadog.trace.instrumentation.vertx_sql_client_39.PreparedQueryInstrumentation +datadog.trace.instrumentation.vertx_sql_client_39.PreparedStatementImplInstrumentation +datadog.trace.instrumentation.vertx_sql_client_39.QueryImplInstrumentation +datadog.trace.instrumentation.vertx_sql_client_39.SqlClientBaseInstrumentation +datadog.trace.instrumentation.vertx_sql_client_39.SqlConnectionBaseInstrumentation +datadog.trace.instrumentation.websocket.jsr256.JavaxWebsocketModule +datadog.trace.instrumentation.websocket.jsr256.JakartaWebsocketModule +datadog.trace.instrumentation.jakartaws.WebServiceInstrumentation +datadog.trace.instrumentation.zio.v2_0.ZioRuntimeInstrumentation +datadog.trace.instrumentation.akkahttp.AkkaHttp2ServerInstrumentation +datadog.trace.instrumentation.akkahttp.AkkaHttpServerInstrumentation +datadog.trace.instrumentation.akkahttp.AkkaHttpSingleRequestInstrumentation +datadog.trace.instrumentation.akkahttp.AkkaPoolMasterActorInstrumentation +datadog.trace.instrumentation.akkahttp.DefaultExceptionHandlerInstrumentation +datadog.trace.instrumentation.akkahttp.appsec.Bug4304Instrumentation +datadog.trace.instrumentation.akkahttp.appsec.ConfigProvideRemoteAddressHeaderInstrumentation +datadog.trace.instrumentation.akkahttp.appsec.ScalaListCollectorMuzzleReferences +datadog.trace.instrumentation.akkahttp.appsec.FormDataToStrictInstrumentation +datadog.trace.instrumentation.akkahttp.appsec.JacksonUnmarshallerInstrumentation +datadog.trace.instrumentation.akkahttp.appsec.MultipartUnmarshallersInstrumentation +datadog.trace.instrumentation.akkahttp.appsec.PredefinedFromEntityUnmarshallersInstrumentation +datadog.trace.instrumentation.akkahttp.appsec.SprayUnmarshallerInstrumentation +datadog.trace.instrumentation.akkahttp.appsec.StrictFormCompanionInstrumentation +datadog.trace.instrumentation.micronaut.v2_0.MicronautInstrumentation +datadog.trace.instrumentation.micronaut.v3_0.MicronautInstrumentation +datadog.trace.instrumentation.micronaut.v4_0.MicronautInstrumentation +datadog.trace.instrumentation.micronaut.MicronautCodeOriginInstrumentation +datadog.trace.instrumentation.springweb6.DispatcherServletInstrumentation +datadog.trace.instrumentation.springweb6.HandlerAdapterInstrumentation +datadog.trace.instrumentation.springweb6.InvocableHandlerMethodInstrumentation +datadog.trace.instrumentation.springweb6.ResourceNameFilterMappingInstrumentation +datadog.trace.instrumentation.springweb6.ServletPathRequestFilterInstrumentation +datadog.trace.instrumentation.springweb6.SpringWebCodeOriginInstrumentation +datadog.trace.instrumentation.springweb6.TemplateAndMatrixVariablesInstrumentation +datadog.trace.instrumentation.springweb6.TemplateVariablesUrlHandlerInstrumentation +datadog.trace.instrumentation.springweb6.WebApplicationContextInstrumentation +datadog.trace.instrumentation.java.lang.jdk22.FFMApiModule +datadog.trace.instrumentation.trace_annotation.DoNotTraceAnnotationInstrumentation +datadog.trace.instrumentation.trace_annotation.TraceAnnotationsInstrumentation +datadog.trace.instrumentation.trace_annotation.TraceConfigInstrumentation +datadog.trace.instrumentation.elasticsearch.ThreadedActionListenerInstrumentation +datadog.trace.instrumentation.java.completablefuture.CompletableFutureModule +datadog.trace.instrumentation.java.completablefuture.AsyncTaskInstrumentation +datadog.trace.instrumentation.java.concurrent.AsyncPropagatingDisableInstrumentation +datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$StartsWith +datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$EndsWith +datadog.trace.instrumentation.java.concurrent.WrapRunnableAsNewTaskInstrumentation +datadog.trace.instrumentation.java.concurrent.executor.ExecutorModule +datadog.trace.instrumentation.java.concurrent.forkjoin.ForkJoinModule +datadog.trace.instrumentation.java.concurrent.runnable.ConsumerTaskInstrumentation +datadog.trace.instrumentation.java.concurrent.runnable.RunnableFutureInstrumentation +datadog.trace.instrumentation.java.concurrent.runnable.RunnableInstrumentation +datadog.trace.instrumentation.java.concurrent.timer.JavaTimerModule +datadog.trace.instrumentation.java.concurrent.structuredconcurrency21.StructuredTaskScope21Instrumentation +datadog.trace.instrumentation.java.concurrent.virtualthread.TaskRunnerInstrumentation +datadog.trace.instrumentation.java.concurrent.structuredconcurrency25.StructuredTaskScope25Instrumentation +datadog.trace.instrumentation.java.lang.ProcessImplInstrumentation +datadog.trace.instrumentation.java.lang.RuntimeInstrumentation +datadog.trace.instrumentation.java.lang.ShutdownInstrumentation +datadog.trace.instrumentation.java.lang.management.CustomMBeanBuilderInstrumentation +datadog.trace.instrumentation.java.lang.jdk21.VirtualThreadInstrumentation +datadog.trace.instrumentation.java.lang.module.JpmsClearanceInstrumentation +datadog.trace.instrumentation.java.lang.classloading.ClassloadingInstrumentation +datadog.trace.instrumentation.java.lang.classloading.DefineClassInstrumentation +datadog.trace.instrumentation.java.net.HttpUrlConnectionInstrumentation +datadog.trace.instrumentation.java.net.UrlInstrumentation +datadog.trace.instrumentation.httpclient.HttpClientInstrumentation +datadog.trace.instrumentation.httpclient.HttpHeadersInstrumentation +datadog.trace.instrumentation.httpclient.JpmsInetAddressInstrumentation +datadog.trace.instrumentation.jersey2.MessageBodyReaderInstrumentation +datadog.trace.instrumentation.jersey2.MultiPartReaderServerSideInstrumentation +datadog.trace.instrumentation.jersey2.ServerRuntimeResponderInstrumentation +datadog.trace.instrumentation.jersey2.UriRoutingContextGetPathSegmentsInstrumentation +datadog.trace.instrumentation.jersey2.UriRoutingContextInstrumentation +datadog.trace.instrumentation.jersey3.MessageBodyReaderInstrumentation +datadog.trace.instrumentation.jersey3.MultiPartReaderServerSideInstrumentation +datadog.trace.instrumentation.jersey3.UriRoutingContextGetPathSegmentsInstrumentation +datadog.trace.instrumentation.jetty11.RequestExtractContentParametersInstrumentation +datadog.trace.instrumentation.jetty70.RequestExtractParametersInstrumentation +datadog.trace.instrumentation.jetty70.UrlEncodedInstrumentation +datadog.trace.instrumentation.jetty8.RequestGetPartsInstrumentation +datadog.trace.instrumentation.jetty92.RequestExtractContentParametersInstrumentation +datadog.trace.instrumentation.jetty93.RequestExtractContentParametersInstrumentation +datadog.trace.instrumentation.jetty94.RequestExtractContentParametersInstrumentation +datadog.trace.instrumentation.jetty_client10.JettyClientInstrumentation +datadog.trace.instrumentation.jetty_client12.JettyHttpClientInstrumentation +datadog.trace.instrumentation.jetty_client91.FutureResponseListenerInstrumentation +datadog.trace.instrumentation.jetty_client91.JettyAddListenerInstrumentation +datadog.trace.instrumentation.jetty_client91.JettyClientInstrumentation +datadog.trace.instrumentation.jetty10.DispatchableInstrumentation +datadog.trace.instrumentation.jetty10.JettyCommitResponseInstrumentation +datadog.trace.instrumentation.jetty10.JettyServerInstrumentation +datadog.trace.instrumentation.jetty10.RequestInstrumentation +datadog.trace.instrumentation.jetty10.ServerHandleInstrumentation +datadog.trace.instrumentation.jaxrs2.Resteasy30RequestContextInstrumentation +datadog.trace.instrumentation.jaxrs2.Resteasy31RequestContextInstrumentation +datadog.trace.instrumentation.scala210.concurrent.ScalaPromiseModule +datadog.trace.instrumentation.scala213.concurrent.ScalaPromiseModule +datadog.trace.instrumentation.servlet2.Servlet2Instrumentation +datadog.trace.agent.tooling.bytebuddy.matcher.ClassLoaderMatchers +datadog.trace.agent.tooling.bytebuddy.matcher.ClassLoaderMatchers$1 +datadog.trace.agent.tooling.bytebuddy.matcher.ClassLoaderMatchers$HasClassMatcher +datadog.trace.instrumentation.servlet2.Servlet2ResponseStatusInstrumentation +datadog.trace.instrumentation.servlet.dispatcher.RequestDispatcherInstrumentation +datadog.trace.instrumentation.servlet.dispatcher.ServletContextInstrumentation +datadog.trace.instrumentation.servlet.filter.FilterInstrumentation +datadog.trace.instrumentation.servlet.http.HttpServletInstrumentation +datadog.trace.instrumentation.servlet.http.HttpServletResponseInstrumentation +datadog.trace.instrumentation.springsecurity5.AuthenticationManagerInstrumentation +datadog.trace.instrumentation.springsecurity5.SecurityContextHolderInstrumentation +datadog.trace.instrumentation.springsecurity5.UserDetailsManagerInstrumentation +datadog.trace.instrumentation.springsecurity5.UsernameNotFoundExceptionInstrumentation +datadog.trace.instrumentation.springwebflux.client.WebClientFilterInstrumentation +datadog.trace.instrumentation.springwebflux.server.AbstractWebfluxInstrumentation +datadog.trace.instrumentation.springwebflux.server.DispatcherHandlerInstrumentation +datadog.trace.instrumentation.springwebflux.server.HandlerAdapterInstrumentation +datadog.trace.instrumentation.springwebflux.server.RouterFunctionInstrumentation +datadog.trace.instrumentation.springweb.AppSecDispatcherServletInstrumentation +datadog.trace.instrumentation.springweb.DispatcherServletInstrumentation +datadog.trace.instrumentation.springweb.HandlerAdapterInstrumentation +datadog.trace.instrumentation.springweb.HttpMessageConverterInstrumentation +datadog.trace.instrumentation.springweb.InvocableHandlerMethodInstrumentation +datadog.trace.instrumentation.springweb.SpringBeanProcessorInstrumentation +datadog.trace.instrumentation.springweb.TemplateAndMatrixVariablesInstrumentation +datadog.trace.instrumentation.springweb.TemplateVariablesUrlHandlerInstrumentation +datadog.trace.instrumentation.springweb.WebApplicationContextInstrumentation +datadog.trace.instrumentation.springweb.AppSecDispatcherServletWithPathPatternsInstrumentation +datadog.trace.instrumentation.springweb.ServletPathRequestFilterInstrumentation +datadog.trace.instrumentation.tomcat6.ParsedBodyParametersInstrumentation +datadog.trace.instrumentation.vertx_sql_client.MySQLConnectionFactoryInstrumentation +datadog.trace.instrumentation.vertx_sql_client.MySQLConnectionImplInstrumentation +datadog.trace.instrumentation.vertx_sql_client.MySQLPoolImplInstrumentation +datadog.trace.instrumentation.vertx_sql_client_4.MySQLConnectionFactoryInstrumentation +datadog.trace.instrumentation.vertx_sql_client_4.MySQLConnectionImplInstrumentation +datadog.trace.instrumentation.vertx_sql_client_4.MySQLPoolImplInstrumentation +datadog.trace.instrumentation.vertx_sql_client_4_4_2.MySQLConnectionFactoryInstrumentation +datadog.trace.instrumentation.vertx_sql_client_4_4_2.MySQLDriverInstrumentation +datadog.trace.instrumentation.vertx_sql_client_4_4_2.SqlConnectionBaseInstrumentation +datadog.trace.instrumentation.vertx_pg_client_4.PgConnectionFactoryInstrumentation +datadog.trace.instrumentation.vertx_pg_client_4.PgConnectionImplInstrumentation +datadog.trace.instrumentation.vertx_pg_client_4.PgPoolImplInstrumentation +datadog.trace.instrumentation.vertx_pg_client_4_4_2.PgConnectionFactoryInstrumentation +datadog.trace.instrumentation.vertx_pg_client_4_4_2.PgDriverInstrumentation +datadog.trace.instrumentation.vertx_redis_client.CommandImplInstrumentation +datadog.trace.instrumentation.vertx_redis_client.RedisAPIInstrumentation +datadog.trace.instrumentation.vertx_redis_client.RedisInstrumentation +datadog.trace.instrumentation.vertx_redis_client.RequestImplInstrumentation +datadog.trace.instrumentation.vertx_3_4.server.HttpServerRequestInstrumentation +datadog.trace.instrumentation.vertx_3_4.server.HttpServerResponseEndHandlerInstrumentation +datadog.trace.instrumentation.vertx_3_4.server.RouteHandlerInstrumentation +datadog.trace.instrumentation.vertx_3_4.server.RouteImplInstrumentation +datadog.trace.instrumentation.vertx_3_4.server.RoutingContextImplInstrumentation +datadog.trace.instrumentation.vertx_3_4.server.VertxImplInstrumentation +datadog.trace.instrumentation.websocket.jetty10.Jetty10JavaxPojoWebSocketModule +datadog.trace.instrumentation.websocket.jetty11.Jetty11JakartaPojoWebsocketModule +datadog.trace.instrumentation.websocket.jetty12.Jetty12EE10JakartaPojoWebsocketModule +datadog.trace.instrumentation.websocket.jetty12.Jetty12EE8JavaxPojoWebsocketModule +datadog.trace.instrumentation.websocket.jetty12.Jetty12EE9JakartaPojoWebsocketModule +datadog.trace.instrumentation.jaxws1.WebServiceInstrumentation +datadog.trace.instrumentation.jaxws2.WebServiceProviderInstrumentation +datadog.trace.instrumentation.jaxrs1.JaxRsAnnotationsInstrumentation +datadog.trace.instrumentation.jaxrs2.ContainerRequestFilterInstrumentation +datadog.trace.instrumentation.jaxrs2.DefaultRequestContextInstrumentation +datadog.trace.instrumentation.jaxrs2.JaxRsAnnotationsInstrumentation +datadog.trace.instrumentation.jaxrs2.JaxRsAsyncResponseInstrumentation +datadog.trace.instrumentation.jaxrs2.MessageBodyWriterInstrumentation +datadog.trace.instrumentation.jaxrs.v1.JaxRsClientV1Instrumentation +datadog.trace.instrumentation.jaxrs.JaxRsClientInstrumentation +datadog.trace.instrumentation.servlet3.Servlet31RequestBodyInstrumentation +datadog.trace.instrumentation.servlet5.Servlet5RequestBodyInstrumentation +datadog.trace.instrumentation.servlet2.ServletRequestBodyInstrumentation +datadog.trace.agent.tooling.Instrumenter$TypeTransformer +datadog.trace.agent.tooling.Instrumenter$MethodTransformer +datadog.trace.agent.tooling.CombiningTransformerBuilder +datadog.trace.agent.tooling.Instrumenter$TransformingAdvice +datadog.trace.agent.tooling.AdviceStack +datadog.trace.agent.tooling.AdviceShader +net.bytebuddy.jar.asm.commons.Remapper +datadog.trace.agent.tooling.AdviceShader$AdviceMapper +net.bytebuddy.jar.asm.commons.ClassRemapper +datadog.trace.agent.tooling.HelperInjector +datadog.trace.agent.tooling.CombiningTransformerBuilder$HelperTransformer +net.bytebuddy.dynamic.ClassFileLocator$ForClassLoader +net.bytebuddy.dynamic.ClassFileLocator$ForClassLoader$BootLoaderProxyCreationAction +datadog.trace.agent.tooling.muzzle.MuzzleCheck +datadog.trace.instrumentation.aerospike4.AerospikeClientInstrumentation +datadog.trace.instrumentation.aerospike4.CommandInstrumentation +datadog.trace.instrumentation.aerospike4.NioEventLoopInstrumentation +datadog.trace.instrumentation.aerospike4.PartitionInstrumentation +datadog.trace.agent.tooling.MatchRecorder +datadog.trace.agent.tooling.MatchRecorder$NarrowLocation +net.bytebuddy.matcher.MethodSortMatcher$Sort +net.bytebuddy.matcher.MethodSortMatcher$Sort$1 +net.bytebuddy.matcher.MethodSortMatcher$Sort$2 +net.bytebuddy.matcher.MethodSortMatcher$Sort$3 +net.bytebuddy.matcher.MethodSortMatcher$Sort$4 +net.bytebuddy.matcher.MethodSortMatcher$Sort$5 +net.bytebuddy.matcher.MethodSortMatcher +net.bytebuddy.matcher.CollectionElementMatcher +net.bytebuddy.matcher.MethodParameterTypesMatcher +net.bytebuddy.asm.AsmVisitorWrapper$ForDeclaredMethods$MethodVisitorWrapper +net.bytebuddy.asm.Advice +net.bytebuddy.utility.visitor.ExceptionTableSensitiveMethodVisitor +net.bytebuddy.utility.visitor.LineNumberPrependingMethodVisitor +net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler$Relocation +net.bytebuddy.asm.Advice$AdviceVisitor +net.bytebuddy.asm.Advice$AdviceVisitor$WithoutExitAdvice +net.bytebuddy.asm.Advice$AdviceVisitor$WithExitAdvice +net.bytebuddy.asm.Advice$AdviceVisitor$WithExitAdvice$WithoutExceptionHandling +net.bytebuddy.asm.Advice$AdviceVisitor$WithExitAdvice$WithExceptionHandling +net.bytebuddy.asm.Advice$ExceptionHandler +net.bytebuddy.asm.Advice$Dispatcher +net.bytebuddy.asm.Advice$Dispatcher$Unresolved +net.bytebuddy.asm.Advice$Delegator$Factory +net.bytebuddy.asm.Advice$PostProcessor$Factory +net.bytebuddy.asm.Advice$OnMethodEnter +net.bytebuddy.description.method.MethodList$AbstractBase +net.bytebuddy.description.method.MethodList$ForLoadedMethods +net.bytebuddy.description.method.MethodDescription$InDefinedShape$AbstractBase$ForLoadedExecutable +net.bytebuddy.description.method.ParameterDescription$ForLoadedParameter$ParameterAnnotationSource +net.bytebuddy.description.method.MethodDescription$ForLoadedConstructor +net.bytebuddy.description.method.MethodDescription$ForLoadedMethod +net.bytebuddy.utility.ConstructorComparator +net.bytebuddy.description.method.MethodDescription$InDefinedShape$AbstractBase$Executable +net.bytebuddy.description.method.MethodList$Explicit +net.bytebuddy.asm.Advice$OnMethodExit +net.bytebuddy.asm.Advice$WithCustomMapping +net.bytebuddy.asm.Advice$OffsetMapping$Factory +net.bytebuddy.asm.Advice$BootstrapArgumentResolver$Factory +net.bytebuddy.description.enumeration.EnumerationDescription +net.bytebuddy.utility.ConstantValue +net.bytebuddy.asm.Advice$PostProcessor +net.bytebuddy.asm.Advice$PostProcessor$NoOp +net.bytebuddy.implementation.bytecode.StackManipulation +net.bytebuddy.asm.Advice$Delegator$ForRegularInvocation$Factory +net.bytebuddy.asm.Advice$Delegator +net.bytebuddy.agent.builder.AgentBuilder$Transformer$ForAdvice +net.bytebuddy.asm.Advice$ExceptionHandler$Default +net.bytebuddy.asm.Advice$ExceptionHandler$Default$1 +net.bytebuddy.asm.Advice$ExceptionHandler$Default$2 +net.bytebuddy.asm.Advice$ExceptionHandler$Default$3 +net.bytebuddy.implementation.bytecode.assign.Assigner +net.bytebuddy.implementation.bytecode.assign.primitive.VoidAwareAssigner +net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveTypeAwareAssigner +net.bytebuddy.implementation.bytecode.assign.reference.ReferenceTypeAwareAssigner +net.bytebuddy.implementation.bytecode.StackManipulation$Trivial +net.bytebuddy.implementation.bytecode.StackManipulation$Illegal +net.bytebuddy.implementation.bytecode.assign.reference.GenericTypeAwareAssigner +datadog.trace.agent.tooling.bytebuddy.ExceptionHandlers +datadog.trace.agent.tooling.bytebuddy.ExceptionHandlers$1 +net.bytebuddy.implementation.bytecode.StackManipulation$Size +net.bytebuddy.asm.Advice$ExceptionHandler$Simple +net.bytebuddy.implementation.bytecode.StackManipulation$Compound +net.bytebuddy.implementation.bytecode.StackManipulation$AbstractBase +net.bytebuddy.implementation.bytecode.constant.TextConstant +net.bytebuddy.dynamic.ClassFileLocator$Compound +net.bytebuddy.utility.CompoundList +net.bytebuddy.agent.builder.AgentBuilder$Transformer$ForAdvice$Entry +net.bytebuddy.agent.builder.AgentBuilder$Transformer$ForAdvice$Entry$ForUnifiedAdvice +datadog.trace.instrumentation.axis2.AxisEngineInstrumentation +datadog.trace.instrumentation.axis2.AxisTransportInstrumentation +datadog.trace.instrumentation.axis2.WebSphereAsyncInstrumentation +datadog.trace.agent.tooling.CombiningTransformerBuilder$VisitingTransformer +datadog.trace.agent.tooling.context.FieldBackedContextRequestRewriter +datadog.trace.agent.tooling.context.FieldBackedContextRequestRewriter$1 +datadog.trace.agent.tooling.MatchRecorder$ForHierarchy +net.bytebuddy.matcher.AnnotationTypeMatcher +net.bytebuddy.matcher.DeclaringAnnotationMatcher +net.bytebuddy.matcher.CollectionItemMatcher +datadog.trace.instrumentation.cics.ECIInteractionInstrumentation +datadog.trace.instrumentation.cics.JavaGatewayInterfaceInstrumentation +datadog.trace.instrumentation.datanucleus.ExecutionContextInstrumentation +datadog.trace.instrumentation.datanucleus.JDOQueryInstrumentation +datadog.trace.instrumentation.datanucleus.JDOTransactionInstrumentation +datadog.trace.instrumentation.googlepubsub.PublisherInstrumentation +datadog.trace.instrumentation.googlepubsub.ReceiverInstrumentation +datadog.trace.instrumentation.googlepubsub.ReceiverWithAckInstrumentation +datadog.trace.instrumentation.grpc.client.ClientCallImplInstrumentation +datadog.trace.instrumentation.grpc.client.AbstractClientStreamInstrumentation +datadog.trace.instrumentation.grpc.client.ClientStreamListenerImplInstrumentation +datadog.trace.instrumentation.grpc.client.MessagesAvailableInstrumentation +net.bytebuddy.matcher.CollectionOneToOneMatcher +net.bytebuddy.matcher.CollectionErasureMatcher +datadog.trace.instrumentation.grpc.server.GrpcServerBuilderInstrumentation +datadog.trace.instrumentation.grpc.server.MethodHandlersInstrumentation +datadog.trace.instrumentation.kotlin.coroutines.CoroutineContextInstrumentation +datadog.trace.instrumentation.kotlin.coroutines.CoroutineInstrumentation +datadog.trace.instrumentation.kotlin.coroutines.LazyCoroutineInstrumentation +datadog.trace.instrumentation.logback.LogsIntakeHelper +datadog.trace.agent.tooling.Instrumenter$ForCallSite +net.bytebuddy.description.type.TypeList$Generic$AbstractBase +net.bytebuddy.description.type.TypeList$Generic$ForLoadedTypes +net.bytebuddy.description.type.TypeDefinition$Sort +net.bytebuddy.description.type.TypeDefinition$Sort$AnnotatedType +net.bytebuddy.description.type.TypeDescription$Generic$LazyProxy +net.bytebuddy.implementation.bytecode.StackSize +net.bytebuddy.description.modifier.ModifierContributor +net.bytebuddy.description.modifier.ModifierContributor$ForType +net.bytebuddy.description.modifier.TypeManifestation +net.bytebuddy.description.modifier.ModifierContributor$ForField +net.bytebuddy.description.modifier.ModifierContributor$ForMethod +net.bytebuddy.description.modifier.Ownership +net.bytebuddy.description.modifier.Visibility +net.bytebuddy.description.modifier.ModifierContributor$ForModule +net.bytebuddy.description.modifier.ModifierContributor$ForModule$OfRequire +net.bytebuddy.description.modifier.ModifierContributor$ForModule$OfExport +net.bytebuddy.description.modifier.ModifierContributor$ForModule$OfOpen +net.bytebuddy.description.modifier.ModifierContributor$ForParameter +net.bytebuddy.description.modifier.SyntheticState +net.bytebuddy.description.modifier.EnumerationState +net.bytebuddy.matcher.SuperTypeMatcher +net.bytebuddy.matcher.MethodExceptionTypeMatcher +datadog.trace.instrumentation.reactivestreams.PublisherInstrumentation +datadog.trace.instrumentation.reactivestreams.SubscriberInstrumentation +datadog.trace.instrumentation.reactor.core.BlockingPublisherInstrumentation +datadog.trace.instrumentation.reactor.core.CorePublisherInstrumentation +datadog.trace.instrumentation.reactor.core.ContextWritingSubscriberInstrumentation +datadog.trace.instrumentation.reactor.core.OptimizableOperatorInstrumentation +datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$NotExcluded +datadog.trace.instrumentation.apachehttpasyncclient.ApacheHttpAsyncClientInstrumentation +datadog.trace.instrumentation.apachehttpasyncclient.ApacheHttpClientRedirectInstrumentation +datadog.trace.instrumentation.apachehttpasyncclient.BasicFutureInstrumentation +datadog.trace.agent.tooling.MatchRecorder$NarrowType +datadog.trace.instrumentation.armeria.grpc.client.ArmeriaMessageDeframerInstrumentation +datadog.trace.instrumentation.armeria.grpc.client.ClientCallImplInstrumentation +datadog.trace.instrumentation.aws.v0.AWSHttpClientInstrumentation +datadog.trace.instrumentation.aws.v0.RequestExecutorInstrumentation +datadog.trace.instrumentation.aws.v0.HandlerChainFactoryInstrumentation +datadog.trace.agent.tooling.ShadedAdviceLocator +datadog.trace.instrumentation.aws.v2.AwsClientInstrumentation +datadog.trace.instrumentation.aws.v2.AwsHttpClientInstrumentation +datadog.trace.instrumentation.aws.v2.sqs.SqsClientInstrumentation +datadog.trace.instrumentation.aws.v2.sqs.SqsReceiveRequestInstrumentation +datadog.trace.instrumentation.aws.v2.sqs.SqsMd5ChecksumInterceptorInstrumentation +datadog.trace.instrumentation.aws.v2.sqs.SqsReceiveResponseBuilderInstrumentation +datadog.trace.instrumentation.aws.v2.sqs.SqsReceiveResponseBuilderImplInstrumentation +datadog.trace.instrumentation.aws.v2.sqs.SqsReceiveResultInstrumentation +datadog.trace.instrumentation.confluentschemaregistry.KafkaDeserializerInstrumentation +datadog.trace.instrumentation.confluentschemaregistry.KafkaSerializerInstrumentation +datadog.trace.instrumentation.grizzlyhttp232.GrizzlyByteBodyInstrumentation +datadog.trace.instrumentation.grizzlyhttp232.GrizzlyCharBodyInstrumentation +datadog.trace.instrumentation.hibernate.core.v3_3.AbstractHibernateInstrumentation +datadog.trace.instrumentation.hibernate.core.v3_3.SessionInstrumentation +datadog.trace.instrumentation.hibernate.core.v3_3.SessionFactoryInstrumentation +datadog.trace.instrumentation.hibernate.core.v3_3.QueryInstrumentation +datadog.trace.instrumentation.hibernate.core.v3_3.CriteriaInstrumentation +datadog.trace.instrumentation.hibernate.core.v3_3.TransactionInstrumentation +datadog.trace.instrumentation.hibernate.core.v4_0.AbstractHibernateInstrumentation +datadog.trace.instrumentation.hibernate.core.v4_0.SessionInstrumentation +datadog.trace.instrumentation.hibernate.core.v4_0.SessionFactoryInstrumentation +datadog.trace.instrumentation.hibernate.core.v4_0.QueryInstrumentation +datadog.trace.instrumentation.hibernate.core.v4_0.CriteriaInstrumentation +datadog.trace.instrumentation.hibernate.core.v4_0.TransactionInstrumentation +datadog.trace.instrumentation.hibernate.core.v4_3.SessionInstrumentation +datadog.trace.instrumentation.hibernate.core.v4_3.ProcedureCallInstrumentation +datadog.trace.instrumentation.jetty11.JettyServerInstrumentation$HttpChannelHandleVisitorWrapper +datadog.trace.instrumentation.jetty9.HttpChannelHandleVisitor +datadog.trace.agent.tooling.VisitingAdvice +datadog.trace.instrumentation.jetty70.JettyServerInstrumentation$ConnectionHandleRequestVisitorWrapper +datadog.trace.instrumentation.jetty.ConnectionHandleRequestVisitor +datadog.trace.instrumentation.jetty76.JettyServerInstrumentation$ConnectionHandleRequestVisitorWrapper +datadog.trace.instrumentation.jetty9.JettyServerInstrumentation$HttpChannelHandleVisitorWrapper +datadog.trace.instrumentation.jms.JMSMessageConsumerInstrumentation +datadog.trace.instrumentation.jms.JMSMessageProducerInstrumentation +datadog.trace.instrumentation.jms.MDBMessageConsumerInstrumentation +datadog.trace.instrumentation.jms.MessageInstrumentation +datadog.trace.instrumentation.jms.SessionInstrumentation +datadog.trace.instrumentation.kafka_clients.KafkaConsumerInfo +datadog.trace.instrumentation.kafka_clients38.KafkaConsumerInfo +datadog.trace.instrumentation.codeorigin.EntrySpanOriginAdvice +datadog.trace.instrumentation.liberty20.ArrayOfTypeMatcher +datadog.trace.instrumentation.liberty20.ParseParametersInstrumentation$ParseParametersVisitorWrapper +datadog.trace.instrumentation.liberty20.ParseParametersInstrumentation$RequestClassVisitor +datadog.trace.instrumentation.liberty23.ArrayOfTypeMatcher +datadog.trace.instrumentation.liberty23.ParseParametersInstrumentation$ParseParametersVisitorWrapper +datadog.trace.instrumentation.liberty23.ParseParametersInstrumentation$RequestClassVisitor +datadog.trace.instrumentation.openai_java.ChatCompletionServiceAsyncInstrumentation +datadog.trace.instrumentation.openai_java.ChatCompletionServiceInstrumentation +datadog.trace.instrumentation.openai_java.CompletionServiceAsyncInstrumentation +datadog.trace.instrumentation.openai_java.CompletionServiceInstrumentation +datadog.trace.instrumentation.openai_java.EmbeddingServiceInstrumentation +datadog.trace.instrumentation.openai_java.ResponseServiceAsyncInstrumentation +datadog.trace.instrumentation.openai_java.ResponseServiceInstrumentation +datadog.trace.agent.tooling.bytebuddy.matcher.ScalaTraitMatchers +datadog.trace.instrumentation.play26.appsec.NoDeclaredMethodMatcher +datadog.trace.instrumentation.resilience4j.CircuitBreakerOperatorInstrumentation +datadog.trace.instrumentation.resilience4j.FallbackOperatorInstrumentation +datadog.trace.instrumentation.resilience4j.RetryOperatorInstrumentation +datadog.trace.instrumentation.resilience4j.CircuitBreakerInstrumentation +datadog.trace.instrumentation.resilience4j.FallbackCallableInstrumentation +datadog.trace.instrumentation.resilience4j.FallbackCheckedSupplierInstrumentation +datadog.trace.instrumentation.resilience4j.FallbackCompletionStageInstrumentation +datadog.trace.instrumentation.resilience4j.FallbackSupplierInstrumentation +datadog.trace.instrumentation.resilience4j.RetryInstrumentation +datadog.trace.instrumentation.resteasy.DecodedFormParametersInstrumentation$CustomReferenceProvider +datadog.trace.agent.tooling.bytebuddy.memoize.HasSuperMethod +datadog.trace.instrumentation.rxjava2.CompletableInstrumentation +datadog.trace.instrumentation.rxjava2.FlowableInstrumentation +datadog.trace.instrumentation.rxjava2.MaybeInstrumentation +datadog.trace.instrumentation.rxjava2.ObservableInstrumentation +datadog.trace.instrumentation.rxjava2.SingleInstrumentation +datadog.trace.instrumentation.rxjava3.CompletableInstrumentation +datadog.trace.instrumentation.rxjava3.FlowableInstrumentation +datadog.trace.instrumentation.rxjava3.MaybeInstrumentation +datadog.trace.instrumentation.rxjava3.ObservableInstrumentation +datadog.trace.instrumentation.rxjava3.SingleInstrumentation +datadog.trace.instrumentation.scala.concurrent.ScalaForkJoinTaskInstrumentation +datadog.trace.instrumentation.scala.concurrent.ScalaForkJoinPoolInstrumentation +datadog.trace.instrumentation.sofarpc.AbstractClusterInstrumentation +datadog.trace.instrumentation.sofarpc.BoltServerProcessorInstrumentation +datadog.trace.instrumentation.sofarpc.H2cServerTaskInstrumentation +datadog.trace.instrumentation.sofarpc.RestServerHandlerInstrumentation +datadog.trace.instrumentation.sofarpc.TripleServerInstrumentation +datadog.trace.instrumentation.sofarpc.ProviderProxyInvokerInstrumentation +datadog.trace.instrumentation.tomcat.RequestInstrumentation$ThrowableCaughtVisitorWrapper +datadog.trace.instrumentation.tomcat.RequestInstrumentation$ThrowableCaughtVisitor +datadog.trace.instrumentation.tomcat7.ParsePartsInstrumentation$ParsePartsVisitorWrapper +datadog.trace.instrumentation.tomcat7.ParsePartsInstrumentation$RequestClassVisitor +datadog.trace.instrumentation.websocket.jsr256.EndpointInstrumentation +datadog.trace.instrumentation.websocket.jsr256.SessionInstrumentation +datadog.trace.instrumentation.websocket.jsr256.MessageHandlerInstrumentation +datadog.trace.instrumentation.websocket.jsr256.BasicRemoteEndpointInstrumentation +datadog.trace.instrumentation.websocket.jsr256.AsyncRemoteEndpointInstrumentation +datadog.trace.instrumentation.akkahttp.appsec.Bug4304Instrumentation$MatchesOneHundredContinueStageAnonClass +datadog.trace.instrumentation.java.completablefuture.CompletableFutureUniCompletionInstrumentation +datadog.trace.instrumentation.java.completablefuture.CompletableFutureUniCompletionSubclassInstrumentation +datadog.trace.instrumentation.java.concurrent.executor.AbstractExecutorInstrumentation +datadog.trace.instrumentation.java.concurrent.executor.JavaExecutorInstrumentation +datadog.trace.instrumentation.java.concurrent.executor.NonStandardExecutorInstrumentation +datadog.trace.instrumentation.java.concurrent.executor.RejectedExecutionHandlerInstrumentation +datadog.trace.instrumentation.java.concurrent.executor.ThreadPoolExecutorInstrumentation +datadog.trace.instrumentation.java.concurrent.forkjoin.JavaForkJoinPoolInstrumentation +datadog.trace.instrumentation.java.concurrent.forkjoin.JavaForkJoinTaskInstrumentation +datadog.trace.instrumentation.java.concurrent.timer.JavaTimerInstrumentation +datadog.trace.instrumentation.java.concurrent.timer.TimerTaskInstrumentation +datadog.trace.agent.core.scopemanager.ScopeContext +datadog.trace.agent.core.scopemanager.ScopeStack +datadog.trace.agent.tooling.MatchRecorder$ForType +datadog.trace.agent.tooling.bytebuddy.matcher.NameMatchers$NoneOf +net.bytebuddy.matcher.FieldTypeMatcher +datadog.trace.instrumentation.jetty8.RequestGetPartsInstrumentation$RequestImplementationClassLoaderMatcher +datadog.trace.instrumentation.jetty8.RequestGetPartsInstrumentation$ClassLoaderMatcherClassVisitor +datadog.trace.instrumentation.jetty10.JettyServerInstrumentation$HttpChannelHandleVisitorWrapper +datadog.trace.instrumentation.scala210.concurrent.CallbackRunnableInstrumentation +datadog.trace.instrumentation.scala210.concurrent.FutureObjectInstrumentation +datadog.trace.instrumentation.scala213.concurrent.FutureObjectInstrumentation +datadog.trace.instrumentation.scala213.concurrent.PromiseTransformationInstrumentation +datadog.trace.instrumentation.vertx_redis_client.RequestImplInstrumentation$RequestImplVisitorWrapper +datadog.trace.instrumentation.vertx_redis_client.RequestImplInstrumentation$RequestImplVisitorWrapper$1 +datadog.trace.instrumentation.websocket.jetty10.JavaxWebSocketFrameHandlerFactoryInstrumentation +datadog.trace.instrumentation.websocket.jetty10.JavaxWebSocketFrameHandlerInstrumentation +datadog.trace.agent.tooling.InstrumenterFlare +datadog.trace.agent.tooling.AgentInstaller$1 +datadog.trace.agent.tooling.context.FieldBackedContextMatcher +datadog.trace.agent.tooling.bytebuddy.memoize.HasContextField +datadog.trace.agent.tooling.context.FieldBackedContextInjector +datadog.trace.agent.tooling.context.FieldBackedContextInjector$1 +datadog.trace.agent.tooling.MatchRecorder$ForContextStore +datadog.trace.agent.tooling.bytebuddy.memoize.HasContextField$Skip +datadog.trace.agent.tooling.CombiningMatcher +datadog.trace.agent.tooling.KnownTypesIndex +net.bytebuddy.agent.builder.AgentBuilder$Identified$Extendable +net.bytebuddy.agent.builder.AgentBuilder$Default$Transforming +net.bytebuddy.agent.builder.AgentBuilder$RawMatcher$Conjunction +datadog.trace.agent.tooling.bytebuddy.DDTransformers +datadog.trace.agent.tooling.bytebuddy.DDTransformers$1 +datadog.trace.agent.tooling.SplittingTransformer +net.bytebuddy.agent.builder.AgentBuilder$Default$Transformation +net.bytebuddy.agent.builder.AgentBuilder$Default$Transformation$SimpleMatcher +net.bytebuddy.agent.builder.AgentBuilder$PatchMode$Handler$NoOp +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionStrategy$Installation +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionEnforcer$Disabled +net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer +net.bytebuddy.dynamic.TypeResolutionStrategy +net.bytebuddy.dynamic.DynamicType +net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Factory$CreationAction +net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Factory +net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Factory$ForJava9CapableVm +net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default +net.bytebuddy.implementation.attribute.MethodAttributeAppender$Factory +net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default$1 +net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default$2 +net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default$3 +net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default$4 +net.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy$Default$5 +net.bytebuddy.dynamic.scaffold.MethodRegistry$Handler +net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase +net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$UsingTypeWriter +net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Adapter +net.bytebuddy.dynamic.scaffold.subclass.SubclassDynamicTypeBuilder +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$TypeVariableDefinition +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ExceptionDefinition +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition +net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition +net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional +net.bytebuddy.dynamic.DynamicType$Builder$TypeVariableDefinition +net.bytebuddy.dynamic.DynamicType$Builder$RecordComponentDefinition +net.bytebuddy.dynamic.DynamicType$Builder$RecordComponentDefinition$Optional +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Simple +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial +net.bytebuddy.dynamic.DynamicType$Builder$ModuleDefinition +net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Delegator +net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition +net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition$ForType +net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Adapter$InnerTypeDefinitionForTypeAdapter +net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Adapter$InnerTypeDefinitionForMethodAdapter +net.bytebuddy.description.module.ModuleDescription +net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Valuable +net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable +net.bytebuddy.implementation.attribute.TypeAttributeAppender +net.bytebuddy.implementation.Implementation$Target$Factory +net.bytebuddy.dynamic.scaffold.TypeWriter$RecordComponentPool +net.bytebuddy.dynamic.scaffold.TypeWriter$FieldPool +net.bytebuddy.dynamic.scaffold.RecordComponentRegistry +net.bytebuddy.dynamic.scaffold.MethodRegistry +net.bytebuddy.dynamic.scaffold.FieldRegistry +net.bytebuddy.description.modifier.ModifierContributor$Resolver +net.bytebuddy.dynamic.scaffold.InstrumentedType$Default +net.bytebuddy.description.type.TypeList$Explicit +net.bytebuddy.dynamic.scaffold.TypeInitializer$None +net.bytebuddy.implementation.LoadedTypeInitializer$NoOp +net.bytebuddy.description.type.TypeDescription$LazyProxy +net.bytebuddy.description.TypeVariableSource$Visitor +net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Substitutor +net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Substitutor$ForDetachment +net.bytebuddy.dynamic.scaffold.FieldRegistry$Default +net.bytebuddy.dynamic.scaffold.FieldRegistry$Compiled +net.bytebuddy.dynamic.scaffold.MethodRegistry$Default +net.bytebuddy.dynamic.scaffold.MethodRegistry$Prepared +net.bytebuddy.dynamic.scaffold.RecordComponentRegistry$Default +net.bytebuddy.dynamic.scaffold.RecordComponentRegistry$Compiled +net.bytebuddy.implementation.attribute.TypeAttributeAppender$ForInstrumentedType +net.bytebuddy.implementation.attribute.AnnotationAppender$Target +net.bytebuddy.implementation.attribute.AnnotationAppender +net.bytebuddy.asm.AsmVisitorWrapper$NoOp +net.bytebuddy.utility.JavaType +net.bytebuddy.description.type.TypeList$Generic$Explicit +net.bytebuddy.description.type.TypeDescription$Latent +net.bytebuddy.utility.JavaType$LatentTypeWithSimpleName +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition$AbstractBase +net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Adapter$MethodMatchAdapter +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ReceiverTypeDefinition +net.bytebuddy.implementation.Implementation$Composable +net.bytebuddy.implementation.MethodCall +net.bytebuddy.implementation.MethodCall$MethodLocator$Factory +net.bytebuddy.implementation.MethodCall$TerminationHandler$Factory +net.bytebuddy.implementation.MethodCall$MethodInvoker$Factory +net.bytebuddy.implementation.MethodCall$TargetHandler$Factory +net.bytebuddy.implementation.MethodCall$ArgumentLoader$Factory +net.bytebuddy.dynamic.scaffold.FieldLocator$Factory +net.bytebuddy.implementation.MethodCall$MethodLocator +net.bytebuddy.implementation.MethodCall$MethodLocator$ForExplicitMethod +net.bytebuddy.implementation.MethodCall$WithoutSpecifiedTarget +net.bytebuddy.implementation.MethodCall$TargetHandler$ForField$Location +net.bytebuddy.implementation.MethodCall$TargetHandler$ForSelfOrStaticInvocation$Factory +net.bytebuddy.implementation.MethodCall$TargetHandler +net.bytebuddy.implementation.MethodCall$MethodInvoker$ForContextualInvocation$Factory +net.bytebuddy.implementation.MethodCall$MethodInvoker +net.bytebuddy.implementation.MethodCall$TerminationHandler +net.bytebuddy.implementation.MethodCall$TerminationHandler$Simple +net.bytebuddy.implementation.MethodCall$TerminationHandler$Simple$1 +net.bytebuddy.implementation.MethodCall$TerminationHandler$Simple$2 +net.bytebuddy.implementation.MethodCall$TerminationHandler$Simple$3 +net.bytebuddy.implementation.bytecode.assign.Assigner$Typing +net.bytebuddy.implementation.MethodCall$MethodInvoker$ForSuperMethodInvocation$Factory +net.bytebuddy.implementation.MethodCall$ArgumentLoader$ArgumentProvider +net.bytebuddy.implementation.MethodCall$ArgumentLoader$ForMethodParameter$OfInstrumentedMethod +net.bytebuddy.dynamic.scaffold.MethodRegistry$Handler$ForImplementation +net.bytebuddy.dynamic.scaffold.MethodRegistry$Handler$Compiled +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$AbstractBase +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ReceiverTypeDefinition$AbstractBase +net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$AbstractBase$Adapter +net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Adapter$MethodMatchAdapter$AnnotationAdapter +net.bytebuddy.dynamic.Transformer +net.bytebuddy.implementation.attribute.MethodAttributeAppender +net.bytebuddy.implementation.attribute.MethodAttributeAppender$NoOp +net.bytebuddy.dynamic.Transformer$NoOp +net.bytebuddy.dynamic.scaffold.MethodRegistry$Default$Entry +net.bytebuddy.dynamic.TypeResolutionStrategy$Resolved +net.bytebuddy.dynamic.TypeResolutionStrategy$Passive +net.bytebuddy.pool.TypePool$ClassLoading +net.bytebuddy.pool.TypePool$CacheProvider$Simple +net.bytebuddy.implementation.SuperMethodCall +net.bytebuddy.description.type.TypeDescription$Generic$LazyProjection +net.bytebuddy.description.type.TypeDescription$Generic$LazyProjection$WithEagerNavigation +net.bytebuddy.description.type.TypeDescription$Generic$LazyProjection$WithResolvedErasure +net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Substitutor$ForAttachment +net.bytebuddy.description.method.MethodList$TypeSubstituting +net.bytebuddy.description.method.MethodDescription$InGenericShape +net.bytebuddy.description.type.TypeDescription$Generic$Visitor$NoOp +net.bytebuddy.matcher.VisibilityMatcher +net.bytebuddy.description.method.MethodDescription$TypeSubstituting +net.bytebuddy.description.method.MethodDescription$Token +net.bytebuddy.description.type.TypeList$Generic$ForLoadedTypes$OfTypeVariables +net.bytebuddy.matcher.TypeSortMatcher +net.bytebuddy.description.ByteCodeElement$Token$TokenList +net.bytebuddy.description.method.ParameterList$AbstractBase +net.bytebuddy.description.method.ParameterList$TypeSubstituting +net.bytebuddy.description.method.ParameterDescription +net.bytebuddy.description.method.ParameterDescription$InGenericShape +net.bytebuddy.description.method.ParameterList$ForLoadedExecutable +net.bytebuddy.description.method.ParameterList$ForLoadedExecutable$OfMethod +net.bytebuddy.description.method.ParameterList$ForLoadedExecutable$OfLegacyVmMethod +net.bytebuddy.description.method.ParameterList$ForLoadedExecutable$OfConstructor +net.bytebuddy.description.method.ParameterList$ForLoadedExecutable$OfLegacyVmConstructor +net.bytebuddy.description.method.ParameterList$ForLoadedExecutable$Executable +net.bytebuddy.description.method.ParameterDescription$InDefinedShape +net.bytebuddy.description.method.ParameterDescription$AbstractBase +net.bytebuddy.description.method.ParameterDescription$TypeSubstituting +net.bytebuddy.description.method.ParameterDescription$InDefinedShape$AbstractBase +net.bytebuddy.description.method.ParameterDescription$ForLoadedParameter +net.bytebuddy.description.method.ParameterDescription$ForLoadedParameter$OfConstructor +net.bytebuddy.description.annotation.AnnotationList$AbstractBase +net.bytebuddy.description.annotation.AnnotationList$ForLoadedAnnotations +net.bytebuddy.description.method.ParameterDescription$ForLoadedParameter$Parameter +net.bytebuddy.description.method.ParameterDescription$Token +net.bytebuddy.utility.AnnotationComparator +net.bytebuddy.description.type.TypeList$Generic$ForDetachedTypes +net.bytebuddy.description.type.TypeList$Generic$OfConstructorExceptionTypes +net.bytebuddy.description.annotation.AnnotationValue +net.bytebuddy.description.annotation.AnnotationList$Explicit +net.bytebuddy.dynamic.scaffold.subclass.SubclassDynamicTypeBuilder$InstrumentableMatcher +net.bytebuddy.description.method.MethodList$ForTokens +net.bytebuddy.description.method.MethodDescription$Latent +net.bytebuddy.description.method.ParameterList$ForTokens +net.bytebuddy.description.method.ParameterDescription$Latent +net.bytebuddy.description.method.ParameterDescription$ForLoadedParameter$OfMethod +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store$Entry +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Harmonized +net.bytebuddy.description.method.MethodDescription$TypeToken +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Harmonizer$ForJavaMethod$Token +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store$Entry$Initial +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store$Entry$Resolved +net.bytebuddy.dynamic.scaffold.MethodGraph$Node +net.bytebuddy.description.modifier.Visibility$1 +net.bytebuddy.description.type.TypeList$Generic$ForDetachedTypes$WithResolvedErasure +net.bytebuddy.dynamic.scaffold.MethodGraph$Linked$Delegation +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store$Entry$Resolved$Node +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Detached +net.bytebuddy.dynamic.scaffold.MethodGraph$Compiler$Default$Key$Store$Graph +net.bytebuddy.matcher.MethodParameterTypeMatcher +net.bytebuddy.matcher.FailSafeMatcher +net.bytebuddy.dynamic.scaffold.MethodGraph$NodeList +net.bytebuddy.dynamic.scaffold.MethodGraph$Node$Sort +net.bytebuddy.dynamic.scaffold.MethodRegistry$Default$Prepared$Entry +net.bytebuddy.description.type.TypeDescription$Generic$OfNonGenericType$ForErasure +net.bytebuddy.description.method.MethodDescription$Latent$TypeInitializer +net.bytebuddy.dynamic.scaffold.MethodRegistry$Default$Prepared +net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool +net.bytebuddy.dynamic.scaffold.MethodRegistry$Compiled +net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget$Factory +net.bytebuddy.implementation.Implementation$Target +net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget$OriginTypeResolver +net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget$OriginTypeResolver$1 +net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget$OriginTypeResolver$2 +net.bytebuddy.implementation.Implementation$Target$AbstractBase +net.bytebuddy.dynamic.scaffold.subclass.SubclassImplementationTarget +net.bytebuddy.implementation.Implementation$SpecialMethodInvocation +net.bytebuddy.implementation.Implementation$Target$AbstractBase$DefaultMethodInvocation +net.bytebuddy.implementation.Implementation$Target$AbstractBase$DefaultMethodInvocation$1 +net.bytebuddy.implementation.Implementation$Target$AbstractBase$DefaultMethodInvocation$2 +net.bytebuddy.dynamic.scaffold.MethodRegistry$Handler$ForImplementation$Compiled +net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record +net.bytebuddy.implementation.MethodCall$Appender +net.bytebuddy.implementation.MethodCall$MethodInvoker$ForSuperMethodInvocation +net.bytebuddy.implementation.MethodCall$TargetHandler$ForSelfOrStaticInvocation +net.bytebuddy.implementation.MethodCall$TargetHandler$Resolved +net.bytebuddy.dynamic.scaffold.MethodRegistry$Default$Compiled$Entry +net.bytebuddy.implementation.SuperMethodCall$Appender +net.bytebuddy.implementation.SuperMethodCall$Appender$TerminationHandler +net.bytebuddy.implementation.SuperMethodCall$Appender$TerminationHandler$1 +net.bytebuddy.implementation.SuperMethodCall$Appender$TerminationHandler$2 +net.bytebuddy.dynamic.scaffold.MethodRegistry$Default$Compiled +net.bytebuddy.dynamic.scaffold.FieldRegistry$Default$Compiled +net.bytebuddy.dynamic.scaffold.TypeWriter$FieldPool$Record +net.bytebuddy.dynamic.scaffold.RecordComponentRegistry$Default$Compiled +net.bytebuddy.dynamic.scaffold.TypeWriter$RecordComponentPool$Record +net.bytebuddy.pool.TypePool$Explicit +net.bytebuddy.dynamic.scaffold.TypeWriter +net.bytebuddy.dynamic.scaffold.TypeWriter$Default +net.bytebuddy.dynamic.scaffold.inline.MethodRebaseResolver +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ClassDumpAction$Dispatcher +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForCreation +net.bytebuddy.utility.visitor.MetadataAwareClassVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForCreation$CreationClassVisitor +net.bytebuddy.utility.visitor.ContextClassVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForCreation$ImplementationContextClassVisitor +net.bytebuddy.dynamic.scaffold.TypeInitializer$Drain +net.bytebuddy.description.field.FieldList$AbstractBase +net.bytebuddy.description.field.FieldList$ForTokens +net.bytebuddy.description.type.RecordComponentList$ForTokens +net.bytebuddy.description.type.RecordComponentDescription +net.bytebuddy.description.type.RecordComponentDescription$InDefinedShape +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ClassDumpAction$Dispatcher$Disabled +net.bytebuddy.utility.AsmClassWriter$Factory$Default$EmptyAsmClassReader +net.bytebuddy.jar.asm.ClassReader +net.bytebuddy.utility.AsmClassWriter$ForAsm +net.bytebuddy.implementation.Implementation$Context$FrameGeneration +net.bytebuddy.implementation.Implementation$Context$FrameGeneration$1 +net.bytebuddy.implementation.Implementation$Context$FrameGeneration$2 +net.bytebuddy.implementation.Implementation$Context$FrameGeneration$3 +net.bytebuddy.implementation.Implementation$Context$ExtractableView$AbstractBase +net.bytebuddy.implementation.Implementation$Context$Default +net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$ForDefinedMethod +net.bytebuddy.implementation.Implementation$Context$Default$DelegationRecord +net.bytebuddy.implementation.Implementation$Context$Default$AccessorMethodDelegation +net.bytebuddy.implementation.Implementation$Context$Default$FieldGetterDelegation +net.bytebuddy.implementation.Implementation$Context$Default$FieldSetterDelegation +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$ValidatingFieldVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$ValidatingMethodVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$Constraint +net.bytebuddy.jar.asm.signature.SignatureVisitor +net.bytebuddy.jar.asm.signature.SignatureWriter +net.bytebuddy.description.type.TypeList$Generic$ForDetachedTypes$OfTypeVariables +net.bytebuddy.description.type.TypeDescription$Generic$Visitor$ForSignatureVisitor +net.bytebuddy.implementation.attribute.AnnotationAppender$Default +net.bytebuddy.implementation.attribute.AnnotationAppender$Target$OnType +net.bytebuddy.implementation.attribute.AnnotationAppender$ForTypeAnnotations +net.bytebuddy.jar.asm.TypeReference +net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$ForDefinedMethod$WithBody +net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$AccessBridgeWrapper +net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$Sort +net.bytebuddy.implementation.MethodCall$TargetHandler$ForSelfOrStaticInvocation$Resolved +net.bytebuddy.implementation.bytecode.Duplication +net.bytebuddy.implementation.bytecode.ByteCodeAppender$Size +net.bytebuddy.implementation.MethodCall$ArgumentLoader +net.bytebuddy.implementation.MethodCall$ArgumentLoader$ForMethodParameter +net.bytebuddy.implementation.bytecode.member.MethodVariableAccess +net.bytebuddy.implementation.bytecode.member.MethodVariableAccess$MethodLoading$TypeCastingHandler +net.bytebuddy.implementation.bytecode.member.MethodVariableAccess$OffsetLoading +net.bytebuddy.description.method.MethodDescription$SignatureToken +net.bytebuddy.implementation.Implementation$SpecialMethodInvocation$AbstractBase +net.bytebuddy.implementation.Implementation$SpecialMethodInvocation$Simple +net.bytebuddy.implementation.bytecode.member.MethodInvocation +net.bytebuddy.implementation.bytecode.member.MethodInvocation$WithImplicitInvocationTargetType +net.bytebuddy.implementation.bytecode.member.MethodInvocation$Invocation +net.bytebuddy.implementation.bytecode.member.MethodReturn +net.bytebuddy.matcher.SignatureTokenMatcher +net.bytebuddy.implementation.bytecode.member.MethodVariableAccess$MethodLoading +net.bytebuddy.implementation.bytecode.member.MethodVariableAccess$MethodLoading$TypeCastingHandler$NoOp +net.bytebuddy.dynamic.scaffold.TypeInitializer$Drain$Default +net.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$ForNonImplementedMethod +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$UnresolvedType +net.bytebuddy.dynamic.DynamicType$Unloaded +net.bytebuddy.dynamic.DynamicType$AbstractBase +net.bytebuddy.dynamic.DynamicType$Default +net.bytebuddy.dynamic.DynamicType$Default$Unloaded +net.bytebuddy.dynamic.loading.InjectionClassLoader +net.bytebuddy.dynamic.DynamicType$Loaded +net.bytebuddy.dynamic.loading.ClassLoadingStrategy$Configurable +net.bytebuddy.dynamic.loading.ClassLoadingStrategy$Default +net.bytebuddy.dynamic.loading.ClassLoadingStrategy$Default$WrappingDispatcher +net.bytebuddy.dynamic.loading.ClassLoaderDecorator$Factory +net.bytebuddy.dynamic.loading.PackageDefinitionStrategy +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PersistenceHandler +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PersistenceHandler$1 +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PersistenceHandler$2 +net.bytebuddy.dynamic.loading.PackageDefinitionStrategy$Trivial +net.bytebuddy.dynamic.loading.PackageDefinitionStrategy$Definition +net.bytebuddy.dynamic.loading.ClassLoaderDecorator$Factory$NoOp +net.bytebuddy.dynamic.loading.ClassLoaderDecorator +net.bytebuddy.dynamic.loading.ClassLoadingStrategy$Default$InjectionDispatcher +net.bytebuddy.dynamic.loading.PackageDefinitionStrategy$NoOp +net.bytebuddy.dynamic.DynamicType$Default$Loaded +net.bytebuddy.dynamic.loading.ByteArrayClassLoader +net.bytebuddy.dynamic.loading.ClassFilePostProcessor +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PackageLookupStrategy$CreationAction +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PackageLookupStrategy +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$PackageLookupStrategy$ForJava9CapableVm +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$CreationAction +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$Initializable +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$SynchronizationStrategy$ForJava8CapableVm +net.bytebuddy.dynamic.loading.ClassFilePostProcessor$NoOp +net.bytebuddy.dynamic.loading.ClassLoaderDecorator$NoOp +net.bytebuddy.dynamic.loading.ByteArrayClassLoader$ClassDefinitionAction +net.bytebuddy.dynamic.loading.PackageDefinitionStrategy$Definition$Trivial +datadog.trace.agent.tooling.bytebuddy.DDRediscoveryStrategy$1 +datadog.trace.agent.tooling.bytebuddy.DDRediscoveryStrategy$1$1 +datadog.trace.agent.tooling.bytebuddy.matcher.IgnoredClassNameTrie +datadog.trace.agent.tooling.bytebuddy.ClassFileLocators +datadog.trace.agent.tooling.bytebuddy.ClassFileLocators$1 +datadog.trace.agent.tooling.bytebuddy.ClassFileLocators$2 +net.bytebuddy.pool.TypePool$Resolution$NoSuchTypeException +datadog.trace.agent.tooling.bytebuddy.outline.TypeFactory$LazyResolution +datadog.trace.agent.tooling.bytebuddy.matcher.GlobalIgnores +datadog.trace.agent.tooling.bytebuddy.matcher.CustomExcludes +datadog.trace.agent.tooling.bytebuddy.matcher.CodeSourceExcludes +datadog.trace.agent.tooling.bytebuddy.matcher.ProxyClassIgnores +datadog.trace.agent.tooling.InstrumenterMetrics +datadog.trace.agent.tooling.bytebuddy.ClassFileLocators$LazyResolution +net.bytebuddy.utility.StreamDrainer +net.bytebuddy.description.field.FieldDescription$AbstractBase +net.bytebuddy.description.field.FieldDescription$InDefinedShape$AbstractBase +datadog.trace.agent.tooling.bytebuddy.outline.FieldOutline +net.bytebuddy.description.field.FieldList$Explicit +datadog.trace.instrumentation.java.lang.ShutdownInstrumentation$Muzzle +datadog.trace.agent.tooling.muzzle.ReferenceMatcher +datadog.trace.agent.tooling.bytebuddy.matcher.ProxyIgnoredClassNameTrie +datadog.trace.instrumentation.java.lang.ProcessImplInstrumentation$Muzzle +datadog.trace.instrumentation.java.lang.RuntimeInstrumentation$Muzzle +datadog.trace.instrumentation.java.lang.jdk21.VirtualThreadInstrumentation$Muzzle +datadog.trace.instrumentation.java.lang.classloading.DefineClassInstrumentation$Muzzle +net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector$PrependableIterator +net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Java9CapableVmDispatcher +net.bytebuddy.dynamic.ClassFileLocator$Simple +net.bytebuddy.dynamic.scaffold.inline.MethodNameTransformer +net.bytebuddy.dynamic.scaffold.inline.MethodNameTransformer$Suffixing +net.bytebuddy.dynamic.scaffold.inline.AbstractInliningDynamicTypeBuilder +net.bytebuddy.dynamic.scaffold.inline.RedefinitionDynamicTypeBuilder +net.bytebuddy.dynamic.scaffold.InstrumentedType$Frozen +net.bytebuddy.implementation.attribute.TypeAttributeAppender$ForInstrumentedType$Differentiating +net.bytebuddy.utility.OpenedClassReader +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$TypeContainment +net.bytebuddy.pool.TypePool$Default$ComponentTypeLocator +net.bytebuddy.pool.TypePool$Default$TypeExtractor$AnnotationExtractor +net.bytebuddy.pool.TypePool$Default$AnnotationRegistrant +net.bytebuddy.pool.TypePool$Default$TypeExtractor$ModuleExtractor +net.bytebuddy.pool.TypePool$Default$TypeExtractor$RecordComponentExtractor +net.bytebuddy.pool.TypePool$Default$TypeExtractor$FieldExtractor +net.bytebuddy.pool.TypePool$Default$TypeExtractor$MethodExtractor +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$TypeContainment$SelfContained +net.bytebuddy.jar.asm.Context +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$FieldToken +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$ForField +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$ForType +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$ForMethod +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$ForRecordComponent +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$Raw +net.bytebuddy.pool.TypePool$Default$ParameterBag +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$MethodToken +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$MethodToken$ParameterToken +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription +net.bytebuddy.description.annotation.AnnotationDescription$AbstractBase +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationDescription +net.bytebuddy.description.annotation.AnnotationDescription$Loadable +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationDescription$UnresolvedAnnotationList +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$Raw$RawAnnotatedType$LazyRawAnnotatedTypeList +net.bytebuddy.matcher.LatentMatcher$ForSelfDeclaredMethod +net.bytebuddy.matcher.LatentMatcher$Disjunction +net.bytebuddy.asm.TypeConstantAdjustment +net.bytebuddy.asm.TypeConstantAdjustment$TypeConstantDissolvingClassVisitor +net.bytebuddy.asm.AsmVisitorWrapper$Compound +net.bytebuddy.pool.TypePool$LazyFacade +net.bytebuddy.pool.TypePool$Default$WithLazyResolution +net.bytebuddy.pool.TypePool$Resolution$Simple +net.bytebuddy.pool.TypePool$Default$WithLazyResolution$LazinessMode +net.bytebuddy.asm.AsmVisitorWrapper$ForDeclaredMethods +net.bytebuddy.asm.AsmVisitorWrapper$ForDeclaredMethods$DispatchingVisitor +net.bytebuddy.pool.TypePool$LazyFacade$LazyResolution +net.bytebuddy.pool.TypePool$AbstractBase$ArrayTypeResolution +net.bytebuddy.pool.TypePool$LazyFacade$LazyTypeDescription +net.bytebuddy.asm.Advice$Dispatcher$Resolved +net.bytebuddy.asm.Advice$Dispatcher$Resolved$ForMethodEnter +net.bytebuddy.asm.Advice$Dispatcher$Resolved$ForMethodExit +net.bytebuddy.asm.Advice$Dispatcher$Bound +net.bytebuddy.asm.Advice$Dispatcher$Inactive +net.bytebuddy.pool.TypePool$Resolution$Illegal +net.bytebuddy.pool.TypePool$Default$WithLazyResolution$LazyResolution +net.bytebuddy.pool.TypePool$Default$WithLazyResolution$LazyTypeDescription +net.bytebuddy.dynamic.ClassFileLocator$Resolution$Illegal +net.bytebuddy.dynamic.ClassFileLocator$Resolution$Explicit +net.bytebuddy.utility.AsmClassReader$ForAsm +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$TypeContainment$WithinType +net.bytebuddy.pool.TypePool$Default$ComponentTypeLocator$ForAnnotationProperty +net.bytebuddy.pool.TypePool$AbstractBase$ComponentTypeReference +net.bytebuddy.pool.TypePool$Default$AnnotationRegistrant$AbstractBase +net.bytebuddy.pool.TypePool$Default$AnnotationRegistrant$ForByteCodeElement +net.bytebuddy.description.annotation.AnnotationValue$AbstractBase +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationValue +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationValue$ForTypeValue +net.bytebuddy.description.annotation.AnnotationValue$ForTypeDescription +net.bytebuddy.description.annotation.AnnotationValue$ForMissingType +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$AnnotationToken +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$AnnotationToken$Resolution +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$MethodTokenList +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyMethodDescription +net.bytebuddy.description.type.TypeDescription$Generic$OfParameterizedType +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyMethodDescription$LazyParameterizedReceiverType +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyMethodDescription$LazyNonGenericReceiverType +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationValue$ForEnumerationValue +net.bytebuddy.pool.TypePool$Default$TypeExtractor$AnnotationExtractor$ArrayLookup +net.bytebuddy.pool.TypePool$Default$ComponentTypeLocator$ForAnnotationProperty$Bound +net.bytebuddy.pool.TypePool$Default$ComponentTypeLocator$Illegal +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationValue$ForArray +net.bytebuddy.pool.TypePool$Default$ComponentTypeLocator$ForArrayType +net.bytebuddy.description.annotation.AnnotationValue$ForConstant +net.bytebuddy.description.annotation.AnnotationValue$Loaded +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$1 +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$2 +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$3 +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$4 +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$5 +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$6 +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$7 +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$8 +net.bytebuddy.description.annotation.AnnotationValue$ForConstant$PropertyDelegate$ForNonArrayType$9 +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$AnnotationToken$Resolution$Simple +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyAnnotationDescription$Loadable +net.bytebuddy.matcher.DefinedShapeMatcher +net.bytebuddy.description.annotation.AnnotationDescription$ForLoadedAnnotation +net.bytebuddy.asm.Advice$Dispatcher$Inlining +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyMethodDescription$LazyParameterList +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$Resolution$Raw$RawAnnotatedType +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$TokenizedGenericType +net.bytebuddy.asm.Advice$Dispatcher$Resolved$AbstractBase +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodEnter +net.bytebuddy.asm.Advice$OffsetMapping +net.bytebuddy.asm.Advice$ArgumentHandler +net.bytebuddy.asm.Advice$Dispatcher$Inlining$CodeTranslationVisitor +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodEnter$WithRetainedEnterType +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodEnter$WithDiscardedEnterType +net.bytebuddy.asm.Advice$OffsetMapping$ForArgument$Unresolved$Factory +net.bytebuddy.asm.Advice$Argument +net.bytebuddy.asm.Advice$OffsetMapping$ForAllArguments$Factory +net.bytebuddy.asm.Advice$AllArguments +net.bytebuddy.asm.Advice$OffsetMapping$ForThisReference$Factory +net.bytebuddy.asm.Advice$This +net.bytebuddy.asm.Advice$OffsetMapping$ForField$Unresolved$Factory +net.bytebuddy.asm.Advice$OffsetMapping$ForField +net.bytebuddy.asm.Advice$OffsetMapping$ForField$Unresolved +net.bytebuddy.asm.Advice$OffsetMapping$ForField$Unresolved$WithImplicitType +net.bytebuddy.asm.Advice$OffsetMapping$ForField$Unresolved$WithExplicitType +net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle$Unresolved$ReaderFactory +net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle +net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle$Unresolved +net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle$Unresolved$WithImplicitType +net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle$Unresolved$WithExplicitType +net.bytebuddy.asm.Advice$FieldGetterHandle +net.bytebuddy.asm.Advice$OffsetMapping$ForFieldHandle$Unresolved$WriterFactory +net.bytebuddy.asm.Advice$FieldSetterHandle +net.bytebuddy.asm.Advice$OffsetMapping$ForOrigin$Factory +net.bytebuddy.asm.Advice$Origin +net.bytebuddy.asm.Advice$OffsetMapping$ForSelfCallHandle$Factory +net.bytebuddy.asm.Advice$SelfCallHandle +net.bytebuddy.asm.Advice$OffsetMapping$ForHandle$Factory +net.bytebuddy.asm.Advice$Handle +net.bytebuddy.utility.JavaConstant$MethodHandle$HandleType +net.bytebuddy.asm.Advice$OffsetMapping$ForDynamicConstant$Factory +net.bytebuddy.asm.Advice$DynamicConstant +net.bytebuddy.asm.Advice$OffsetMapping$ForUnusedValue$Factory +net.bytebuddy.asm.Advice$OffsetMapping$ForStubValue +net.bytebuddy.asm.Advice$OffsetMapping$Target +net.bytebuddy.asm.Advice$OffsetMapping$ForThrowable$Factory +net.bytebuddy.asm.Advice$Thrown +net.bytebuddy.asm.Advice$OffsetMapping$ForExitValue$Factory +net.bytebuddy.asm.Advice$Exit +net.bytebuddy.asm.Advice$OffsetMapping$Factory$Illegal +net.bytebuddy.asm.Advice$OffsetMapping$ForLocalValue$Factory +net.bytebuddy.asm.Advice$Local +net.bytebuddy.asm.Advice$Enter +net.bytebuddy.asm.Advice$Return +net.bytebuddy.description.annotation.AnnotationValue$ForMismatchedType +net.bytebuddy.asm.Advice$OffsetMapping$Factory$AdviceType +net.bytebuddy.asm.Advice$FieldValue +net.bytebuddy.asm.Advice$Unused +net.bytebuddy.asm.Advice$StubValue +net.bytebuddy.asm.Advice$Dispatcher$SuppressionHandler +net.bytebuddy.asm.Advice$Dispatcher$SuppressionHandler$Suppressing +net.bytebuddy.asm.Advice$Dispatcher$SuppressionHandler$Bound +net.bytebuddy.asm.Advice$NoExceptionHandler +net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler +net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler$ForType +net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler$Bound +net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler$Disabled +net.bytebuddy.asm.AsmVisitorWrapper$ForDeclaredMethods$Entry +net.bytebuddy.dynamic.TypeResolutionStrategy$Disabled +net.bytebuddy.dynamic.scaffold.inline.InliningImplementationMatcher +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyTypeList +net.bytebuddy.dynamic.scaffold.MethodGraph$Simple +net.bytebuddy.dynamic.scaffold.MethodGraph$Empty +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyMethodDescription$LazyParameterDescription +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$RegistryContextClassVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor +net.bytebuddy.jar.asm.commons.SimpleRemapper +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$OpenedClassRemapper +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$FieldTokenList +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$RecordComponentTokenList +net.bytebuddy.dynamic.scaffold.inline.MethodRebaseResolver$Disabled +net.bytebuddy.dynamic.scaffold.inline.MethodRebaseResolver$Resolution +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$ContextRegistry +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor$AttributeObtainingMethodVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor$CodePreservingMethodVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor$AttributeObtainingFieldVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor$AttributeObtainingRecordComponentVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor$DeduplicatingClassVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyFieldDescription +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$SignatureKey +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyNestMemberList +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Creating +net.bytebuddy.implementation.Implementation$Context$Disabled +net.bytebuddy.asm.TypeConstantAdjustment$TypeConstantDissolvingClassVisitor$TypeConstantDissolvingMethodVisitor +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$Constraint$ForClassFileVersion +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$Constraint$ForClass +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ValidatingClassVisitor$Constraint$Compound +net.bytebuddy.dynamic.scaffold.TypeWriter$FieldPool$Record$ForImplicitField +net.bytebuddy.jar.asm.Label +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithDrain +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithDrain$WithActiveRecord +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithDrain$WithoutActiveRecord +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithoutDrain +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithoutDrain$WithActiveRecord +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$WithoutDrain$WithoutActiveRecord +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$FrameWriter +net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$InitializationHandler$Appending$FrameWriter$NoOp +net.bytebuddy.jar.asm.Opcodes +net.bytebuddy.jar.asm.Handle +net.bytebuddy.jar.asm.ConstantDynamic +net.bytebuddy.asm.Advice$ArgumentHandler$Factory +net.bytebuddy.asm.Advice$ArgumentHandler$Factory$1 +net.bytebuddy.asm.Advice$ArgumentHandler$Factory$2 +net.bytebuddy.asm.Advice$ArgumentHandler$ForInstrumentedMethod +net.bytebuddy.asm.Advice$ArgumentHandler$ForInstrumentedMethod$Default +net.bytebuddy.asm.Advice$ArgumentHandler$ForInstrumentedMethod$Default$Simple +net.bytebuddy.asm.Advice$ArgumentHandler$ForAdvice +net.bytebuddy.asm.Advice$MethodSizeHandler +net.bytebuddy.asm.Advice$MethodSizeHandler$ForInstrumentedMethod +net.bytebuddy.asm.Advice$MethodSizeHandler$Default +net.bytebuddy.asm.Advice$MethodSizeHandler$ForAdvice +net.bytebuddy.asm.Advice$MethodSizeHandler$Default$WithRetainedArguments +net.bytebuddy.asm.Advice$StackMapFrameHandler +net.bytebuddy.asm.Advice$StackMapFrameHandler$ForInstrumentedMethod +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default +net.bytebuddy.asm.Advice$StackMapFrameHandler$ForPostProcessor +net.bytebuddy.asm.Advice$StackMapFrameHandler$ForAdvice +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$Trivial +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$AdviceMethodInliner +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$AdviceMethodInliner$ExceptionTableSubstitutor +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$AdviceMethodInliner$ExceptionTableExtractor +net.bytebuddy.asm.Advice$Dispatcher$SuppressionHandler$Suppressing$Bound +net.bytebuddy.asm.Advice$Dispatcher$RelocationHandler$Relocation$ForLabel +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$AdviceMethodInliner$ExceptionTableCollector +net.bytebuddy.asm.Advice$ArgumentHandler$ForAdvice$Default +net.bytebuddy.asm.Advice$ArgumentHandler$ForAdvice$Default$ForMethodEnter +net.bytebuddy.asm.Advice$MethodSizeHandler$Default$ForAdvice +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$ForAdvice +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$TranslationMode +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$TranslationMode$1 +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$TranslationMode$2 +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$TranslationMode$3 +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$Initialization +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$Initialization$1 +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$Initialization$2 +net.bytebuddy.utility.visitor.StackAwareMethodVisitor +net.bytebuddy.pool.TypePool$Default$AnnotationRegistrant$ForByteCodeElement$WithIndex +net.bytebuddy.asm.Advice$OffsetMapping$ForArgument +net.bytebuddy.asm.Advice$OffsetMapping$ForArgument$Unresolved +net.bytebuddy.asm.Advice$OffsetMapping$Target$ForDefaultValue +net.bytebuddy.asm.Advice$OffsetMapping$Target$ForDefaultValue$ReadOnly +net.bytebuddy.asm.Advice$OffsetMapping$Target$ForDefaultValue$ReadWrite +net.bytebuddy.description.type.TypeDescription$ArrayProjection +net.bytebuddy.description.enumeration.EnumerationDescription$AbstractBase +net.bytebuddy.description.enumeration.EnumerationDescription$ForLoadedEnumeration +net.bytebuddy.description.annotation.AnnotationValue$ForEnumerationDescription +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodExit +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodExit$WithoutExceptionHandler +net.bytebuddy.asm.Advice$Dispatcher$Inlining$Resolved$ForMethodExit$WithExceptionHandler +net.bytebuddy.asm.Advice$OffsetMapping$ForEnterValue$Factory +net.bytebuddy.asm.Advice$OffsetMapping$ForReturnValue$Factory +net.bytebuddy.asm.Advice$OffsetMapping$ForReturnValue +net.bytebuddy.asm.Advice$OffsetMapping$ForEnterValue +net.bytebuddy.asm.Advice$OffsetMapping$ForThrowable +net.bytebuddy.dynamic.scaffold.MethodGraph$Node$Simple +net.bytebuddy.description.type.PackageDescription$AbstractBase +net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$LazyPackageDescription +net.bytebuddy.asm.Advice$ArgumentHandler$ForInstrumentedMethod$Default$Copying +net.bytebuddy.asm.Advice$MethodSizeHandler$Default$WithCopiedArguments +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$WithPreservedArguments +net.bytebuddy.asm.Advice$StackMapFrameHandler$Default$WithPreservedArguments$WithArgumentCopy +net.bytebuddy.asm.Advice$OffsetMapping$Sort +net.bytebuddy.asm.Advice$OffsetMapping$Sort$1 +net.bytebuddy.asm.Advice$OffsetMapping$Sort$2 +net.bytebuddy.asm.Advice$OffsetMapping$Target$ForVariable +net.bytebuddy.asm.Advice$OffsetMapping$Target$ForVariable$ReadOnly +net.bytebuddy.implementation.bytecode.StackSize$1 +net.bytebuddy.asm.Advice$ArgumentHandler$ForAdvice$Default$ForMethodExit +net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveWideningDelegate +net.bytebuddy.implementation.bytecode.assign.primitive.PrimitiveWideningDelegate$WideningStackManipulation +net.bytebuddy.asm.Advice$OffsetMapping$ForThisReference +datadog.trace.agent.tooling.context.FieldBackedContextRequestRewriter$1$1 +net.bytebuddy.asm.Advice$MethodSizeHandler$NoOp +datadog.trace.instrumentation.java.concurrent.runnable.RunnableInstrumentation$Muzzle +datadog.communication.ddagent.SharedCommunicationObjects +datadog.communication.ddagent.DroppingPolicy +datadog.communication.ddagent.DDAgentFeaturesDiscovery +datadog.communication.ddagent.NoopFeaturesDiscovery +datadog.remoteconfig.ConfigurationPoller +datadog.trace.agent.tooling.MeterInstaller +datadog.metrics.impl.statsd.DDAgentStatsDClientManager +datadog.trace.agent.core.DDTraceCoreInfo +datadog.metrics.impl.statsd.DDAgentStatsDClientManager$NameResolver +datadog.metrics.impl.statsd.DDAgentStatsDClientManager$NameResolver$1 +datadog.metrics.impl.statsd.DDAgentStatsDClientManager$TagCombiner +datadog.metrics.impl.statsd.LoggingStatsDClient +datadog.trace.agent.tooling.bytebuddy.ClassFileLocators$DDClassFileLocator +datadog.metrics.impl.MonitoringImpl +datadog.metrics.impl.ThreadLocalRecording +datadog.metrics.impl.Timer +datadog.metrics.impl.DDSketchHistograms +com.datadoghq.sketch.ddsketch.store.Store +com.datadoghq.sketch.ddsketch.mapping.IndexMapping +com.datadoghq.sketch.ddsketch.mapping.BitwiseLinearlyInterpolatedMapping +com.datadoghq.sketch.ddsketch.mapping.LogLikeIndexMapping +com.datadoghq.sketch.ddsketch.mapping.LogarithmicMapping +datadog.trace.agent.tooling.TracerInstaller +datadog.trace.agent.core.CoreTracer +datadog.trace.agent.core.CoreTracer$CoreSpanBuilder +datadog.trace.agent.core.CoreTracer$MultiSpanBuilder +datadog.trace.agent.core.CoreTracer$ReusableSingleSpanBuilder +datadog.trace.agent.core.monitor.HealthMetrics +datadog.trace.agent.core.monitor.TracerHealthMetrics +datadog.trace.agent.core.TraceCollector$Factory +datadog.trace.agent.common.metrics.MetricsAggregator +datadog.trace.agent.core.datastreams.DataStreamsMonitoring +datadog.trace.agent.core.CoreTracer$ShutdownHook +datadog.trace.agent.core.CoreTracer$CoreTracerBuilder +datadog.trace.agent.common.sampling.Sampler$Builder +datadog.trace.agent.common.sampling.Sampler +datadog.trace.agent.common.sampling.PrioritySampler +datadog.trace.agent.common.writer.RemoteResponseListener +datadog.trace.agent.common.sampling.RateByServiceTraceSampler +datadog.trace.agent.common.sampling.RateSampler +datadog.trace.agent.common.sampling.RateByServiceTraceSampler$RateSamplersByEnvAndService +datadog.trace.agent.common.sampling.DeterministicSampler +datadog.trace.agent.common.sampling.DeterministicSampler$TraceSampler +datadog.trace.agent.common.sampling.SingleSpanSampler$Builder +datadog.trace.agent.common.sampling.SingleSpanSampler +datadog.trace.agent.core.propagation.HttpCodec +datadog.trace.agent.core.propagation.HttpCodec$Injector +datadog.trace.agent.core.propagation.HttpCodec$Extractor +datadog.trace.agent.core.propagation.HttpCodec$1 +datadog.trace.agent.core.propagation.DatadogHttpCodec +datadog.trace.agent.core.propagation.ContextInterpreter +datadog.trace.agent.core.propagation.DatadogHttpCodec$DatadogContextInterpreter +datadog.trace.agent.core.propagation.DatadogHttpCodec$Injector +datadog.trace.agent.core.propagation.W3CHttpCodec +datadog.trace.agent.core.propagation.W3CHttpCodec$W3CContextInterpreter +datadog.trace.agent.core.propagation.W3CHttpCodec$Injector +datadog.trace.agent.core.propagation.HttpCodec$CompoundInjector +datadog.trace.instrumentation.java.concurrent.executor.ExecutorModule$Muzzle +net.bytebuddy.asm.Advice$OffsetMapping$Target$ForVariable$ReadWrite +net.bytebuddy.implementation.bytecode.member.MethodVariableAccess$OffsetWriting +datadog.trace.instrumentation.java.concurrent.WrapRunnableAsNewTaskInstrumentation$Muzzle +datadog.trace.agent.core.CoreTracer$TraceInterceptors +datadog.trace.agent.core.CoreTracer$ReusableSingleSpanBuilderThreadLocalCache +datadog.trace.agent.core.TraceCollector$PublishState +datadog.trace.agent.common.sampling.TraceSamplingRules +com.squareup.moshi.Moshi$Builder +com.squareup.moshi.JsonAdapter$Factory +datadog.trace.agent.common.sampling.TraceSamplingRules$RuleAdapter +com.squareup.moshi.AdapterMethodsFactory +com.squareup.moshi.AdapterMethodsFactory$AdapterMethod +com.squareup.moshi.AdapterMethodsFactory$2 +com.squareup.moshi.AdapterMethodsFactory$3 +com.squareup.moshi.AdapterMethodsFactory$4 +com.squareup.moshi.AdapterMethodsFactory$5 +com.squareup.moshi.JsonAdapter +com.squareup.moshi.AdapterMethodsFactory$1 +datadog.trace.agent.common.sampling.TraceSamplingRules$JsonRule +datadog.trace.agent.common.sampling.TraceSamplingRules$Rule +com.squareup.moshi.ToJson +com.squareup.moshi.FromJson +com.squareup.moshi.internal.Util +com.squareup.moshi.JsonQualifier +com.squareup.moshi.JsonReader +com.squareup.moshi.Moshi +com.squareup.moshi.StandardJsonAdapters +com.squareup.moshi.JsonDataException +com.squareup.moshi.StandardJsonAdapters$2 +com.squareup.moshi.StandardJsonAdapters$3 +com.squareup.moshi.StandardJsonAdapters$4 +com.squareup.moshi.StandardJsonAdapters$5 +com.squareup.moshi.StandardJsonAdapters$6 +com.squareup.moshi.StandardJsonAdapters$7 +com.squareup.moshi.StandardJsonAdapters$8 +com.squareup.moshi.StandardJsonAdapters$9 +com.squareup.moshi.StandardJsonAdapters$10 +com.squareup.moshi.StandardJsonAdapters$1 +datadog.okio.Source +datadog.okio.BufferedSource +datadog.okio.Sink +datadog.okio.BufferedSink +com.squareup.moshi.JsonWriter +com.squareup.moshi.JsonValueWriter +com.squareup.moshi.JsonValueReader +com.squareup.moshi.JsonAdapter$1 +com.squareup.moshi.internal.NullSafeJsonAdapter +com.squareup.moshi.JsonAdapter$3 +com.squareup.moshi.JsonAdapter$4 +com.squareup.moshi.internal.NonNullJsonAdapter +com.squareup.moshi.JsonAdapter$2 +com.squareup.moshi.CollectionJsonAdapter +com.squareup.moshi.CollectionJsonAdapter$2 +com.squareup.moshi.CollectionJsonAdapter$3 +com.squareup.moshi.CollectionJsonAdapter$1 +com.squareup.moshi.MapJsonAdapter +com.squareup.moshi.MapJsonAdapter$1 +com.squareup.moshi.ArrayJsonAdapter +com.squareup.moshi.ArrayJsonAdapter$1 +com.squareup.moshi.ClassJsonAdapter +com.squareup.moshi.ClassJsonAdapter$1 +com.squareup.moshi.Types +com.squareup.moshi.internal.Util$ParameterizedTypeImpl +com.squareup.moshi.Moshi$LookupChain +com.squareup.moshi.Moshi$Lookup +com.squareup.moshi.JsonClass +com.squareup.moshi.ClassFactory +com.squareup.moshi.ClassFactory$1 +com.squareup.moshi.ClassFactory$2 +com.squareup.moshi.ClassFactory$3 +com.squareup.moshi.ClassFactory$4 +com.squareup.moshi.Json +com.squareup.moshi.ClassJsonAdapter$FieldBinding +com.squareup.moshi.JsonReader$Options +datadog.okio.ByteString +datadog.okio.Buffer +datadog.okio.Buffer$1 +datadog.okio.Buffer$2 +datadog.okio.SegmentedByteString +com.squareup.moshi.JsonUtf8Writer +datadog.okio.SegmentPool +datadog.okio.Segment +datadog.okio.Util +datadog.okio.Options +datadog.trace.agent.core.datastreams.DataStreamsTransactionExtractors +datadog.trace.agent.core.datastreams.DataStreamsTransactionExtractors$DataStreamsTransactionExtractorAdapter +datadog.trace.agent.core.datastreams.DataStreamsTransactionExtractors$JsonDataStreamsTransactionExtractor +datadog.trace.agent.core.datastreams.DataStreamsTransactionExtractors$DataStreamsTransactionExtractorImpl +com.squareup.moshi.StandardJsonAdapters$EnumJsonAdapter +datadog.trace.agent.common.sampling.SpanSamplingRules +datadog.trace.agent.common.sampling.SpanSamplingRules$RuleAdapter +datadog.trace.agent.common.sampling.SpanSamplingRules$JsonRule +datadog.trace.agent.common.sampling.SpanSamplingRules$Rule +datadog.trace.agent.core.taginterceptor.TagInterceptor +datadog.trace.agent.core.taginterceptor.RuleFlags +datadog.trace.agent.core.taginterceptor.RuleFlags$Feature +datadog.trace.agent.core.CoreTracer$ConfigSnapshot +datadog.trace.agent.core.monitor.HealthMetrics$1 +datadog.trace.agent.core.monitor.TracerHealthMetrics$Flush +datadog.trace.agent.core.scopemanager.ContinuableScopeManager +datadog.trace.agent.core.scopemanager.ContinuableScope +datadog.trace.agent.core.scopemanager.ContinuingScope +datadog.trace.agent.core.scopemanager.ContinuableScopeManager$ScopeStackThreadLocal +datadog.communication.ddagent.ExternalAgentLauncher +datadog.okhttp3.HttpUrl +datadog.okhttp3.HttpUrl$Builder +datadog.okhttp3.internal.PatchUtil +datadog.okhttp3.ResponseBody +datadog.okhttp3.ResponseBody$BomAwareReader +datadog.okhttp3.ResponseBody$1 +datadog.okhttp3.RequestBody +datadog.okhttp3.RequestBody$2 +datadog.okhttp3.RequestBody$3 +datadog.okhttp3.RequestBody$1 +datadog.okhttp3.internal.PatchUtil$1 +datadog.communication.http.SocketUtils +datadog.communication.http.OkHttpUtils +datadog.common.socket.UnixDomainSocketFactory +datadog.common.socket.NamedPipeSocketFactory +datadog.communication.http.OkHttpUtils$ByteBufferRequestBody +datadog.okhttp3.EventListener +datadog.communication.http.OkHttpUtils$CustomListener +datadog.communication.http.OkHttpUtils$GZipByteBufferRequestBody +datadog.communication.http.OkHttpUtils$GZipRequestBodyDecorator +datadog.communication.http.OkHttpUtils$JsonRequestBody +datadog.okhttp3.Call$Factory +datadog.okhttp3.OkHttpClient$Builder +datadog.okhttp3.internal.proxy.NullProxySelector +datadog.okhttp3.Dispatcher +datadog.okhttp3.WebSocket$Factory +datadog.okhttp3.OkHttpClient +datadog.okhttp3.Call +datadog.okhttp3.WebSocket +datadog.okhttp3.internal.Internal +datadog.okhttp3.OkHttpClient$1 +datadog.okhttp3.Protocol +datadog.okhttp3.ConnectionSpec +datadog.okhttp3.CipherSuite +datadog.okhttp3.CipherSuite$1 +datadog.okhttp3.ConnectionSpec$Builder +datadog.okhttp3.TlsVersion +datadog.okhttp3.EventListener$1 +datadog.okhttp3.EventListener$Factory +datadog.okhttp3.EventListener$2 +datadog.okhttp3.CookieJar +datadog.okhttp3.CookieJar$1 +datadog.okhttp3.internal.tls.OkHostnameVerifier +datadog.okhttp3.CertificatePinner +datadog.okhttp3.CertificatePinner$Builder +datadog.okhttp3.Authenticator +datadog.okhttp3.Authenticator$1 +datadog.okhttp3.ConnectionPool +datadog.okhttp3.internal.PatchUtil$2 +datadog.okhttp3.ConnectionPool$1 +datadog.okhttp3.internal.connection.RouteDatabase +datadog.okhttp3.Dns +datadog.okhttp3.Dns$1 +datadog.communication.http.RejectingExecutorService +datadog.trace.agent.core.TracingConfigPoller +datadog.remoteconfig.state.ProductListener +datadog.trace.agent.core.TracingConfigPoller$Updater +datadog.trace.agent.core.TracingConfigPoller$TracingSamplingRulesAdapter +datadog.trace.agent.core.TracingConfigPoller$TracingSamplingRules +datadog.trace.agent.core.TracingConfigPoller$TracingSamplingRule +datadog.trace.agent.core.datastreams.DataStreamsTransactionExtractors$DataStreamsTransactionExtractorsAdapter +datadog.trace.agent.core.TracingConfigPoller$ConfigOverrides +datadog.trace.agent.core.TracingConfigPoller$LibConfig +datadog.trace.agent.core.TracingConfigPoller$ServiceTarget +datadog.trace.agent.core.TracingConfigPoller$K8sTargetV2 +datadog.trace.agent.core.TracingConfigPoller$ServiceMappingEntry +datadog.trace.agent.core.TracingConfigPoller$HeaderTagEntry +datadog.trace.agent.core.TracingConfigPoller$SamplingRuleTagEntry +datadog.trace.agent.core.TracingConfigPoller$ClusterTarget +datadog.trace.agent.common.writer.WriterFactory +datadog.trace.agent.common.writer.Writer +datadog.trace.agent.common.writer.ddagent.Prioritization +datadog.trace.agent.common.writer.RemoteWriter +datadog.trace.agent.common.writer.DDIntakeWriter +datadog.trace.agent.common.writer.DDAgentWriter +datadog.trace.agent.common.writer.PayloadDispatcher +datadog.trace.agent.common.writer.RemoteApi +datadog.trace.agent.common.writer.ddintake.DDEvpProxyApi +datadog.trace.agent.common.writer.ddintake.DDIntakeApi +datadog.trace.agent.common.writer.LoggingWriter +datadog.trace.agent.common.writer.DDSpanJsonAdapter +datadog.trace.agent.common.writer.DDSpanJsonAdapter$1 +datadog.trace.agent.core.CoreSpan +datadog.trace.agent.core.DDSpan +com.squareup.moshi.StandardJsonAdapters$ObjectJsonAdapter +com.datadoghq.sketch.QuantileSketch +com.datadoghq.sketch.ddsketch.DDSketch +com.datadoghq.sketch.ddsketch.encoding.MalformedInputException +com.datadoghq.sketch.ddsketch.store.DenseStore +com.datadoghq.sketch.ddsketch.store.CollapsingDenseStore +com.datadoghq.sketch.ddsketch.store.CollapsingLowestDenseStore +datadog.metrics.impl.DDSketchHistogram +datadog.metrics.impl.Utils +datadog.communication.ddagent.DDAgentFeaturesDiscovery$State +datadog.trace.agent.core.PendingTraceBuffer +datadog.trace.agent.core.PendingTraceBuffer$DiscardingPendingTraceBuffer +datadog.okhttp3.Request$Builder +datadog.trace.agent.core.PendingTraceBuffer$DelayingPendingTraceBuffer +datadog.okhttp3.Headers$Builder +datadog.trace.agent.core.PendingTraceBuffer$Element +datadog.trace.agent.core.PendingTraceBuffer$DelayingPendingTraceBuffer$CommandElement +datadog.okhttp3.Headers +datadog.common.queue.Queues +datadog.jctools.queues.MessagePassingQueue +datadog.common.container.ContainerInfo +datadog.common.queue.MessagePassingBlockingQueue +datadog.jctools.queues.QueueProgressIndicators +datadog.jctools.queues.IndexedQueueSizeUtil$IndexedQueue +datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueuePad1 +datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueueColdProducerFields +datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueuePad2 +datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueueProducerFields +datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueuePad3 +datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueueConsumerFields +datadog.jctools.queues.varhandle.MpscBlockingConsumerVarHandleArrayQueue +datadog.common.queue.MpscBlockingConsumerVarHandleArrayQueue +datadog.jctools.util.Pow2 +datadog.jctools.queues.varhandle.VarHandleQueueUtil +datadog.okhttp3.internal.http.HttpMethod +datadog.jctools.util.RangeUtil +datadog.okhttp3.Request +datadog.trace.agent.core.PendingTraceBuffer$DelayingPendingTraceBuffer$Worker +datadog.okhttp3.RealCall +datadog.jctools.queues.MessagePassingQueue$Consumer +datadog.jctools.queues.MessagePassingQueue$Supplier +datadog.okhttp3.Interceptor$Chain +datadog.trace.agent.core.PendingTrace$Factory +datadog.trace.agent.core.TraceCollector +datadog.okio.Timeout +datadog.okio.AsyncTimeout +datadog.okhttp3.RealCall$1 +datadog.trace.agent.core.PendingTrace +datadog.trace.agent.core.PendingTraceBuffer$TracerDump +datadog.okhttp3.Interceptor +datadog.okhttp3.internal.http.RetryAndFollowUpInterceptor +datadog.okhttp3.internal.connection.RouteException +datadog.okio.Timeout$1 +datadog.okhttp3.internal.platform.PatchPlatform +datadog.okhttp3.internal.tls.CertificateChainCleaner +datadog.okhttp3.internal.tls.BasicCertificateChainCleaner +datadog.okhttp3.internal.platform.Jdk9Platform +datadog.okhttp3.internal.tls.TrustRootIndex +datadog.trace.agent.common.metrics.NoOpMetricsAggregator +datadog.okhttp3.internal.http.BridgeInterceptor +datadog.okhttp3.internal.http.RealResponseBody +datadog.trace.agent.common.metrics.EventListener +datadog.trace.agent.core.datastreams.DefaultDataStreamsMonitoring +datadog.okhttp3.internal.cache.CacheInterceptor +datadog.okhttp3.internal.connection.ConnectInterceptor +datadog.okhttp3.internal.http.CallServerInterceptor +datadog.okhttp3.internal.http.RealInterceptorChain +datadog.communication.serialization.ByteBufferConsumer +datadog.trace.agent.common.metrics.Sink +datadog.okhttp3.Connection +datadog.trace.agent.core.datastreams.DatastreamsPayloadWriter +datadog.okhttp3.internal.connection.StreamAllocation +datadog.okhttp3.Address +datadog.okhttp3.internal.connection.RouteSelector +datadog.trace.agent.common.metrics.OkHttpSink +datadog.okhttp3.internal.Version +datadog.okhttp3.internal.cache.CacheStrategy$Factory +datadog.okhttp3.internal.cache.CacheStrategy +datadog.jctools.queues.SupportsIterator +datadog.okhttp3.CacheControl +datadog.jctools.queues.varhandle.ConcurrentCircularVarHandleArrayQueueL0Pad +datadog.okhttp3.CacheControl$Builder +datadog.jctools.queues.varhandle.ConcurrentCircularVarHandleArrayQueue +datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueColdField +datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueL1Pad +datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueProducerIndexFields +datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueL2Pad +datadog.trace.instrumentation.java.lang.module.JpmsClearanceInstrumentation$Muzzle +datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueConsumerIndexField +datadog.jctools.queues.varhandle.SpscVarHandleArrayQueueL3Pad +datadog.jctools.queues.varhandle.SpscVarHandleArrayQueue +datadog.jctools.util.SpscLookAheadUtil +datadog.trace.agent.core.datastreams.MsgPackDatastreamsPayloadWriter +datadog.communication.serialization.Writable +datadog.communication.serialization.StreamingBuffer +datadog.communication.serialization.MessageFormatter +datadog.communication.serialization.WritableFormatter +datadog.communication.serialization.GrowableBuffer +net.bytebuddy.description.enumeration.EnumerationDescription$Latent +datadog.communication.serialization.msgpack.MsgPackWriter +datadog.communication.serialization.Codec +datadog.communication.serialization.ValueWriter +datadog.communication.serialization.custom.stacktrace.StackTraceEventWriter +datadog.communication.serialization.custom.stacktrace.StackTraceEventFrameWriter +datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueL1Pad +datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueProducerIndexField +datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueMidPad +datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueProducerLimitField +datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueL2Pad +datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueConsumerIndexField +datadog.jctools.queues.varhandle.MpscVarHandleArrayQueueL3Pad +datadog.jctools.queues.varhandle.MpscVarHandleArrayQueue +datadog.trace.agent.core.datastreams.DefaultDataStreamsMonitoring$InboxProcessor +datadog.trace.agent.core.datastreams.DataStreamsPropagator +datadog.trace.agent.core.datastreams.DefaultDataStreamsMonitoring$ReportTask +datadog.trace.agent.core.propagation.PropagationTags +datadog.trace.agent.core.propagation.PropagationTags$Factory +datadog.trace.agent.core.propagation.ptags.PTagsFactory +datadog.trace.agent.core.propagation.ptags.PTagsFactory$PTags +datadog.trace.agent.core.propagation.ptags.W3CPTagsCodec$W3CPTags +datadog.trace.agent.core.propagation.PropagationTags$HeaderType +datadog.trace.agent.core.propagation.ptags.PTagsCodec +datadog.trace.agent.core.propagation.ptags.DatadogPTagsCodec +datadog.trace.agent.core.propagation.ptags.TagElement +datadog.trace.agent.core.propagation.ptags.TagValue +datadog.trace.agent.core.propagation.ptags.TagKey +datadog.trace.agent.core.propagation.ptags.TagElement$Encoding +datadog.trace.agent.core.propagation.ptags.W3CPTagsCodec +datadog.trace.agent.core.propagation.TagContextExtractor +datadog.trace.agent.core.propagation.ContextInterpreter$Factory +datadog.trace.agent.core.propagation.HttpCodec$CompoundExtractor +datadog.trace.agent.core.propagation.ExtractedContext +datadog.trace.agent.core.propagation.opg.OrgGuard +datadog.trace.agent.core.propagation.TracingPropagator +datadog.trace.agent.core.propagation.XRayPropagator +datadog.trace.agent.core.propagation.XRayHttpCodec +datadog.trace.agent.core.propagation.XRayHttpCodec$XRayContextInterpreter +datadog.trace.agent.core.propagation.XRayHttpCodec$Injector +datadog.trace.agent.core.baggage.BaggagePropagator +datadog.trace.agent.core.util.PercentEscaper +datadog.trace.agent.common.GitMetadataTraceInterceptor +datadog.trace.agent.core.StatusLogger +com.datadog.appsec.AppSecSystem +com.datadog.appsec.event.EventProducerService +com.datadog.appsec.event.OrderedCallback +com.datadog.appsec.event.DataListener +com.datadog.appsec.api.security.ApiSecuritySampler +com.datadog.appsec.util.AbortStartupException +com.datadog.appsec.AppSecModule$AppSecModuleActivationException +com.datadog.appsec.config.AppSecModuleConfigurer +com.datadog.appsec.api.security.ApiSecuritySampler$NoOp +com.datadog.appsec.event.ReplaceableEventProducerService +com.datadog.appsec.event.EventDispatcher +com.datadog.appsec.event.EventProducerService$DataSubscriberInfo +com.datadog.appsec.event.ExpiredSubscriberInfoException +com.datadog.appsec.event.data.KnownAddresses +com.datadog.appsec.event.data.Address +com.datadog.appsec.config.AppSecConfigService +com.datadog.appsec.config.AppSecConfigServiceImpl +com.datadog.ddwaf.exception.AbstractWafException +com.datadog.ddwaf.exception.UnclassifiedWafException +com.datadog.ddwaf.exception.InvalidRuleSetException +com.datadog.appsec.config.AppSecConfigService$TransactionalAppSecModuleConfigurer +datadog.remoteconfig.ConfigurationDeserializer +com.datadog.appsec.config.AppSecModuleConfigurer$Reconfiguration +com.datadog.appsec.config.MergedAsmFeatures +datadog.remoteconfig.ConfigurationEndListener +com.datadog.appsec.config.TraceSegmentPostProcessor +com.datadog.appsec.ddwaf.WAFInitializationResultReporter +com.datadog.appsec.ddwaf.WAFStatsReporter +com.datadog.appsec.gateway.GatewayBridge +com.datadog.appsec.api.security.ApiSecurityDownstreamSampler +com.datadog.appsec.event.data.DataBundle +datadog.okhttp3.Route +datadog.okhttp3.internal.connection.RouteSelector$Selection +datadog.okhttp3.internal.http2.Http2Connection$Listener +datadog.okhttp3.internal.connection.RealConnection +datadog.okhttp3.internal.http2.Http2Connection$Listener$1 +com.datadog.appsec.event.EventDispatcher$DataSubscriptionSet +datadog.okhttp3.internal.http.HttpCodec +datadog.okhttp3.internal.ws.RealWebSocket$Streams +datadog.okhttp3.internal.connection.RealConnection$1 +com.datadog.appsec.AppSecModule +com.datadog.appsec.ddwaf.WAFModule +datadog.okhttp3.internal.connection.StreamAllocation$StreamAllocationReference +datadog.okhttp3.internal.connection.ConnectionSpecSelector +com.datadog.appsec.ddwaf.WAFResultData +com.datadog.appsec.ddwaf.WAFResultData$Rule +com.datadog.appsec.ddwaf.WAFResultData$RuleMatch +com.datadog.appsec.ddwaf.WAFResultData$MatchInfo +com.datadog.appsec.ddwaf.WAFResultData$Parameter +com.datadog.ddwaf.Waf$Limits +datadog.metrics.impl.StatsDCounter +com.datadog.appsec.gateway.RateLimiter +com.datadog.appsec.gateway.RateLimiter$ThrottledCallback +com.datadog.appsec.config.AppSecConfigServiceImpl$TransactionalAppSecModuleConfigurerImpl +com.datadog.appsec.config.AppSecModuleConfigurer$SubconfigListener +com.datadog.appsec.event.OrderedCallback$CallbackPriorityComparator +com.datadog.appsec.gateway.GatewayBridge$IGAppSecEventDependencies +com.datadog.appsec.gateway.NoopFlow +com.datadog.appsec.blocking.BlockingServiceImpl +com.datadog.debugger.agent.DebuggerAgent +com.datadog.debugger.exception.AbstractExceptionDebugger +com.datadog.debugger.exception.FailedTestReplayExceptionDebugger +com.datadog.debugger.exception.DefaultExceptionDebugger +com.datadog.debugger.agent.ConfigurationAcceptor +datadog.okhttp3.internal.http2.StreamResetException +com.datadog.debugger.agent.DebuggerAgent$ShutdownHook +com.datadog.debugger.agent.JsonSnapshotSerializer +com.datadog.debugger.sink.DebuggerSink +datadog.okhttp3.MediaType +com.datadog.debugger.agent.ClassesToRetransformFinder +com.datadog.debugger.agent.SourceFileTrackingTransformer +com.datadoghq.sketch.ddsketch.mapping.DoubleBitOperationHelper +com.datadoghq.sketch.ddsketch.store.DenseStore$2 +com.datadoghq.sketch.ddsketch.store.DenseStore$1 +com.datadog.debugger.agent.SourceFileTrackingTransformer$SourceFileItem +com.datadoghq.sketch.ddsketch.store.Bin +com.datadog.debugger.agent.DefaultDebuggerConfigUpdater +datadog.trace.agent.common.metrics.MetricsAggregatorFactory +datadog.trace.agent.common.metrics.ClientStatsAggregator +datadog.trace.agent.common.metrics.MetricWriter +datadog.trace.agent.core.SpanKindFilter +datadog.trace.agent.core.SpanKindFilter$Builder +datadog.trace.agent.common.metrics.AdditionalTagsSchema +datadog.trace.agent.common.metrics.TagCardinalityHandler +datadog.trace.agent.common.metrics.SerializingMetricWriter +com.datadog.debugger.sink.ProbeStatusSink +datadog.trace.agent.common.metrics.TriState +com.datadog.debugger.util.MoshiHelper +com.datadog.debugger.el.ProbeCondition$ProbeConditionJsonAdapter +com.datadog.debugger.el.ValueScript$ValueScriptAdapter +com.datadog.debugger.probe.LogProbe$Segment$SegmentJsonAdapter +com.datadog.debugger.probe.Where$SourceLineAdapter +com.datadog.debugger.probe.ProbeDefinition$TagAdapter +com.datadog.debugger.agent.ProbeStatus$DiagnosticsFactory +com.datadog.debugger.agent.ProbeStatus$DiagnosticsWrapperAdapter +datadog.trace.agent.common.metrics.CardinalityLimitReporter +com.datadog.debugger.agent.ProbeStatus +com.datadog.debugger.agent.ProbeStatus$Diagnostics +com.datadog.debugger.agent.ProbeStatus$Status +datadog.trace.agent.core.otlp.metrics.OtlpStatsMetricWriter +com.datadog.debugger.agent.ProbeStatus$ProbeException +datadog.trace.agent.common.metrics.Aggregator +datadog.trace.agent.common.metrics.AggregateTable +datadog.trace.agent.common.metrics.AggregateEntry +datadog.trace.agent.common.metrics.CoreHandlers +datadog.trace.agent.common.metrics.PropertyCardinalityHandler +com.datadog.debugger.uploader.BatchUploader$RetryPolicy +com.datadog.debugger.uploader.BatchUploader +datadog.trace.agent.common.metrics.AggregateEntry$Canonical +datadog.okhttp3.MultipartBody +datadog.okhttp3.Callback +com.datadog.debugger.util.ClassNameFiltering +com.datadog.debugger.agent.ThirdPartyLibraries +com.datadog.debugger.agent.ThirdPartyLibraries$InternalConfig +com.datadog.debugger.uploader.BatchUploader$ResponseCallback +com.datadog.debugger.util.DebuggerMetrics +com.datadog.debugger.agent.ProbeStatus$Builder +com.squareup.moshi.JsonEncodingException +com.squareup.moshi.JsonUtf8Reader +com.squareup.moshi.JsonReader$Token +com.datadog.debugger.util.ClassFileHelper +datadog.instrument.asm.tree.ClassNode +datadog.trace.instrumentation.java.concurrent.forkjoin.ForkJoinModule$Muzzle +datadog.trace.agent.tooling.context.asm.SerialVersionUIDAdder +datadog.trace.agent.tooling.context.FieldBackedContextInjector$SerialVersionUIDInjector +datadog.trace.agent.tooling.context.asm.SerialVersionUIDAdder$Item +com.blogspot.mydailyjava.weaklockfree.WeakConcurrentMap +com.blogspot.mydailyjava.weaklockfree.WeakConcurrentMap$1 +datadog.trace.agent.tooling.WeakMaps$MapCleaningTask +datadog.trace.agent.tooling.WeakMaps$Adapter +com.blogspot.mydailyjava.weaklockfree.WeakConcurrentMap$LatentKey +datadog.trace.instrumentation.java.completablefuture.CompletableFutureModule$Muzzle +net.bytebuddy.asm.Advice$OffsetMapping$ForLocalValue +datadog.trace.agent.core.scopemanager.ScopeContinuation +com.datadog.debugger.sink.SnapshotSink +com.datadog.debugger.sink.SymbolSink +com.datadog.debugger.symbol.ServiceVersion +com.datadog.debugger.symbol.Scope +com.datadog.debugger.symbol.ScopeType +com.datadog.debugger.symbol.LanguageSpecifics +com.datadog.debugger.symbol.Scope$LineRange +com.datadog.debugger.symbol.Symbol +com.datadog.debugger.symbol.SymbolType +com.datadog.debugger.sink.SymbolSink$Stats +com.datadog.debugger.sink.IntakeBatchHelper +com.datadog.debugger.agent.ConfigurationUpdater +com.datadog.debugger.agent.ConfigurationAcceptor$Source +com.datadog.debugger.agent.ConfigurationUpdater$TransformerSupplier +com.datadog.debugger.agent.Configuration +com.datadog.debugger.agent.DebuggerTransformer$InstrumentationListener +com.datadog.debugger.agent.ProbeMetadata +com.datadog.debugger.agent.DebuggerTransformer +com.timgroup.statsd.StatsDClientErrorHandler +com.datadog.debugger.agent.StatsdMetricForwarder +com.datadog.debugger.agent.DenyListHelper +com.datadog.debugger.util.MoshiSnapshotHelper$CapturedValueAdapter +com.datadog.debugger.util.MoshiSnapshotHelper$SnapshotJsonFactory +com.datadog.debugger.util.MoshiSnapshotHelper$CapturedContextAdapter +com.datadog.debugger.util.MoshiSnapshotHelper$CapturesAdapter +com.datadog.debugger.util.MoshiSnapshotHelper$ProbeDetailsAdapter +com.squareup.moshi.Moshi$1 +com.datadog.debugger.agent.JsonSnapshotSerializer$IntakeRequest +com.datadog.debugger.sink.Snapshot$Captures +com.datadog.debugger.agent.JsonSnapshotSerializer$DebuggerIntakeRequestData +com.datadog.debugger.sink.Snapshot +com.datadog.debugger.sink.Snapshot$CapturedThread +com.datadog.debugger.util.MoshiSnapshotHelper$CapturedThrowableAdapter +com.datadog.debugger.util.SerializerWithLimits$TokenWriter +com.datadog.debugger.agent.DebuggerTracer +com.datadog.debugger.codeorigin.DefaultCodeOriginRecorder +com.datadog.debugger.symbol.ScopeFilter +com.datadog.debugger.symbol.AvroFilter +com.datadog.debugger.symbol.ProtoFilter +com.datadog.debugger.symbol.WireFilter +com.datadog.debugger.symbol.SymbolAggregator +com.datadog.debugger.symbol.SymDBEnablement +com.datadog.debugger.symbol.SymDBReport +com.datadog.debugger.el.ProbeCondition +com.datadog.debugger.el.ValueScript +com.datadog.debugger.el.Visitor +com.datadog.debugger.probe.LogProbe$Segment +com.datadog.debugger.probe.Where$SourceLine +com.datadog.debugger.probe.ProbeDefinition$Tag +com.datadog.debugger.symbol.SymDbRemoteConfigRecord +com.datadog.featureflag.FeatureFlaggingSystem +com.datadog.featureflag.ConfigurationSourceService +com.datadog.featureflag.ExposureWriter +com.datadog.featureflag.FeatureFlaggingSystem$SystemInitializer +datadog.telemetry.TelemetrySystem +datadog.telemetry.dependency.DependencyService +datadog.telemetry.dependency.DependencyResolverQueue +datadog.telemetry.dependency.LocationsCollectingTransformer +datadog.communication.http.HttpRetryPolicy$Factory +datadog.telemetry.TelemetryClient +datadog.telemetry.TelemetryService +datadog.telemetry.EventSource +datadog.telemetry.EventSink +datadog.telemetry.FileBasedTelemetryClient +datadog.telemetry.TelemetryRouter +datadog.telemetry.ExtendedHeartbeatData +datadog.telemetry.EventSource$Queued +datadog.telemetry.TelemetryRunnable$TelemetryPeriodicAction +datadog.telemetry.metric.MetricPeriodicAction +datadog.telemetry.metric.CoreMetricsPeriodicAction +datadog.telemetry.metric.OtelEnvMetricPeriodicAction +datadog.telemetry.metric.ConfigInversionMetricPeriodicAction +datadog.telemetry.integration.IntegrationPeriodicAction +datadog.telemetry.metric.WafMetricPeriodicAction +datadog.telemetry.metric.OtlpTelemetryPeriodicAction +datadog.telemetry.metric.IastMetricPeriodicAction +datadog.telemetry.dependency.DependencyPeriodicAction +datadog.telemetry.log.LogPeriodicAction +datadog.telemetry.products.ProductChangeAction +datadog.telemetry.endpoint.EndpointPeriodicAction +datadog.telemetry.TelemetryRunnable +datadog.telemetry.TelemetryRunnable$ThreadSleeper +datadog.telemetry.TelemetryRunnable$ThreadSleeperImpl +datadog.telemetry.TelemetryRunnable$Scheduler +datadog.flare.TracerFlarePoller +datadog.flare.TracerFlarePoller$Preparer +datadog.flare.TracerFlarePoller$AgentConfigLayer +datadog.flare.TracerFlarePoller$AgentConfig +datadog.flare.TracerFlarePoller$Submitter +datadog.flare.TracerFlarePoller$AgentTask +datadog.flare.TracerFlarePoller$AgentTaskArgs +datadog.telemetry.BufferedEvents +datadog.telemetry.TelemetryRequest +datadog.flare.TracerFlareService +datadog.telemetry.TelemetryRequestBody$SerializationException +datadog.telemetry.TelemetryRequestBody +datadog.telemetry.api.RequestType +datadog.telemetry.TelemetryRequestBody$CommonData +datadog.telemetry.HostInfo +datadog.telemetry.HostInfo$Os