Skip to content

Commit 1eb77ee

Browse files
committed
fix lookup
1 parent 66fa381 commit 1eb77ee

1 file changed

Lines changed: 11 additions & 2 deletions

File tree

javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/instrumentation/indy/IndyModuleRegistry.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,17 @@ public static InstrumentationModuleClassLoader getInstrumentationClassLoader(
5656
public static InstrumentationModuleClassLoader getInstrumentationClassLoader(
5757
InstrumentationModule module, ClassLoader instrumentedClassLoader) {
5858

59-
InstrumentationModuleClassLoader loader =
60-
instrumentationClassLoaders.get(instrumentedClassLoader);
59+
ClassLoader moduleCl = module.getClass().getClassLoader();
60+
InstrumentationModuleClassLoader loader = null;
61+
if (!(moduleCl instanceof ExtensionClassLoader)) {
62+
loader = instrumentationClassLoaders.get(instrumentedClassLoader);
63+
} else {
64+
Map<ClassLoader, InstrumentationModuleClassLoader> map =
65+
extensionsInstrumentationClassLoaders.get(moduleCl);
66+
if (map != null) {
67+
loader = map.get(instrumentedClassLoader);
68+
}
69+
}
6170

6271
if (loader == null || !loader.hasModuleInstalled(module)) {
6372
throw new IllegalArgumentException(

0 commit comments

Comments
 (0)