diff --git a/agent/src/main/java/com/intergral/deep/agent/tracepoint/inst/InstUtils.java b/agent/src/main/java/com/intergral/deep/agent/tracepoint/inst/InstUtils.java index ea1f551..e417e98 100644 --- a/agent/src/main/java/com/intergral/deep/agent/tracepoint/inst/InstUtils.java +++ b/agent/src/main/java/com/intergral/deep/agent/tracepoint/inst/InstUtils.java @@ -99,7 +99,8 @@ public static String internalClass(final Class clazz) { /** * Get the short version of the class name. *

- * Sometimes {@link Class#getSimpleName()} doesn't return a name. So we need one that always returns a name. + * Sometimes {@link Class#getSimpleName()} doesn't return a name. So we need one that always returns a name. Also, it + * seems to cause class loading sometimes. * * @param className the class name * @return the name of the class without the package diff --git a/agent/src/main/java/com/intergral/deep/agent/tracepoint/inst/SetClassScanner.java b/agent/src/main/java/com/intergral/deep/agent/tracepoint/inst/SetClassScanner.java index 066d070..13aa4cf 100644 --- a/agent/src/main/java/com/intergral/deep/agent/tracepoint/inst/SetClassScanner.java +++ b/agent/src/main/java/com/intergral/deep/agent/tracepoint/inst/SetClassScanner.java @@ -36,7 +36,7 @@ public SetClassScanner(final Set classNames) { @Override public boolean scanClass(final Class allLoadedClass) { return this.classNames.contains(InstUtils.internalClass(allLoadedClass)) - || this.classNames.contains(allLoadedClass.getSimpleName()) + || this.classNames.contains(InstUtils.shortClassName(allLoadedClass.getName())) || allLoadedClass.getName().contains("$") && this.classNames.contains(InstUtils.internalClassStripInner(allLoadedClass)); }