use of io.opentelemetry.javaagent.tooling.ignore.IgnoredTypesMatcher in project opentelemetry-java-instrumentation by open-telemetry.
the class AgentInstaller method configureIgnoredTypes.
private static AgentBuilder configureIgnoredTypes(Config config, AgentBuilder agentBuilder) {
IgnoredTypesBuilderImpl builder = new IgnoredTypesBuilderImpl();
for (IgnoredTypesConfigurer configurer : loadOrdered(IgnoredTypesConfigurer.class)) {
configurer.configure(config, builder);
}
Trie<Boolean> ignoredTasksTrie = builder.buildIgnoredTasksTrie();
InstrumentedTaskClasses.setIgnoredTaskClassesPredicate(ignoredTasksTrie::contains);
return agentBuilder.ignore(any(), new IgnoredClassLoadersMatcher(builder.buildIgnoredClassLoadersTrie())).or(new IgnoredTypesMatcher(builder.buildIgnoredTypesTrie())).or((typeDescription, classLoader, module, classBeingRedefined, protectionDomain) -> {
return HelperInjector.isInjectedClass(classLoader, typeDescription.getName());
});
}
Aggregations