diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/Instrumenter.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/Instrumenter.java index 294724a1e3..57a7d6a666 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/Instrumenter.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/Instrumenter.java @@ -135,9 +135,9 @@ public interface Instrumenter { if (null != muzzle) { final boolean isMatch = muzzle.matches(classLoader); if (!isMatch) { - final List mismatches = - muzzle.getMismatchedReferenceSources(classLoader); if (log.isDebugEnabled()) { + final List mismatches = + muzzle.getMismatchedReferenceSources(classLoader); log.debug( "Instrumentation muzzled: {} -- {} on {}", instrumentationNames, diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceMatcher.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceMatcher.java index 4997dc98d4..b86acfbc3e 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceMatcher.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceMatcher.java @@ -22,9 +22,8 @@ import net.bytebuddy.pool.TypePool; /** Matches a set of references against a classloader. */ @Slf4j -public class ReferenceMatcher - implements WeakMap.ValueSupplier> { - private final WeakMap> mismatchCache = newWeakMap(); +public class ReferenceMatcher implements WeakMap.ValueSupplier { + private final WeakMap mismatchCache = newWeakMap(); private final Reference[] references; private final Set helperClassNames; @@ -52,6 +51,11 @@ public class ReferenceMatcher loader = Utils.getBootstrapProxy(); } + return mismatchCache.computeIfAbsent(loader, this); + } + + @Override + public Boolean get(final ClassLoader loader) { final List mismatches = new ArrayList<>(0); for (final Reference reference : references) { @@ -65,7 +69,6 @@ public class ReferenceMatcher } } - mismatchCache.put(loader, mismatches); return mismatches.size() == 0; } @@ -80,11 +83,6 @@ public class ReferenceMatcher loader = Utils.getBootstrapProxy(); } - return mismatchCache.computeIfAbsent(loader, this); - } - - @Override - public List get(final ClassLoader loader) { final List mismatches = new ArrayList<>(0); for (final Reference reference : references) {