From 635e012aff786da58ed250f7b6032baa3a69d4dc Mon Sep 17 00:00:00 2001 From: Pavol Loffay Date: Tue, 9 Mar 2021 18:21:01 +0100 Subject: [PATCH] Bump to OTEL 1.0.0 (#284) * Bump to OTEL 1.0.0 Signed-off-by: Pavol Loffay * Fix Signed-off-by: Pavol Loffay * Fix smoke Signed-off-by: Pavol Loffay * Revert Signed-off-by: Pavol Loffay --- build.gradle.kts | 10 +++++----- .../Servlet31NoWrappingInstrumentationModule.java | 8 -------- .../Servlet30NoWrappingInstrumentationTest.java | 1 + .../v3_0/nowrapping => org}/WrappingFilter.java | 6 +----- otel-extensions/build.gradle.kts | 1 + smoke-tests/build.gradle.kts | 3 ++- .../agent/smoketest/AppServerTest.groovy | 14 +++++++++++++- .../agent/smoketest/GlassFishSmokeTest.groovy | 8 ++++++-- .../agent/smoketest/JettySmokeTest.groovy | 14 -------------- .../agent/smoketest/LibertySmokeTest.groovy | 11 ++++------- .../hypertrace/agent/smoketest/SmokeTest.groovy | 2 +- .../agent/smoketest/TomcatSmokeTest.groovy | 10 ---------- .../agent/smoketest/TomeeSmokeTest.groovy | 6 +++--- .../agent/smoketest/WildflySmokeTest.groovy | 10 ---------- 14 files changed, 37 insertions(+), 67 deletions(-) rename instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/{io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping => org}/WrappingFilter.java (93%) diff --git a/build.gradle.kts b/build.gradle.kts index fa1be16be..773249d22 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -29,11 +29,11 @@ subprojects { description = "Hypertrace OpenTelemetry Javaagent" extra.set("versions", mapOf( - "opentelemetry" to "0.17.1", - "opentelemetry_java_agent" to "0.17.0-alpha", - "opentelemetry_java_agent_all" to "0.17.0", - "byte_buddy" to "1.10.18", - "slf4j" to "1.7.30" + "opentelemetry" to "1.0.0", + "opentelemetry_java_agent" to "1.0.0-alpha", + "opentelemetry_java_agent_all" to "1.0.0", + "byte_buddy" to "1.10.18", + "slf4j" to "1.7.30" )) apply() diff --git a/instrumentation/servlet/servlet-3.0-no-wrapping/src/main/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/Servlet31NoWrappingInstrumentationModule.java b/instrumentation/servlet/servlet-3.0-no-wrapping/src/main/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/Servlet31NoWrappingInstrumentationModule.java index 36a773ed7..64445fc1c 100644 --- a/instrumentation/servlet/servlet-3.0-no-wrapping/src/main/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/Servlet31NoWrappingInstrumentationModule.java +++ b/instrumentation/servlet/servlet-3.0-no-wrapping/src/main/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/Servlet31NoWrappingInstrumentationModule.java @@ -16,8 +16,6 @@ package io.opentelemetry.javaagent.instrumentation.hypertrace.servlet.v3_0.nowrapping; -import static io.opentelemetry.javaagent.tooling.bytebuddy.matcher.ClassLoaderMatcher.hasClassesNamed; - import com.google.auto.service.AutoService; import io.opentelemetry.javaagent.instrumentation.hypertrace.servlet.v3_0.nowrapping.request.ServletInputStreamInstrumentation; import io.opentelemetry.javaagent.instrumentation.hypertrace.servlet.v3_0.nowrapping.request.ServletRequestInstrumentation; @@ -29,7 +27,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import net.bytebuddy.matcher.ElementMatcher; import org.hypertrace.agent.core.instrumentation.SpanAndObjectPair; import org.hypertrace.agent.core.instrumentation.buffer.BoundedByteArrayOutputStream; import org.hypertrace.agent.core.instrumentation.buffer.BoundedCharArrayWriter; @@ -48,11 +45,6 @@ public int getOrder() { return 1; } - @Override - public ElementMatcher.Junction classLoaderMatcher() { - return hasClassesNamed("javax.servlet.http.HttpServlet"); - } - @Override public List typeInstrumentations() { return Arrays.asList( diff --git a/instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/Servlet30NoWrappingInstrumentationTest.java b/instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/Servlet30NoWrappingInstrumentationTest.java index 636172c69..45a92e42a 100644 --- a/instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/Servlet30NoWrappingInstrumentationTest.java +++ b/instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/Servlet30NoWrappingInstrumentationTest.java @@ -35,6 +35,7 @@ import okhttp3.Request; import okhttp3.RequestBody; import okhttp3.Response; +import org.WrappingFilter; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.servlet.ServletContextHandler; import org.hypertrace.agent.core.instrumentation.HypertraceSemanticAttributes; diff --git a/instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/WrappingFilter.java b/instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/org/WrappingFilter.java similarity index 93% rename from instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/WrappingFilter.java rename to instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/org/WrappingFilter.java index 58f00cff6..0a8a8844f 100644 --- a/instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/io/opentelemetry/javaagent/instrumentation/hypertrace/servlet/v3_0/nowrapping/WrappingFilter.java +++ b/instrumentation/servlet/servlet-3.0-no-wrapping/src/test/java/org/WrappingFilter.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.opentelemetry.javaagent.instrumentation.hypertrace.servlet.v3_0.nowrapping; +package org; import java.io.BufferedReader; import java.io.IOException; @@ -31,10 +31,6 @@ import javax.servlet.http.HttpServletRequestWrapper; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponseWrapper; -import org.DelegatingBufferedReader; -import org.DelegatingPrintWriter; -import org.DelegatingServletInputStream; -import org.DelegatingServletOutputStream; public class WrappingFilter implements Filter { diff --git a/otel-extensions/build.gradle.kts b/otel-extensions/build.gradle.kts index 5a18e15df..5680cd561 100644 --- a/otel-extensions/build.gradle.kts +++ b/otel-extensions/build.gradle.kts @@ -9,6 +9,7 @@ dependencies { compileOnly("io.opentelemetry:opentelemetry-sdk:${versions["opentelemetry"]}") compileOnly("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:${versions["opentelemetry"]}-alpha") + implementation("io.opentelemetry:opentelemetry-semconv:${versions["opentelemetry"]}-alpha") implementation("io.opentelemetry.javaagent:opentelemetry-javaagent-spi:${versions["opentelemetry_java_agent"]}") implementation("org.slf4j:slf4j-api:${versions["slf4j"]}") diff --git a/smoke-tests/build.gradle.kts b/smoke-tests/build.gradle.kts index 218ad8174..a7696b9e5 100644 --- a/smoke-tests/build.gradle.kts +++ b/smoke-tests/build.gradle.kts @@ -15,13 +15,14 @@ dependencies{ testImplementation("org.testcontainers:testcontainers:1.15.2") testImplementation("com.squareup.okhttp3:okhttp:4.9.0") testImplementation("org.awaitility:awaitility:4.0.3") - testImplementation("io.opentelemetry:opentelemetry-proto:${versions["opentelemetry"]}") + testImplementation("io.opentelemetry:opentelemetry-proto:${versions["opentelemetry"]}-alpha") testImplementation("io.opentelemetry:opentelemetry-sdk:${versions["opentelemetry"]}") testImplementation("com.google.protobuf:protobuf-java-util:3.13.0") testImplementation("org.spockframework:spock-core:1.3-groovy-2.5") testImplementation("info.solidsoft.spock:spock-global-unroll:0.5.1") testImplementation("com.fasterxml.jackson.core:jackson-databind:2.11.2") testImplementation("org.codehaus.groovy:groovy-all:2.5.11") + testImplementation("io.opentelemetry:opentelemetry-semconv:${versions["opentelemetry"]}-alpha") } tasks.test { diff --git a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/AppServerTest.groovy b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/AppServerTest.groovy index 364f2abfb..3d011e7ae 100644 --- a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/AppServerTest.groovy +++ b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/AppServerTest.groovy @@ -364,7 +364,19 @@ abstract class AppServerTest extends SmokeTest { [appServer, jdk] << getTestParams() } - protected abstract String getSpanName(String path); + protected String getSpanName(String path) { + switch (path) { + case "/app/greeting": + case "/app/headers": + case "/app/exception": + case "/app/asyncgreeting": + return path + case "/app/hello.txt": + case "/app/file-that-does-not-exist": + return "/app/*" + } + return "HTTP GET" + } protected List> getTestParams() { return [ diff --git a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/GlassFishSmokeTest.groovy b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/GlassFishSmokeTest.groovy index c3bf17ce4..1ad19c41e 100644 --- a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/GlassFishSmokeTest.groovy +++ b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/GlassFishSmokeTest.groovy @@ -36,7 +36,11 @@ class GlassFishSmokeTest extends AppServerTest { @Override protected String getSpanName(String path) { - return path + switch (path) { + case "/this-is-definitely-not-there-but-there-should-be-a-trace-nevertheless": + return "/*" + } + return super.getSpanName(path) } @Override @@ -44,4 +48,4 @@ class GlassFishSmokeTest extends AppServerTest { false } -} \ No newline at end of file +} diff --git a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/JettySmokeTest.groovy b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/JettySmokeTest.groovy index 93bde24ea..41ef3e5d4 100644 --- a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/JettySmokeTest.groovy +++ b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/JettySmokeTest.groovy @@ -18,18 +18,4 @@ class JettySmokeTest extends AppServerTest { protected String getTargetImage(String jdk, String serverVersion) { "hypertrace/java-agent-test-containers:jetty-${serverVersion}-jdk$jdk-20210226.602156580" } - - def getJettySpanName() { - "HandlerWrapper.handle" - } - - @Override - protected String getSpanName(String path) { - switch (path) { - case "/app/WEB-INF/web.xml": - case "/this-is-definitely-not-there-but-there-should-be-a-trace-nevertheless": - return getJettySpanName() - } - return path - } } diff --git a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/LibertySmokeTest.groovy b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/LibertySmokeTest.groovy index bd194a4dc..1a5deb499 100644 --- a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/LibertySmokeTest.groovy +++ b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/LibertySmokeTest.groovy @@ -29,13 +29,10 @@ class LibertySmokeTest extends AppServerTest { @Override protected String getSpanName(String path) { switch (path) { - case "/app/greeting": - case "/app/headers": - case "/app/exception": - case "/app/asyncgreeting": - case "/app/echo": - return path + case "/app/hello.txt": + case "/app/file-that-does-not-exist": + return "HTTP GET" } - return 'HTTP GET' + return super.getSpanName(path) } } diff --git a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/SmokeTest.groovy b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/SmokeTest.groovy index bb7352b15..bcf119c93 100644 --- a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/SmokeTest.groovy +++ b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/SmokeTest.groovy @@ -42,7 +42,7 @@ abstract class SmokeTest extends Specification { private Backend backend = Backend.getInstance() @Shared -// protected String agentPath = "/Users/ploffay/projects/hypertrace/javaagent/javaagent/build/libs/hypertrace-agent-0.11.1-SNAPSHOT-all.jar"// System.getProperty("smoketest.javaagent.path") +// protected String agentPath = "/Users/ploffay/projects/hypertrace/javaagent/javaagent/build/libs/hypertrace-agent-0.11.2-SNAPSHOT-all.jar"// System.getProperty("smoketest.javaagent.path") protected String agentPath = System.getProperty("smoketest.javaagent.path") @Shared diff --git a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/TomcatSmokeTest.groovy b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/TomcatSmokeTest.groovy index 7b062c742..9c9fccf98 100644 --- a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/TomcatSmokeTest.groovy +++ b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/TomcatSmokeTest.groovy @@ -20,14 +20,4 @@ class TomcatSmokeTest extends AppServerTest { protected String getTargetImage(String jdk, String serverVersion) { "hypertrace/java-agent-test-containers:tomcat-${serverVersion}-jdk$jdk-20210226.602156580" } - - @Override - protected String getSpanName(String path) { - switch (path) { - case "/app/WEB-INF/web.xml": - case "/this-is-definitely-not-there-but-there-should-be-a-trace-nevertheless": - return "CoyoteAdapter.service" - } - return path - } } diff --git a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/TomeeSmokeTest.groovy b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/TomeeSmokeTest.groovy index 122742464..b097b8f36 100644 --- a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/TomeeSmokeTest.groovy +++ b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/TomeeSmokeTest.groovy @@ -33,9 +33,9 @@ class TomeeSmokeTest extends AppServerTest { @Override protected String getSpanName(String path) { switch (path) { - case "/app/WEB-INF/web.xml": - return "CoyoteAdapter.service" + case "/this-is-definitely-not-there-but-there-should-be-a-trace-nevertheless": + return "/*" } - return path + return super.getSpanName(path) } } diff --git a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/WildflySmokeTest.groovy b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/WildflySmokeTest.groovy index 0706cbafc..466f490aa 100644 --- a/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/WildflySmokeTest.groovy +++ b/smoke-tests/src/test/groovy/org/hypertrace/agent/smoketest/WildflySmokeTest.groovy @@ -21,16 +21,6 @@ class WildflySmokeTest extends AppServerTest { "hypertrace/java-agent-test-containers:wildfly-${serverVersion}-jdk$jdk-20210226.602156580" } - @Override - protected String getSpanName(String path) { - switch (path) { - case "/app/WEB-INF/web.xml": - case "/this-is-definitely-not-there-but-there-should-be-a-trace-nevertheless": - return "DisallowedMethodsHandler.handleRequest" - } - return path - } - // TODO These re ignored in the superclass for Wildfly // @Ignore // @Unroll