From 435cec176291882713c994b4bae40647e191dd82 Mon Sep 17 00:00:00 2001 From: Mateusz Rzeszutek Date: Wed, 8 Dec 2021 15:59:31 +0100 Subject: [PATCH] Move `ServletContextPath` to `servlet-common:bootstrap` (#4824) * Move ServletContextPath to servlet-common:bootstrap * fix tests * Simplify ServletContextPath calls in restlet instrumentation --- .../otel.javaagent-bootstrap.gradle.kts | 4 ++++ .../grails-3.0/javaagent/build.gradle.kts | 2 ++ .../grails/GrailsServerSpanNaming.java | 2 +- .../jaxrs/v1_0/JaxrsServerSpanNaming.java | 2 +- .../jaxrs/v2_0/JaxrsServerSpanNaming.java | 2 +- .../jaxrs/v2_0/CxfSpanName.java | 2 +- .../jaxrs/v2_0/JerseySpanName.java | 2 +- .../jaxrs/v2_0/ResteasySpanName.java | 2 +- .../jaxrs-common/bootstrap/build.gradle.kts | 4 ++++ .../bootstrap/jaxrs/JaxrsContextPath.java | 2 +- .../javaagent/build.gradle.kts | 7 +++--- .../instrumentation/axis2/Axis2Helper.java | 4 ++-- .../instrumentation/axis2/Axis2Request.java | 2 +- .../axis2/Axis2ServerSpanNaming.java | 4 ++-- .../axis2/Axis2Singletons.java | 2 +- ...onListenerRegistryTypeInstrumentation.java | 1 - .../TracingInvocationListenerFactory.java | 2 +- .../library/build.gradle.kts | 7 ------ .../build.gradle.kts | 5 +++- .../cxf/TracingStartInInterceptorTest.java | 0 .../javaagent/build.gradle.kts | 4 +++- .../instrumentation/cxf/CxfHelper.java | 0 .../instrumentation/cxf/CxfRequest.java | 0 .../cxf/CxfServerSpanNaming.java | 2 +- .../instrumentation/cxf/CxfSingletons.java | 0 .../cxf/TracingEndInInterceptor.java | 0 .../cxf/TracingOutFaultInterceptor.java | 0 .../cxf/TracingStartInInterceptor.java | 0 .../javaagent/build.gradle.kts | 2 ++ .../metro/MetroServerSpanNaming.java | 2 +- .../{library => javaagent}/build.gradle.kts | 4 +++- .../jsf/JsfErrorCauseExtractor.java | 2 +- .../instrumentation/jsf/JsfRequest.java | 2 +- .../jsf/JsfServerSpanNaming.java | 4 ++-- .../javaagent/build.gradle.kts | 2 +- .../ActionListenerImplInstrumentation.java | 2 +- .../mojarra/MojarraSingletons.java | 4 ++-- .../RestoreViewPhaseInstrumentation.java | 2 +- .../javaagent/build.gradle.kts | 2 +- .../ActionListenerImplInstrumentation.java | 2 +- .../myfaces/MyFacesErrorCauseExtractor.java | 2 +- .../myfaces/MyFacesSingletons.java | 2 +- .../RestoreViewExecutorInstrumentation.java | 2 +- .../restlet-1.0/javaagent/build.gradle.kts | 1 + .../restlet/v1_0/RestletSingletons.java | 6 +++++ .../restlet/v1_0/RouteInstrumentation.java | 4 ++-- .../restlet/v1_0/ServerInstrumentation.java | 5 ++-- .../restlet/v1_0/TracingFilter.java | 4 +--- .../internal/RestletServerSpanNaming.java | 23 ------------------- .../restlet-2.0/javaagent/build.gradle.kts | 1 + .../restlet/v2_0/RestletSingletons.java | 6 +++++ .../restlet/v2_0/RouteInstrumentation.java | 4 ++-- .../restlet/v2_0/ServerInstrumentation.java | 5 ++-- .../restlet/v2_0/TracingFilter.java | 4 +--- .../internal/RestletServerSpanNaming.java | 23 ------------------- .../servlet-common/bootstrap/build.gradle.kts | 4 ++++ .../servlet/ServletContextPath.java | 2 +- .../servlet/ServletContextPathTest.java | 2 +- .../servlet/BaseServletHelper.java | 2 +- .../servlet/ServletSpanNameProvider.java | 2 +- .../javaagent/build.gradle.kts | 2 ++ .../server/HandlerAdapterInstrumentation.java | 2 +- .../webflux/server/RouteOnSuccessOrError.java | 2 +- .../javaagent/build.gradle.kts | 2 ++ .../SpringWebMvcServerSpanNaming.java | 2 +- .../struts-2.3/javaagent/build.gradle.kts | 2 ++ .../struts2/StrutsServerSpanNaming.java | 2 +- .../tapestry-5.4/javaagent/build.gradle.kts | 2 ++ .../tapestry/TapestryServerSpanNaming.java | 2 +- .../vaadin-14.2/javaagent/build.gradle.kts | 5 +++- .../instrumentation/vaadin/VaadinHelper.java | 2 +- .../wicket-8.0/javaagent/build.gradle.kts | 2 ++ .../wicket/WicketServerSpanNameing.java | 2 +- settings.gradle.kts | 5 ++-- 74 files changed, 111 insertions(+), 121 deletions(-) rename instrumentation/jaxws/jaxws-2.0-axis2-1.6/{library/src/main/java/io/opentelemetry => javaagent/src/main/java/io/opentelemetry/javaagent}/instrumentation/axis2/Axis2Helper.java (92%) rename instrumentation/jaxws/jaxws-2.0-axis2-1.6/{library/src/main/java/io/opentelemetry => javaagent/src/main/java/io/opentelemetry/javaagent}/instrumentation/axis2/Axis2Request.java (93%) rename instrumentation/jaxws/jaxws-2.0-axis2-1.6/{library/src/main/java/io/opentelemetry => javaagent/src/main/java/io/opentelemetry/javaagent}/instrumentation/axis2/Axis2ServerSpanNaming.java (88%) rename instrumentation/jaxws/jaxws-2.0-axis2-1.6/{library/src/main/java/io/opentelemetry => javaagent/src/main/java/io/opentelemetry/javaagent}/instrumentation/axis2/Axis2Singletons.java (93%) rename instrumentation/jaxws/jaxws-2.0-axis2-1.6/{library/src/main/java/io/opentelemetry => javaagent/src/main/java/io/opentelemetry/javaagent}/instrumentation/axis2/TracingInvocationListenerFactory.java (95%) delete mode 100644 instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/build.gradle.kts rename instrumentation/jaxws/jaxws-2.0-cxf-3.0/{library => javaagent-unit-tests}/build.gradle.kts (56%) rename instrumentation/jaxws/jaxws-2.0-cxf-3.0/{library => javaagent-unit-tests}/src/test/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingStartInInterceptorTest.java (100%) rename instrumentation/jaxws/jaxws-2.0-cxf-3.0/{library => javaagent}/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfHelper.java (100%) rename instrumentation/jaxws/jaxws-2.0-cxf-3.0/{library => javaagent}/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfRequest.java (100%) rename instrumentation/jaxws/jaxws-2.0-cxf-3.0/{library => javaagent}/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfServerSpanNaming.java (93%) rename instrumentation/jaxws/jaxws-2.0-cxf-3.0/{library => javaagent}/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfSingletons.java (100%) rename instrumentation/jaxws/jaxws-2.0-cxf-3.0/{library => javaagent}/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingEndInInterceptor.java (100%) rename instrumentation/jaxws/jaxws-2.0-cxf-3.0/{library => javaagent}/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingOutFaultInterceptor.java (100%) rename instrumentation/jaxws/jaxws-2.0-cxf-3.0/{library => javaagent}/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingStartInInterceptor.java (100%) rename instrumentation/jsf/jsf-common/{library => javaagent}/build.gradle.kts (53%) rename instrumentation/jsf/jsf-common/{library/src/main/java/io/opentelemetry => javaagent/src/main/java/io/opentelemetry/javaagent}/instrumentation/jsf/JsfErrorCauseExtractor.java (90%) rename instrumentation/jsf/jsf-common/{library/src/main/java/io/opentelemetry => javaagent/src/main/java/io/opentelemetry/javaagent}/instrumentation/jsf/JsfRequest.java (96%) rename instrumentation/jsf/jsf-common/{library/src/main/java/io/opentelemetry => javaagent/src/main/java/io/opentelemetry/javaagent}/instrumentation/jsf/JsfServerSpanNaming.java (87%) delete mode 100644 instrumentation/restlet/restlet-1.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v1_0/internal/RestletServerSpanNaming.java delete mode 100644 instrumentation/restlet/restlet-2.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v2_0/internal/RestletServerSpanNaming.java rename {instrumentation-api/src/main/java/io/opentelemetry/instrumentation/api => instrumentation/servlet/servlet-common/bootstrap/src/main/java/io/opentelemetry/javaagent/bootstrap}/servlet/ServletContextPath.java (97%) rename {instrumentation-api/src/test/java/io/opentelemetry/instrumentation/api => instrumentation/servlet/servlet-common/bootstrap/src/test/java/io/opentelemetry/javaagent/bootstrap}/servlet/ServletContextPathTest.java (97%) diff --git a/conventions/src/main/kotlin/otel.javaagent-bootstrap.gradle.kts b/conventions/src/main/kotlin/otel.javaagent-bootstrap.gradle.kts index 385efea7386c..22c7d1f1c7eb 100644 --- a/conventions/src/main/kotlin/otel.javaagent-bootstrap.gradle.kts +++ b/conventions/src/main/kotlin/otel.javaagent-bootstrap.gradle.kts @@ -12,4 +12,8 @@ dependencies { compileOnly("io.opentelemetry:opentelemetry-api") compileOnly(project(":instrumentation-api")) compileOnly(project(":javaagent-instrumentation-api")) + + testImplementation("io.opentelemetry:opentelemetry-api") + testImplementation(project(":instrumentation-api")) + testImplementation(project(":javaagent-instrumentation-api")) } diff --git a/instrumentation/grails-3.0/javaagent/build.gradle.kts b/instrumentation/grails-3.0/javaagent/build.gradle.kts index 6c62488a8b62..04df839d4770 100644 --- a/instrumentation/grails-3.0/javaagent/build.gradle.kts +++ b/instrumentation/grails-3.0/javaagent/build.gradle.kts @@ -32,6 +32,8 @@ val grailsVersion = "3.0.6" val springBootVersion = "1.2.5.RELEASE" dependencies { + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) + library("org.grails:grails-plugin-url-mappings:$grailsVersion") testInstrumentation(project(":instrumentation:servlet:servlet-3.0:javaagent")) diff --git a/instrumentation/grails-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/grails/GrailsServerSpanNaming.java b/instrumentation/grails-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/grails/GrailsServerSpanNaming.java index 2cf25755da12..20eacf59e437 100644 --- a/instrumentation/grails-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/grails/GrailsServerSpanNaming.java +++ b/instrumentation/grails-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/grails/GrailsServerSpanNaming.java @@ -6,7 +6,7 @@ package io.opentelemetry.javaagent.instrumentation.grails; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import org.grails.web.mapping.mvc.GrailsControllerUrlMappingInfo; public class GrailsServerSpanNaming { diff --git a/instrumentation/jaxrs/jaxrs-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v1_0/JaxrsServerSpanNaming.java b/instrumentation/jaxrs/jaxrs-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v1_0/JaxrsServerSpanNaming.java index 8c036010ff6c..53b75024e693 100644 --- a/instrumentation/jaxrs/jaxrs-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v1_0/JaxrsServerSpanNaming.java +++ b/instrumentation/jaxrs/jaxrs-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v1_0/JaxrsServerSpanNaming.java @@ -6,8 +6,8 @@ package io.opentelemetry.javaagent.instrumentation.jaxrs.v1_0; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; import io.opentelemetry.javaagent.bootstrap.jaxrs.JaxrsContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; public class JaxrsServerSpanNaming { diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/JaxrsServerSpanNaming.java b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/JaxrsServerSpanNaming.java index 642d3d106b87..b6a2f10dc79a 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/JaxrsServerSpanNaming.java +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/JaxrsServerSpanNaming.java @@ -6,8 +6,8 @@ package io.opentelemetry.javaagent.instrumentation.jaxrs.v2_0; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; import io.opentelemetry.javaagent.bootstrap.jaxrs.JaxrsContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; public class JaxrsServerSpanNaming { diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-cxf-3.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/CxfSpanName.java b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-cxf-3.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/CxfSpanName.java index 961f3f56c187..0c5d7671235a 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-cxf-3.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/CxfSpanName.java +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-cxf-3.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/CxfSpanName.java @@ -10,8 +10,8 @@ import io.opentelemetry.context.Context; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; import io.opentelemetry.javaagent.bootstrap.jaxrs.JaxrsContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import org.apache.cxf.jaxrs.model.ClassResourceInfo; import org.apache.cxf.jaxrs.model.OperationResourceInfo; import org.apache.cxf.jaxrs.model.URITemplate; diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-jersey-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/JerseySpanName.java b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-jersey-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/JerseySpanName.java index 1e4bfed62d47..cb358eec14d6 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-jersey-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/JerseySpanName.java +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-jersey-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/JerseySpanName.java @@ -10,8 +10,8 @@ import io.opentelemetry.context.Context; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; import io.opentelemetry.javaagent.bootstrap.jaxrs.JaxrsContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import javax.annotation.Nullable; import javax.ws.rs.core.Request; import javax.ws.rs.core.UriInfo; diff --git a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-resteasy-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/ResteasySpanName.java b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-resteasy-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/ResteasySpanName.java index 8248e92352b3..e09761c305d4 100644 --- a/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-resteasy-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/ResteasySpanName.java +++ b/instrumentation/jaxrs/jaxrs-2.0/jaxrs-2.0-resteasy-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jaxrs/v2_0/ResteasySpanName.java @@ -10,8 +10,8 @@ import io.opentelemetry.context.Context; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; import io.opentelemetry.javaagent.bootstrap.jaxrs.JaxrsContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import javax.annotation.Nullable; public final class ResteasySpanName implements ServerSpanNameSupplier { diff --git a/instrumentation/jaxrs/jaxrs-common/bootstrap/build.gradle.kts b/instrumentation/jaxrs/jaxrs-common/bootstrap/build.gradle.kts index 072a96df450f..145a5bda294e 100644 --- a/instrumentation/jaxrs/jaxrs-common/bootstrap/build.gradle.kts +++ b/instrumentation/jaxrs/jaxrs-common/bootstrap/build.gradle.kts @@ -1,3 +1,7 @@ plugins { id("otel.javaagent-bootstrap") } + +dependencies { + api(project(":instrumentation:servlet:servlet-common:bootstrap")) +} diff --git a/instrumentation/jaxrs/jaxrs-common/bootstrap/src/main/java/io/opentelemetry/javaagent/bootstrap/jaxrs/JaxrsContextPath.java b/instrumentation/jaxrs/jaxrs-common/bootstrap/src/main/java/io/opentelemetry/javaagent/bootstrap/jaxrs/JaxrsContextPath.java index fa8d76ba9436..4753c63b0010 100644 --- a/instrumentation/jaxrs/jaxrs-common/bootstrap/src/main/java/io/opentelemetry/javaagent/bootstrap/jaxrs/JaxrsContextPath.java +++ b/instrumentation/jaxrs/jaxrs-common/bootstrap/src/main/java/io/opentelemetry/javaagent/bootstrap/jaxrs/JaxrsContextPath.java @@ -13,7 +13,7 @@ * Helper container for storing context path for jax-rs requests. Jax-rs context path is the path * where jax-rs servlet is mapped or the value of ApplicationPath annotation. Span name is built by * combining servlet context path from {@code - * io.opentelemetry.instrumentation.api.servlet.ServletContextPath}, jax-rs context path and the + * io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath}, jax-rs context path and the * Path annotation from called method or class. */ public final class JaxrsContextPath { diff --git a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/build.gradle.kts b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/build.gradle.kts index 606c62ef2234..f3c15a989d2e 100644 --- a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/build.gradle.kts +++ b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/build.gradle.kts @@ -17,14 +17,15 @@ muzzle { } configurations.configureEach { - if (!name.contains("muzzle")) { - // axis has a dependency on servlet api, get rid of it + if (name.contains("test")) { + // axis has a dependency on servlet2 api, get rid of it - otherwise the servlet3 instrumentation + // will fail during tests exclude("javax.servlet", "servlet-api") } } dependencies { - implementation(project(":instrumentation:jaxws:jaxws-2.0-axis2-1.6:library")) + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) val axis2Version = "1.6.0" library("org.apache.axis2:axis2-jaxws:$axis2Version") diff --git a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2Helper.java b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2Helper.java similarity index 92% rename from instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2Helper.java rename to instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2Helper.java index 7f5ef6d6b2a0..0aa698dc2823 100644 --- a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2Helper.java +++ b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2Helper.java @@ -3,10 +3,10 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.instrumentation.axis2; +package io.opentelemetry.javaagent.instrumentation.axis2; import static io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming.Source.CONTROLLER; -import static io.opentelemetry.instrumentation.axis2.Axis2Singletons.instrumenter; +import static io.opentelemetry.javaagent.instrumentation.axis2.Axis2Singletons.instrumenter; import io.opentelemetry.context.Context; import io.opentelemetry.context.Scope; diff --git a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2Request.java b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2Request.java similarity index 93% rename from instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2Request.java rename to instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2Request.java index 624a8dcddb56..33008b9c4742 100644 --- a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2Request.java +++ b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2Request.java @@ -3,7 +3,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.instrumentation.axis2; +package io.opentelemetry.javaagent.instrumentation.axis2; import org.apache.axis2.jaxws.core.MessageContext; diff --git a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2ServerSpanNaming.java b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2ServerSpanNaming.java similarity index 88% rename from instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2ServerSpanNaming.java rename to instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2ServerSpanNaming.java index 5a6c9aa6140b..44ca6850f4a5 100644 --- a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2ServerSpanNaming.java +++ b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2ServerSpanNaming.java @@ -3,10 +3,10 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.instrumentation.axis2; +package io.opentelemetry.javaagent.instrumentation.axis2; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import javax.servlet.http.HttpServletRequest; import org.apache.axis2.jaxws.core.MessageContext; diff --git a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2Singletons.java b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2Singletons.java similarity index 93% rename from instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2Singletons.java rename to instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2Singletons.java index 928d77d05e95..3341260d3d71 100644 --- a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/Axis2Singletons.java +++ b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/Axis2Singletons.java @@ -3,7 +3,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.instrumentation.axis2; +package io.opentelemetry.javaagent.instrumentation.axis2; import io.opentelemetry.api.GlobalOpenTelemetry; import io.opentelemetry.instrumentation.api.config.ExperimentalConfig; diff --git a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/InvocationListenerRegistryTypeInstrumentation.java b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/InvocationListenerRegistryTypeInstrumentation.java index ad2dc2fe298f..ccd7f2b59ded 100644 --- a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/InvocationListenerRegistryTypeInstrumentation.java +++ b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/InvocationListenerRegistryTypeInstrumentation.java @@ -8,7 +8,6 @@ import static net.bytebuddy.matcher.ElementMatchers.isTypeInitializer; import static net.bytebuddy.matcher.ElementMatchers.named; -import io.opentelemetry.instrumentation.axis2.TracingInvocationListenerFactory; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; import net.bytebuddy.asm.Advice; diff --git a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/TracingInvocationListenerFactory.java b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/TracingInvocationListenerFactory.java similarity index 95% rename from instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/TracingInvocationListenerFactory.java rename to instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/TracingInvocationListenerFactory.java index 487d2626c03a..f0908411b6d3 100644 --- a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/src/main/java/io/opentelemetry/instrumentation/axis2/TracingInvocationListenerFactory.java +++ b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/axis2/TracingInvocationListenerFactory.java @@ -3,7 +3,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.instrumentation.axis2; +package io.opentelemetry.javaagent.instrumentation.axis2; import org.apache.axis2.jaxws.core.MessageContext; import org.apache.axis2.jaxws.server.InvocationListener; diff --git a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/build.gradle.kts b/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/build.gradle.kts deleted file mode 100644 index bcbf06485405..000000000000 --- a/instrumentation/jaxws/jaxws-2.0-axis2-1.6/library/build.gradle.kts +++ /dev/null @@ -1,7 +0,0 @@ -plugins { - id("otel.library-instrumentation") -} - -dependencies { - compileOnly("org.apache.axis2:axis2-jaxws:1.6.0") -} diff --git a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/build.gradle.kts b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent-unit-tests/build.gradle.kts similarity index 56% rename from instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/build.gradle.kts rename to instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent-unit-tests/build.gradle.kts index a2afcc59e406..d8fa5cc7c0cb 100644 --- a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/build.gradle.kts +++ b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent-unit-tests/build.gradle.kts @@ -1,10 +1,13 @@ plugins { - id("otel.library-instrumentation") + id("otel.java-conventions") } dependencies { compileOnly("javax.servlet:javax.servlet-api:3.0.1") compileOnly("org.apache.cxf:cxf-rt-frontend-jaxws:3.0.0") + implementation(project(":instrumentation:jaxws:jaxws-2.0-cxf-3.0:javaagent")) + + testImplementation(project(":instrumentation-api")) testImplementation("org.apache.cxf:cxf-rt-frontend-jaxws:3.0.0") } diff --git a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/test/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingStartInInterceptorTest.java b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent-unit-tests/src/test/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingStartInInterceptorTest.java similarity index 100% rename from instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/test/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingStartInInterceptorTest.java rename to instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent-unit-tests/src/test/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingStartInInterceptorTest.java diff --git a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/build.gradle.kts b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/build.gradle.kts index 93e91a4b04c4..2d6adb34089b 100644 --- a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/build.gradle.kts +++ b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/build.gradle.kts @@ -13,9 +13,11 @@ muzzle { } dependencies { - implementation(project(":instrumentation:jaxws:jaxws-2.0-cxf-3.0:library")) + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) library("org.apache.cxf:cxf-rt-frontend-jaxws:3.0.0") + compileOnly("javax.servlet:javax.servlet-api:3.0.1") + testLibrary("org.apache.cxf:cxf-rt-transports-http:3.0.0") testImplementation(project(":instrumentation:jaxws:jaxws-2.0-common-testing")) diff --git a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfHelper.java b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfHelper.java similarity index 100% rename from instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfHelper.java rename to instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfHelper.java diff --git a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfRequest.java b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfRequest.java similarity index 100% rename from instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfRequest.java rename to instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfRequest.java diff --git a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfServerSpanNaming.java b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfServerSpanNaming.java similarity index 93% rename from instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfServerSpanNaming.java rename to instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfServerSpanNaming.java index 003825c5fc6b..2e5cc20d81ca 100644 --- a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfServerSpanNaming.java +++ b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfServerSpanNaming.java @@ -6,7 +6,7 @@ package io.opentelemetry.javaagent.instrumentation.cxf; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import javax.servlet.http.HttpServletRequest; public class CxfServerSpanNaming { diff --git a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfSingletons.java b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfSingletons.java similarity index 100% rename from instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfSingletons.java rename to instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/CxfSingletons.java diff --git a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingEndInInterceptor.java b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingEndInInterceptor.java similarity index 100% rename from instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingEndInInterceptor.java rename to instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingEndInInterceptor.java diff --git a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingOutFaultInterceptor.java b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingOutFaultInterceptor.java similarity index 100% rename from instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingOutFaultInterceptor.java rename to instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingOutFaultInterceptor.java diff --git a/instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingStartInInterceptor.java b/instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingStartInInterceptor.java similarity index 100% rename from instrumentation/jaxws/jaxws-2.0-cxf-3.0/library/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingStartInInterceptor.java rename to instrumentation/jaxws/jaxws-2.0-cxf-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/cxf/TracingStartInInterceptor.java diff --git a/instrumentation/jaxws/jaxws-2.0-metro-2.2/javaagent/build.gradle.kts b/instrumentation/jaxws/jaxws-2.0-metro-2.2/javaagent/build.gradle.kts index 4b5b62271cc0..a7ff1496a571 100644 --- a/instrumentation/jaxws/jaxws-2.0-metro-2.2/javaagent/build.gradle.kts +++ b/instrumentation/jaxws/jaxws-2.0-metro-2.2/javaagent/build.gradle.kts @@ -15,6 +15,8 @@ muzzle { } dependencies { + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) + library("com.sun.xml.ws:jaxws-rt:2.2.0.1") compileOnly("javax.servlet:javax.servlet-api:3.0.1") diff --git a/instrumentation/jaxws/jaxws-2.0-metro-2.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/metro/MetroServerSpanNaming.java b/instrumentation/jaxws/jaxws-2.0-metro-2.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/metro/MetroServerSpanNaming.java index c92e35fd2721..6b625e64c844 100644 --- a/instrumentation/jaxws/jaxws-2.0-metro-2.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/metro/MetroServerSpanNaming.java +++ b/instrumentation/jaxws/jaxws-2.0-metro-2.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/metro/MetroServerSpanNaming.java @@ -7,7 +7,7 @@ import com.sun.xml.ws.api.message.Packet; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import javax.servlet.http.HttpServletRequest; import javax.xml.ws.handler.MessageContext; diff --git a/instrumentation/jsf/jsf-common/library/build.gradle.kts b/instrumentation/jsf/jsf-common/javaagent/build.gradle.kts similarity index 53% rename from instrumentation/jsf/jsf-common/library/build.gradle.kts rename to instrumentation/jsf/jsf-common/javaagent/build.gradle.kts index f05d96539b81..9e1b93858298 100644 --- a/instrumentation/jsf/jsf-common/library/build.gradle.kts +++ b/instrumentation/jsf/jsf-common/javaagent/build.gradle.kts @@ -1,8 +1,10 @@ plugins { - id("otel.library-instrumentation") + id("otel.javaagent-instrumentation") } dependencies { + compileOnly(project(":instrumentation:servlet:servlet-common:bootstrap")) + compileOnly("jakarta.faces:jakarta.faces-api:2.3.2") compileOnly("jakarta.el:jakarta.el-api:3.0.3") } diff --git a/instrumentation/jsf/jsf-common/library/src/main/java/io/opentelemetry/instrumentation/jsf/JsfErrorCauseExtractor.java b/instrumentation/jsf/jsf-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jsf/JsfErrorCauseExtractor.java similarity index 90% rename from instrumentation/jsf/jsf-common/library/src/main/java/io/opentelemetry/instrumentation/jsf/JsfErrorCauseExtractor.java rename to instrumentation/jsf/jsf-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jsf/JsfErrorCauseExtractor.java index ec900e5fdad4..cb6202278474 100644 --- a/instrumentation/jsf/jsf-common/library/src/main/java/io/opentelemetry/instrumentation/jsf/JsfErrorCauseExtractor.java +++ b/instrumentation/jsf/jsf-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jsf/JsfErrorCauseExtractor.java @@ -3,7 +3,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.instrumentation.jsf; +package io.opentelemetry.javaagent.instrumentation.jsf; import io.opentelemetry.instrumentation.api.instrumenter.ErrorCauseExtractor; import javax.faces.FacesException; diff --git a/instrumentation/jsf/jsf-common/library/src/main/java/io/opentelemetry/instrumentation/jsf/JsfRequest.java b/instrumentation/jsf/jsf-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jsf/JsfRequest.java similarity index 96% rename from instrumentation/jsf/jsf-common/library/src/main/java/io/opentelemetry/instrumentation/jsf/JsfRequest.java rename to instrumentation/jsf/jsf-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jsf/JsfRequest.java index 9559cf37dbe9..741444a1dac7 100644 --- a/instrumentation/jsf/jsf-common/library/src/main/java/io/opentelemetry/instrumentation/jsf/JsfRequest.java +++ b/instrumentation/jsf/jsf-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jsf/JsfRequest.java @@ -3,7 +3,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.instrumentation.jsf; +package io.opentelemetry.javaagent.instrumentation.jsf; import java.util.Objects; import javax.faces.component.ActionSource2; diff --git a/instrumentation/jsf/jsf-common/library/src/main/java/io/opentelemetry/instrumentation/jsf/JsfServerSpanNaming.java b/instrumentation/jsf/jsf-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jsf/JsfServerSpanNaming.java similarity index 87% rename from instrumentation/jsf/jsf-common/library/src/main/java/io/opentelemetry/instrumentation/jsf/JsfServerSpanNaming.java rename to instrumentation/jsf/jsf-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jsf/JsfServerSpanNaming.java index f47327a06e78..355465cc2734 100644 --- a/instrumentation/jsf/jsf-common/library/src/main/java/io/opentelemetry/instrumentation/jsf/JsfServerSpanNaming.java +++ b/instrumentation/jsf/jsf-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/jsf/JsfServerSpanNaming.java @@ -3,10 +3,10 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.instrumentation.jsf; +package io.opentelemetry.javaagent.instrumentation.jsf; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import javax.faces.component.UIViewRoot; import javax.faces.context.FacesContext; diff --git a/instrumentation/jsf/jsf-mojarra-1.2/javaagent/build.gradle.kts b/instrumentation/jsf/jsf-mojarra-1.2/javaagent/build.gradle.kts index 5326fffba2cc..215f158e099d 100644 --- a/instrumentation/jsf/jsf-mojarra-1.2/javaagent/build.gradle.kts +++ b/instrumentation/jsf/jsf-mojarra-1.2/javaagent/build.gradle.kts @@ -64,7 +64,7 @@ tasks { dependencies { compileOnly("javax.faces:jsf-api:1.2") - implementation(project(":instrumentation:jsf:jsf-common:library")) + implementation(project(":instrumentation:jsf:jsf-common:javaagent")) testImplementation(project(":instrumentation:jsf:jsf-common:testing")) testInstrumentation(project(":instrumentation:servlet:servlet-3.0:javaagent")) diff --git a/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/ActionListenerImplInstrumentation.java b/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/ActionListenerImplInstrumentation.java index 1139a0679808..bd20e0084f84 100644 --- a/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/ActionListenerImplInstrumentation.java +++ b/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/ActionListenerImplInstrumentation.java @@ -10,10 +10,10 @@ import io.opentelemetry.context.Context; import io.opentelemetry.context.Scope; -import io.opentelemetry.instrumentation.jsf.JsfRequest; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; import io.opentelemetry.javaagent.instrumentation.api.Java8BytecodeBridge; +import io.opentelemetry.javaagent.instrumentation.jsf.JsfRequest; import javax.faces.event.ActionEvent; import net.bytebuddy.asm.Advice; import net.bytebuddy.description.type.TypeDescription; diff --git a/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/MojarraSingletons.java b/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/MojarraSingletons.java index e338051b869b..b2b2ca43ca67 100644 --- a/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/MojarraSingletons.java +++ b/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/MojarraSingletons.java @@ -8,8 +8,8 @@ import io.opentelemetry.api.GlobalOpenTelemetry; import io.opentelemetry.instrumentation.api.config.ExperimentalConfig; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; -import io.opentelemetry.instrumentation.jsf.JsfErrorCauseExtractor; -import io.opentelemetry.instrumentation.jsf.JsfRequest; +import io.opentelemetry.javaagent.instrumentation.jsf.JsfErrorCauseExtractor; +import io.opentelemetry.javaagent.instrumentation.jsf.JsfRequest; public class MojarraSingletons { private static final String INSTRUMENTATION_NAME = "io.opentelemetry.mojarra-1.2"; diff --git a/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/RestoreViewPhaseInstrumentation.java b/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/RestoreViewPhaseInstrumentation.java index 79e1a7e97f7e..3a37f741f5fe 100644 --- a/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/RestoreViewPhaseInstrumentation.java +++ b/instrumentation/jsf/jsf-mojarra-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/mojarra/RestoreViewPhaseInstrumentation.java @@ -11,9 +11,9 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.jsf.JsfServerSpanNaming; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; +import io.opentelemetry.javaagent.instrumentation.jsf.JsfServerSpanNaming; import javax.faces.context.FacesContext; import net.bytebuddy.asm.Advice; import net.bytebuddy.description.type.TypeDescription; diff --git a/instrumentation/jsf/jsf-myfaces-1.2/javaagent/build.gradle.kts b/instrumentation/jsf/jsf-myfaces-1.2/javaagent/build.gradle.kts index cb037af6e122..291503966b05 100644 --- a/instrumentation/jsf/jsf-myfaces-1.2/javaagent/build.gradle.kts +++ b/instrumentation/jsf/jsf-myfaces-1.2/javaagent/build.gradle.kts @@ -33,7 +33,7 @@ dependencies { compileOnly("org.apache.myfaces.core:myfaces-api:1.2.12") compileOnly("javax.el:el-api:1.0") - implementation(project(":instrumentation:jsf:jsf-common:library")) + implementation(project(":instrumentation:jsf:jsf-common:javaagent")) testImplementation(project(":instrumentation:jsf:jsf-common:testing")) testInstrumentation(project(":instrumentation:servlet:servlet-3.0:javaagent")) diff --git a/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/ActionListenerImplInstrumentation.java b/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/ActionListenerImplInstrumentation.java index 214cdc508406..786c0ea0c7ea 100644 --- a/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/ActionListenerImplInstrumentation.java +++ b/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/ActionListenerImplInstrumentation.java @@ -10,10 +10,10 @@ import io.opentelemetry.context.Context; import io.opentelemetry.context.Scope; -import io.opentelemetry.instrumentation.jsf.JsfRequest; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; import io.opentelemetry.javaagent.instrumentation.api.Java8BytecodeBridge; +import io.opentelemetry.javaagent.instrumentation.jsf.JsfRequest; import javax.faces.event.ActionEvent; import net.bytebuddy.asm.Advice; import net.bytebuddy.description.type.TypeDescription; diff --git a/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/MyFacesErrorCauseExtractor.java b/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/MyFacesErrorCauseExtractor.java index c6283e6bd60a..59ce6f4479b4 100644 --- a/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/MyFacesErrorCauseExtractor.java +++ b/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/MyFacesErrorCauseExtractor.java @@ -5,7 +5,7 @@ package io.opentelemetry.javaagent.instrumentation.myfaces; -import io.opentelemetry.instrumentation.jsf.JsfErrorCauseExtractor; +import io.opentelemetry.javaagent.instrumentation.jsf.JsfErrorCauseExtractor; import javax.el.ELException; public class MyFacesErrorCauseExtractor extends JsfErrorCauseExtractor { diff --git a/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/MyFacesSingletons.java b/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/MyFacesSingletons.java index 4e2628be9577..8e76277d22ca 100644 --- a/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/MyFacesSingletons.java +++ b/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/MyFacesSingletons.java @@ -8,7 +8,7 @@ import io.opentelemetry.api.GlobalOpenTelemetry; import io.opentelemetry.instrumentation.api.config.ExperimentalConfig; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; -import io.opentelemetry.instrumentation.jsf.JsfRequest; +import io.opentelemetry.javaagent.instrumentation.jsf.JsfRequest; public class MyFacesSingletons { private static final String INSTRUMENTATION_NAME = "io.opentelemetry.myfaces-1.2"; diff --git a/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/RestoreViewExecutorInstrumentation.java b/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/RestoreViewExecutorInstrumentation.java index b408f805f62d..3c3dbee3698f 100644 --- a/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/RestoreViewExecutorInstrumentation.java +++ b/instrumentation/jsf/jsf-myfaces-1.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/myfaces/RestoreViewExecutorInstrumentation.java @@ -11,9 +11,9 @@ import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.jsf.JsfServerSpanNaming; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; +import io.opentelemetry.javaagent.instrumentation.jsf.JsfServerSpanNaming; import javax.faces.context.FacesContext; import net.bytebuddy.asm.Advice; import net.bytebuddy.description.type.TypeDescription; diff --git a/instrumentation/restlet/restlet-1.0/javaagent/build.gradle.kts b/instrumentation/restlet/restlet-1.0/javaagent/build.gradle.kts index 220d274d8a2b..8c303bd13db0 100644 --- a/instrumentation/restlet/restlet-1.0/javaagent/build.gradle.kts +++ b/instrumentation/restlet/restlet-1.0/javaagent/build.gradle.kts @@ -19,6 +19,7 @@ repositories { dependencies { api(project(":instrumentation:restlet:restlet-1.0:library")) + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) library("org.restlet:org.restlet:1.1.5") library("com.noelios.restlet:com.noelios.restlet:1.1.5") diff --git a/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/RestletSingletons.java b/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/RestletSingletons.java index c1f5c8bbfd43..39e6f70b26b5 100644 --- a/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/RestletSingletons.java +++ b/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/RestletSingletons.java @@ -7,7 +7,9 @@ import io.opentelemetry.api.GlobalOpenTelemetry; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; +import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; import io.opentelemetry.instrumentation.restlet.v1_0.RestletTracing; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import org.restlet.data.Request; import org.restlet.data.Response; @@ -20,5 +22,9 @@ public static Instrumenter instrumenter() { return INSTRUMENTER; } + public static ServerSpanNameSupplier serverSpanName() { + return ServletContextPath::prepend; + } + private RestletSingletons() {} } diff --git a/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/RouteInstrumentation.java b/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/RouteInstrumentation.java index 63a5cbeaf898..bf141fed9670 100644 --- a/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/RouteInstrumentation.java +++ b/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/RouteInstrumentation.java @@ -7,12 +7,12 @@ import static io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming.Source.CONTROLLER; import static io.opentelemetry.javaagent.instrumentation.api.Java8BytecodeBridge.currentContext; +import static io.opentelemetry.javaagent.instrumentation.restlet.v1_0.RestletSingletons.serverSpanName; import static net.bytebuddy.matcher.ElementMatchers.isMethod; import static net.bytebuddy.matcher.ElementMatchers.named; import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.restlet.v1_0.internal.RestletServerSpanNaming; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; import net.bytebuddy.asm.Advice; @@ -45,7 +45,7 @@ public static void getRouteInfo(@Advice.This Route route, @Advice.Argument(0) Re String pattern = route.getTemplate().getPattern(); ServerSpanNaming.updateServerSpanName( - currentContext(), CONTROLLER, RestletServerSpanNaming.SERVER_SPAN_NAME, pattern); + currentContext(), CONTROLLER, serverSpanName(), pattern); } } } diff --git a/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/ServerInstrumentation.java b/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/ServerInstrumentation.java index 67dce071bea5..bf9f50d1b484 100644 --- a/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/ServerInstrumentation.java +++ b/instrumentation/restlet/restlet-1.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v1_0/ServerInstrumentation.java @@ -8,6 +8,7 @@ import static io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming.Source.CONTROLLER; import static io.opentelemetry.javaagent.instrumentation.api.Java8BytecodeBridge.currentContext; import static io.opentelemetry.javaagent.instrumentation.restlet.v1_0.RestletSingletons.instrumenter; +import static io.opentelemetry.javaagent.instrumentation.restlet.v1_0.RestletSingletons.serverSpanName; import static net.bytebuddy.matcher.ElementMatchers.isMethod; import static net.bytebuddy.matcher.ElementMatchers.named; import static net.bytebuddy.matcher.ElementMatchers.takesArgument; @@ -15,7 +16,6 @@ import io.opentelemetry.context.Context; import io.opentelemetry.context.Scope; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.restlet.v1_0.internal.RestletServerSpanNaming; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; import net.bytebuddy.asm.Advice; @@ -76,8 +76,7 @@ public static void finishRequest( scope.close(); if (Status.CLIENT_ERROR_NOT_FOUND.equals(response.getStatus())) { - ServerSpanNaming.updateServerSpanName( - context, CONTROLLER, RestletServerSpanNaming.SERVER_SPAN_NAME, "/*"); + ServerSpanNaming.updateServerSpanName(context, CONTROLLER, serverSpanName(), "/*"); } if (exception != null) { diff --git a/instrumentation/restlet/restlet-1.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v1_0/TracingFilter.java b/instrumentation/restlet/restlet-1.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v1_0/TracingFilter.java index 72865eaa7600..476f4f334e15 100644 --- a/instrumentation/restlet/restlet-1.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v1_0/TracingFilter.java +++ b/instrumentation/restlet/restlet-1.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v1_0/TracingFilter.java @@ -11,7 +11,6 @@ import io.opentelemetry.context.Scope; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.restlet.v1_0.internal.RestletServerSpanNaming; import org.restlet.Filter; import org.restlet.data.Request; import org.restlet.data.Response; @@ -39,8 +38,7 @@ public int doHandle(Request request, Response response) { scope = context.makeCurrent(); } - ServerSpanNaming.updateServerSpanName( - context, CONTROLLER, RestletServerSpanNaming.SERVER_SPAN_NAME, path); + ServerSpanNaming.updateServerSpanName(context, CONTROLLER, (ctx, s) -> s, path); Throwable statusThrowable = null; try { diff --git a/instrumentation/restlet/restlet-1.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v1_0/internal/RestletServerSpanNaming.java b/instrumentation/restlet/restlet-1.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v1_0/internal/RestletServerSpanNaming.java deleted file mode 100644 index 8db5ed94710b..000000000000 --- a/instrumentation/restlet/restlet-1.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v1_0/internal/RestletServerSpanNaming.java +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright The OpenTelemetry Authors - * SPDX-License-Identifier: Apache-2.0 - */ - -package io.opentelemetry.instrumentation.restlet.v1_0.internal; - -import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; - -public final class RestletServerSpanNaming { - - public static final ServerSpanNameSupplier SERVER_SPAN_NAME = - (context, pattern) -> { - if (pattern == null || pattern.equals("")) { - return null; - } - - return ServletContextPath.prepend(context, pattern); - }; - - private RestletServerSpanNaming() {} -} diff --git a/instrumentation/restlet/restlet-2.0/javaagent/build.gradle.kts b/instrumentation/restlet/restlet-2.0/javaagent/build.gradle.kts index fede6dbabafd..410d3b8a4042 100644 --- a/instrumentation/restlet/restlet-2.0/javaagent/build.gradle.kts +++ b/instrumentation/restlet/restlet-2.0/javaagent/build.gradle.kts @@ -19,6 +19,7 @@ repositories { dependencies { api(project(":instrumentation:restlet:restlet-2.0:library")) + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) library("org.restlet.jse:org.restlet:2.0.2") diff --git a/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/RestletSingletons.java b/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/RestletSingletons.java index 2ab53a864832..29e780f91e9e 100644 --- a/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/RestletSingletons.java +++ b/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/RestletSingletons.java @@ -7,7 +7,9 @@ import io.opentelemetry.api.GlobalOpenTelemetry; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; +import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; import io.opentelemetry.instrumentation.restlet.v2_0.internal.RestletInstrumenterFactory; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import org.restlet.Request; import org.restlet.Response; @@ -20,5 +22,9 @@ public static Instrumenter instrumenter() { return INSTRUMENTER; } + public static ServerSpanNameSupplier serverSpanName() { + return ServletContextPath::prepend; + } + private RestletSingletons() {} } diff --git a/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/RouteInstrumentation.java b/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/RouteInstrumentation.java index 462828665441..cfbac45c6a34 100644 --- a/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/RouteInstrumentation.java +++ b/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/RouteInstrumentation.java @@ -7,12 +7,12 @@ import static io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming.Source.CONTROLLER; import static io.opentelemetry.javaagent.instrumentation.api.Java8BytecodeBridge.currentContext; +import static io.opentelemetry.javaagent.instrumentation.restlet.v2_0.RestletSingletons.serverSpanName; import static net.bytebuddy.matcher.ElementMatchers.isMethod; import static net.bytebuddy.matcher.ElementMatchers.named; import static net.bytebuddy.matcher.ElementMatchers.takesArgument; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.restlet.v2_0.internal.RestletServerSpanNaming; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; import net.bytebuddy.asm.Advice; @@ -46,7 +46,7 @@ public static void getRouteInfo( String pattern = route.getTemplate().getPattern(); ServerSpanNaming.updateServerSpanName( - currentContext(), CONTROLLER, RestletServerSpanNaming.SERVER_SPAN_NAME, pattern); + currentContext(), CONTROLLER, serverSpanName(), pattern); } } } diff --git a/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/ServerInstrumentation.java b/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/ServerInstrumentation.java index fbe37ef23819..a008bb6de408 100644 --- a/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/ServerInstrumentation.java +++ b/instrumentation/restlet/restlet-2.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/restlet/v2_0/ServerInstrumentation.java @@ -8,6 +8,7 @@ import static io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming.Source.CONTROLLER; import static io.opentelemetry.javaagent.instrumentation.api.Java8BytecodeBridge.currentContext; import static io.opentelemetry.javaagent.instrumentation.restlet.v2_0.RestletSingletons.instrumenter; +import static io.opentelemetry.javaagent.instrumentation.restlet.v2_0.RestletSingletons.serverSpanName; import static net.bytebuddy.matcher.ElementMatchers.isMethod; import static net.bytebuddy.matcher.ElementMatchers.named; import static net.bytebuddy.matcher.ElementMatchers.takesArgument; @@ -15,7 +16,6 @@ import io.opentelemetry.context.Context; import io.opentelemetry.context.Scope; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.restlet.v2_0.internal.RestletServerSpanNaming; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; import net.bytebuddy.asm.Advice; @@ -76,8 +76,7 @@ public static void finishRequest( scope.close(); if (Status.CLIENT_ERROR_NOT_FOUND.equals(response.getStatus())) { - ServerSpanNaming.updateServerSpanName( - context, CONTROLLER, RestletServerSpanNaming.SERVER_SPAN_NAME, "/*"); + ServerSpanNaming.updateServerSpanName(context, CONTROLLER, serverSpanName(), "/*"); } if (exception != null) { diff --git a/instrumentation/restlet/restlet-2.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v2_0/TracingFilter.java b/instrumentation/restlet/restlet-2.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v2_0/TracingFilter.java index 0b2eb0ae01ef..1bae8ebaf643 100644 --- a/instrumentation/restlet/restlet-2.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v2_0/TracingFilter.java +++ b/instrumentation/restlet/restlet-2.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v2_0/TracingFilter.java @@ -11,7 +11,6 @@ import io.opentelemetry.context.Scope; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.restlet.v2_0.internal.RestletServerSpanNaming; import org.restlet.Request; import org.restlet.Response; import org.restlet.resource.ResourceException; @@ -40,8 +39,7 @@ public int doHandle(Request request, Response response) { scope = context.makeCurrent(); } - ServerSpanNaming.updateServerSpanName( - context, CONTROLLER, RestletServerSpanNaming.SERVER_SPAN_NAME, path); + ServerSpanNaming.updateServerSpanName(context, CONTROLLER, (ctx, s) -> s, path); Throwable statusThrowable = null; try { diff --git a/instrumentation/restlet/restlet-2.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v2_0/internal/RestletServerSpanNaming.java b/instrumentation/restlet/restlet-2.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v2_0/internal/RestletServerSpanNaming.java deleted file mode 100644 index 87dcc9a2e78a..000000000000 --- a/instrumentation/restlet/restlet-2.0/library/src/main/java/io/opentelemetry/instrumentation/restlet/v2_0/internal/RestletServerSpanNaming.java +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright The OpenTelemetry Authors - * SPDX-License-Identifier: Apache-2.0 - */ - -package io.opentelemetry.instrumentation.restlet.v2_0.internal; - -import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; - -public final class RestletServerSpanNaming { - - public static final ServerSpanNameSupplier SERVER_SPAN_NAME = - (context, pattern) -> { - if (pattern == null || pattern.equals("")) { - return null; - } - - return ServletContextPath.prepend(context, pattern); - }; - - private RestletServerSpanNaming() {} -} diff --git a/instrumentation/servlet/servlet-common/bootstrap/build.gradle.kts b/instrumentation/servlet/servlet-common/bootstrap/build.gradle.kts index 072a96df450f..cdd0b690f82a 100644 --- a/instrumentation/servlet/servlet-common/bootstrap/build.gradle.kts +++ b/instrumentation/servlet/servlet-common/bootstrap/build.gradle.kts @@ -1,3 +1,7 @@ plugins { id("otel.javaagent-bootstrap") } + +dependencies { + testImplementation("org.assertj:assertj-core") +} diff --git a/instrumentation-api/src/main/java/io/opentelemetry/instrumentation/api/servlet/ServletContextPath.java b/instrumentation/servlet/servlet-common/bootstrap/src/main/java/io/opentelemetry/javaagent/bootstrap/servlet/ServletContextPath.java similarity index 97% rename from instrumentation-api/src/main/java/io/opentelemetry/instrumentation/api/servlet/ServletContextPath.java rename to instrumentation/servlet/servlet-common/bootstrap/src/main/java/io/opentelemetry/javaagent/bootstrap/servlet/ServletContextPath.java index 749db0328442..d7c19bf3f332 100644 --- a/instrumentation-api/src/main/java/io/opentelemetry/instrumentation/api/servlet/ServletContextPath.java +++ b/instrumentation/servlet/servlet-common/bootstrap/src/main/java/io/opentelemetry/javaagent/bootstrap/servlet/ServletContextPath.java @@ -3,7 +3,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.instrumentation.api.servlet; +package io.opentelemetry.javaagent.bootstrap.servlet; import io.opentelemetry.context.Context; import io.opentelemetry.context.ContextKey; diff --git a/instrumentation-api/src/test/java/io/opentelemetry/instrumentation/api/servlet/ServletContextPathTest.java b/instrumentation/servlet/servlet-common/bootstrap/src/test/java/io/opentelemetry/javaagent/bootstrap/servlet/ServletContextPathTest.java similarity index 97% rename from instrumentation-api/src/test/java/io/opentelemetry/instrumentation/api/servlet/ServletContextPathTest.java rename to instrumentation/servlet/servlet-common/bootstrap/src/test/java/io/opentelemetry/javaagent/bootstrap/servlet/ServletContextPathTest.java index 01641c4e57c9..7d29af15168a 100644 --- a/instrumentation-api/src/test/java/io/opentelemetry/instrumentation/api/servlet/ServletContextPathTest.java +++ b/instrumentation/servlet/servlet-common/bootstrap/src/test/java/io/opentelemetry/javaagent/bootstrap/servlet/ServletContextPathTest.java @@ -3,7 +3,7 @@ * SPDX-License-Identifier: Apache-2.0 */ -package io.opentelemetry.instrumentation.api.servlet; +package io.opentelemetry.javaagent.bootstrap.servlet; import static org.assertj.core.api.Assertions.assertThat; diff --git a/instrumentation/servlet/servlet-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/BaseServletHelper.java b/instrumentation/servlet/servlet-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/BaseServletHelper.java index 0c3e4c151478..a90445ad976d 100644 --- a/instrumentation/servlet/servlet-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/BaseServletHelper.java +++ b/instrumentation/servlet/servlet-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/BaseServletHelper.java @@ -13,10 +13,10 @@ import io.opentelemetry.context.Context; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; import io.opentelemetry.instrumentation.api.tracer.ServerSpan; import io.opentelemetry.javaagent.bootstrap.servlet.AppServerBridge; import io.opentelemetry.javaagent.bootstrap.servlet.MappingResolver; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import java.util.function.Function; public abstract class BaseServletHelper { diff --git a/instrumentation/servlet/servlet-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/ServletSpanNameProvider.java b/instrumentation/servlet/servlet-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/ServletSpanNameProvider.java index 05d1eca6ca10..d7d551b3b776 100644 --- a/instrumentation/servlet/servlet-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/ServletSpanNameProvider.java +++ b/instrumentation/servlet/servlet-common/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/ServletSpanNameProvider.java @@ -7,8 +7,8 @@ import io.opentelemetry.context.Context; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameTwoArgSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; import io.opentelemetry.javaagent.bootstrap.servlet.MappingResolver; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import javax.annotation.Nullable; /** Helper class for constructing span name for given servlet/filter mapping and request. */ diff --git a/instrumentation/spring/spring-webflux-5.0/javaagent/build.gradle.kts b/instrumentation/spring/spring-webflux-5.0/javaagent/build.gradle.kts index 5b29c59cd781..6a3e1098d2f5 100644 --- a/instrumentation/spring/spring-webflux-5.0/javaagent/build.gradle.kts +++ b/instrumentation/spring/spring-webflux-5.0/javaagent/build.gradle.kts @@ -40,6 +40,8 @@ muzzle { dependencies { implementation(project(":instrumentation:spring:spring-webflux-5.0:library")) + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) + compileOnly("org.springframework:spring-webflux:5.0.0.RELEASE") compileOnly("io.projectreactor.ipc:reactor-netty:0.7.0.RELEASE") diff --git a/instrumentation/spring/spring-webflux-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/spring/webflux/server/HandlerAdapterInstrumentation.java b/instrumentation/spring/spring-webflux-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/spring/webflux/server/HandlerAdapterInstrumentation.java index 1715ae8d23ea..6c2b5f5a92e6 100644 --- a/instrumentation/spring/spring-webflux-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/spring/webflux/server/HandlerAdapterInstrumentation.java +++ b/instrumentation/spring/spring-webflux-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/spring/webflux/server/HandlerAdapterInstrumentation.java @@ -19,8 +19,8 @@ import io.opentelemetry.api.trace.Span; import io.opentelemetry.context.Context; import io.opentelemetry.context.Scope; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; import io.opentelemetry.instrumentation.api.tracer.ServerSpan; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import io.opentelemetry.javaagent.extension.instrumentation.TypeInstrumentation; import io.opentelemetry.javaagent.extension.instrumentation.TypeTransformer; import net.bytebuddy.asm.Advice; diff --git a/instrumentation/spring/spring-webflux-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/spring/webflux/server/RouteOnSuccessOrError.java b/instrumentation/spring/spring-webflux-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/spring/webflux/server/RouteOnSuccessOrError.java index 676d145a116c..19191c07b7df 100644 --- a/instrumentation/spring/spring-webflux-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/spring/webflux/server/RouteOnSuccessOrError.java +++ b/instrumentation/spring/spring-webflux-5.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/spring/webflux/server/RouteOnSuccessOrError.java @@ -7,8 +7,8 @@ import io.opentelemetry.api.trace.Span; import io.opentelemetry.context.Context; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; import io.opentelemetry.instrumentation.api.tracer.ServerSpan; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import java.util.function.BiConsumer; import java.util.regex.Pattern; import org.springframework.web.reactive.function.server.HandlerFunction; diff --git a/instrumentation/spring/spring-webmvc-3.1/javaagent/build.gradle.kts b/instrumentation/spring/spring-webmvc-3.1/javaagent/build.gradle.kts index a66d452187e0..fa5da8baee8d 100644 --- a/instrumentation/spring/spring-webmvc-3.1/javaagent/build.gradle.kts +++ b/instrumentation/spring/spring-webmvc-3.1/javaagent/build.gradle.kts @@ -20,6 +20,8 @@ muzzle { val versions: Map by project dependencies { + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) + compileOnly("org.springframework:spring-webmvc:3.1.0.RELEASE") compileOnly("javax.servlet:javax.servlet-api:3.1.0") // compileOnly("org.springframework:spring-webmvc:2.5.6") diff --git a/instrumentation/spring/spring-webmvc-3.1/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/springwebmvc/SpringWebMvcServerSpanNaming.java b/instrumentation/spring/spring-webmvc-3.1/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/springwebmvc/SpringWebMvcServerSpanNaming.java index b9c0c068505d..55249898467d 100644 --- a/instrumentation/spring/spring-webmvc-3.1/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/springwebmvc/SpringWebMvcServerSpanNaming.java +++ b/instrumentation/spring/spring-webmvc-3.1/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/springwebmvc/SpringWebMvcServerSpanNaming.java @@ -6,7 +6,7 @@ package io.opentelemetry.javaagent.instrumentation.springwebmvc; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import javax.servlet.http.HttpServletRequest; import org.springframework.web.servlet.HandlerMapping; diff --git a/instrumentation/struts-2.3/javaagent/build.gradle.kts b/instrumentation/struts-2.3/javaagent/build.gradle.kts index 66d07ae085a0..b494be9eb661 100644 --- a/instrumentation/struts-2.3/javaagent/build.gradle.kts +++ b/instrumentation/struts-2.3/javaagent/build.gradle.kts @@ -11,6 +11,8 @@ muzzle { } dependencies { + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) + library("org.apache.struts:struts2-core:2.3.1") // There was no 2.4 version at all. diff --git a/instrumentation/struts-2.3/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/struts2/StrutsServerSpanNaming.java b/instrumentation/struts-2.3/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/struts2/StrutsServerSpanNaming.java index 817b44c03034..3d8e23e2bd53 100644 --- a/instrumentation/struts-2.3/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/struts2/StrutsServerSpanNaming.java +++ b/instrumentation/struts-2.3/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/struts2/StrutsServerSpanNaming.java @@ -7,7 +7,7 @@ import com.opensymphony.xwork2.ActionProxy; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; public class StrutsServerSpanNaming { diff --git a/instrumentation/tapestry-5.4/javaagent/build.gradle.kts b/instrumentation/tapestry-5.4/javaagent/build.gradle.kts index baf341898a4e..0c1f126d4674 100644 --- a/instrumentation/tapestry-5.4/javaagent/build.gradle.kts +++ b/instrumentation/tapestry-5.4/javaagent/build.gradle.kts @@ -16,6 +16,8 @@ otelJava { } dependencies { + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) + library("org.apache.tapestry:tapestry-core:5.4.0") testImplementation("org.eclipse.jetty:jetty-webapp:8.0.0.v20110901") diff --git a/instrumentation/tapestry-5.4/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/tapestry/TapestryServerSpanNaming.java b/instrumentation/tapestry-5.4/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/tapestry/TapestryServerSpanNaming.java index 828ba7f3f80b..9824501a6418 100644 --- a/instrumentation/tapestry-5.4/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/tapestry/TapestryServerSpanNaming.java +++ b/instrumentation/tapestry-5.4/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/tapestry/TapestryServerSpanNaming.java @@ -6,7 +6,7 @@ package io.opentelemetry.javaagent.instrumentation.tapestry; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; public class TapestryServerSpanNaming { diff --git a/instrumentation/vaadin-14.2/javaagent/build.gradle.kts b/instrumentation/vaadin-14.2/javaagent/build.gradle.kts index 844aa880424a..7b6f716521df 100644 --- a/instrumentation/vaadin-14.2/javaagent/build.gradle.kts +++ b/instrumentation/vaadin-14.2/javaagent/build.gradle.kts @@ -51,10 +51,13 @@ tasks { } dependencies { - compileOnly("com.vaadin:flow-server:2.2.0") compileOnly("com.google.auto.value:auto-value-annotations") annotationProcessor("com.google.auto.value:auto-value") + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) + + compileOnly("com.vaadin:flow-server:2.2.0") + add("vaadin16TestImplementation", "com.vaadin:vaadin-spring-boot-starter:16.0.0") add("vaadin142TestImplementation", "com.vaadin:vaadin-spring-boot-starter:14.2.0") diff --git a/instrumentation/vaadin-14.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/vaadin/VaadinHelper.java b/instrumentation/vaadin-14.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/vaadin/VaadinHelper.java index d29841973af2..afb905474373 100644 --- a/instrumentation/vaadin-14.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/vaadin/VaadinHelper.java +++ b/instrumentation/vaadin-14.2/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/vaadin/VaadinHelper.java @@ -13,7 +13,7 @@ import io.opentelemetry.context.Context; import io.opentelemetry.instrumentation.api.instrumenter.Instrumenter; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNaming; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import javax.annotation.Nullable; public class VaadinHelper { diff --git a/instrumentation/wicket-8.0/javaagent/build.gradle.kts b/instrumentation/wicket-8.0/javaagent/build.gradle.kts index bc257220eabf..a87ef285f780 100644 --- a/instrumentation/wicket-8.0/javaagent/build.gradle.kts +++ b/instrumentation/wicket-8.0/javaagent/build.gradle.kts @@ -12,6 +12,8 @@ muzzle { } dependencies { + bootstrap(project(":instrumentation:servlet:servlet-common:bootstrap")) + library("org.apache.wicket:wicket:8.0.0") testImplementation(project(":testing-common")) diff --git a/instrumentation/wicket-8.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/wicket/WicketServerSpanNameing.java b/instrumentation/wicket-8.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/wicket/WicketServerSpanNameing.java index b018b7f53e1e..0d9914d41d90 100644 --- a/instrumentation/wicket-8.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/wicket/WicketServerSpanNameing.java +++ b/instrumentation/wicket-8.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/wicket/WicketServerSpanNameing.java @@ -6,7 +6,7 @@ package io.opentelemetry.javaagent.instrumentation.wicket; import io.opentelemetry.instrumentation.api.servlet.ServerSpanNameSupplier; -import io.opentelemetry.instrumentation.api.servlet.ServletContextPath; +import io.opentelemetry.javaagent.bootstrap.servlet.ServletContextPath; import org.apache.wicket.core.request.handler.IPageClassRequestHandler; import org.apache.wicket.request.cycle.RequestCycle; diff --git a/settings.gradle.kts b/settings.gradle.kts index 8ed9f2584301..9d5039257b74 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -218,9 +218,8 @@ include(":instrumentation:jaxrs-client:jaxrs-client-2.0:jaxrs-client-2.0-resteas include(":instrumentation:jaxws:jaxws-2.0:javaagent") include(":instrumentation:jaxws:jaxws-2.0-arquillian-testing") include(":instrumentation:jaxws:jaxws-2.0-axis2-1.6:javaagent") -include(":instrumentation:jaxws:jaxws-2.0-axis2-1.6:library") include(":instrumentation:jaxws:jaxws-2.0-cxf-3.0:javaagent") -include(":instrumentation:jaxws:jaxws-2.0-cxf-3.0:library") +include(":instrumentation:jaxws:jaxws-2.0-cxf-3.0:javaagent-unit-tests") include(":instrumentation:jaxws:jaxws-2.0-metro-2.2:javaagent") include(":instrumentation:jaxws:jaxws-2.0-common-testing") include(":instrumentation:jaxws:jaxws-2.0-tomee-testing") @@ -241,7 +240,7 @@ include(":instrumentation:jetty-httpclient:jetty-httpclient-9.2:library") include(":instrumentation:jetty-httpclient:jetty-httpclient-9.2:testing") include(":instrumentation:jms-1.1:javaagent") include(":instrumentation:jms-1.1:javaagent-unit-tests") -include(":instrumentation:jsf:jsf-common:library") +include(":instrumentation:jsf:jsf-common:javaagent") include(":instrumentation:jsf:jsf-common:testing") include(":instrumentation:jsf:jsf-mojarra-1.2:javaagent") include(":instrumentation:jsf:jsf-myfaces-1.2:javaagent")