Skip to content

Commit 00ae25b

Browse files
authored
Ignore janino classloader (#7710)
Fixes #7670 These obscure classloaders should be ignored completely, they process in-line class creation and should not branch out to interactions that are useful in distributed tracing. These two are responsible for outages recently in many of our applications due to driving up memory usage from WeakKey caching. In some cases, janino processing has ran wild and stimulated over 5.7mil WeakKey objects accounting for close to 200MB of heap.
1 parent 4ac78bb commit 00ae25b

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

Diff for: javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/ignore/GlobalIgnoredTypesConfigurer.java

+2
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,8 @@ private static void configureIgnoredClassLoaders(IgnoredTypesBuilder builder) {
119119
"org.springframework.context.support.ContextTypeMatchClassLoader$ContextOverridingClassLoader")
120120
.ignoreClassLoader("sun.misc.Launcher$ExtClassLoader")
121121
.ignoreClassLoader("org.openjdk.nashorn.internal.runtime.ScriptLoader")
122+
.ignoreClassLoader("org.codehaus.janino.ByteArrayClassLoader")
123+
.ignoreClassLoader("org.eclipse.persistence.internal.jaxb.JaxbClassLoader")
122124
.ignoreClassLoader(AgentClassLoader.class.getName())
123125
.ignoreClassLoader(ExtensionClassLoader.class.getName());
124126

0 commit comments

Comments
 (0)