Add classLoaderMatcher() for Spring WebMVC instrumentations (#8463)
This commit is contained in:
parent
e67cd9a990
commit
d4c5164809
|
@ -5,19 +5,27 @@
|
||||||
|
|
||||||
package io.opentelemetry.javaagent.instrumentation.spring.webmvc.v3_1;
|
package io.opentelemetry.javaagent.instrumentation.spring.webmvc.v3_1;
|
||||||
|
|
||||||
|
import static io.opentelemetry.javaagent.extension.matcher.AgentElementMatchers.hasClassesNamed;
|
||||||
import static java.util.Arrays.asList;
|
import static java.util.Arrays.asList;
|
||||||
|
|
||||||
import com.google.auto.service.AutoService;
|
import com.google.auto.service.AutoService;
|
||||||
import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule;
|
import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule;
|
||||||
import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation;
|
import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import net.bytebuddy.matcher.ElementMatcher;
|
||||||
|
|
||||||
@AutoService(InstrumentationModule.class)
|
@AutoService(InstrumentationModule.class)
|
||||||
public class SpringWebMvcInstrumentationModule extends InstrumentationModule {
|
public class SpringWebMvcInstrumentationModule extends InstrumentationModule {
|
||||||
|
|
||||||
public SpringWebMvcInstrumentationModule() {
|
public SpringWebMvcInstrumentationModule() {
|
||||||
super("spring-webmvc", "spring-webmvc-3.1");
|
super("spring-webmvc", "spring-webmvc-3.1");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ElementMatcher.Junction<ClassLoader> classLoaderMatcher() {
|
||||||
|
return hasClassesNamed("javax.servlet.Filter");
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isHelperClass(String className) {
|
public boolean isHelperClass(String className) {
|
||||||
return className.startsWith(
|
return className.startsWith(
|
||||||
|
|
|
@ -5,19 +5,27 @@
|
||||||
|
|
||||||
package io.opentelemetry.javaagent.instrumentation.spring.webmvc.v6_0;
|
package io.opentelemetry.javaagent.instrumentation.spring.webmvc.v6_0;
|
||||||
|
|
||||||
|
import static io.opentelemetry.javaagent.extension.matcher.AgentElementMatchers.hasClassesNamed;
|
||||||
import static java.util.Arrays.asList;
|
import static java.util.Arrays.asList;
|
||||||
|
|
||||||
import com.google.auto.service.AutoService;
|
import com.google.auto.service.AutoService;
|
||||||
import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule;
|
import io.opentelemetry.javaagent.extension.instrumentation.InstrumentationModule;
|
||||||
import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation;
|
import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import net.bytebuddy.matcher.ElementMatcher;
|
||||||
|
|
||||||
@AutoService(InstrumentationModule.class)
|
@AutoService(InstrumentationModule.class)
|
||||||
public class SpringWebMvcInstrumentationModule extends InstrumentationModule {
|
public class SpringWebMvcInstrumentationModule extends InstrumentationModule {
|
||||||
|
|
||||||
public SpringWebMvcInstrumentationModule() {
|
public SpringWebMvcInstrumentationModule() {
|
||||||
super("spring-webmvc", "spring-webmvc-6.0");
|
super("spring-webmvc", "spring-webmvc-6.0");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ElementMatcher.Junction<ClassLoader> classLoaderMatcher() {
|
||||||
|
return hasClassesNamed("jakarta.servlet.Filter");
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isHelperClass(String className) {
|
public boolean isHelperClass(String className) {
|
||||||
return className.startsWith(
|
return className.startsWith(
|
||||||
|
|
Loading…
Reference in New Issue