diff --git a/dd-java-agent/instrumentation/jsp-2.3/src/test/groovy/JSPInstrumentationBasicTests.groovy b/dd-java-agent/instrumentation/jsp-2.3/src/test/groovy/JSPInstrumentationBasicTests.groovy index 6c8d07d5b9..78a3f7038b 100644 --- a/dd-java-agent/instrumentation/jsp-2.3/src/test/groovy/JSPInstrumentationBasicTests.groovy +++ b/dd-java-agent/instrumentation/jsp-2.3/src/test/groovy/JSPInstrumentationBasicTests.groovy @@ -11,6 +11,7 @@ import okhttp3.Response import org.apache.catalina.Context import org.apache.catalina.startup.Tomcat import org.apache.jasper.JasperException +import spock.lang.Shared import spock.lang.Unroll import static datadog.trace.agent.test.ListWriterAssert.assertTraces @@ -27,7 +28,22 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { System.setProperty("org.apache.catalina.startup.TldConfig.jarsToSkip", "*") } - static final int PORT = TestUtils.randomOpenPort() + @Shared + int port + @Shared + Tomcat tomcatServer + @Shared + Context appContext + @Shared + String jspWebappContext = "jsptest-context" + + @Shared + File baseDir + @Shared + String baseUrl + @Shared + String expectedJspClassFilesDir = "/work/Tomcat/localhost/$jspWebappContext/org/apache/jsp/" + OkHttpClient client = new OkHttpClient.Builder() // Uncomment when debugging: // .connectTimeout(1, TimeUnit.HOURS) @@ -35,32 +51,25 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { // .readTimeout(1, TimeUnit.HOURS) .build() - static Tomcat tomcatServer - static Context appContext - static final String JSP_WEBAPP_CONTEXT = "jsptest-context" - - static File baseDir - static String baseUrl - static String expectedJspClassFilesDir = "/work/Tomcat/localhost/$JSP_WEBAPP_CONTEXT/org/apache/jsp/" - def setupSpec() { + port = TestUtils.randomOpenPort() tomcatServer = new Tomcat() - tomcatServer.setPort(PORT) + tomcatServer.setPort(port) // comment to debug tomcatServer.setSilent(true) baseDir = Files.createTempDir() baseDir.deleteOnExit() expectedJspClassFilesDir = baseDir.getCanonicalFile().getAbsolutePath() + expectedJspClassFilesDir - baseUrl = "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT" + baseUrl = "http://localhost:$port/$jspWebappContext" tomcatServer.setBaseDir(baseDir.getAbsolutePath()) - appContext = tomcatServer.addWebapp("/$JSP_WEBAPP_CONTEXT", + appContext = tomcatServer.addWebapp("/$jspWebappContext", JSPInstrumentationBasicTests.getResource("/webapps/jsptest").getPath()) tomcatServer.start() System.out.println( - "Tomcat server: http://" + tomcatServer.getHost().getName() + ":" + PORT + "/") + "Tomcat server: http://" + tomcatServer.getHost().getName() + ":" + port + "/") } def cleanupSpec() { @@ -82,25 +91,25 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { trace(0, 3) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/$jspFileName" + resourceName "GET /$jspWebappContext/$jspFileName" spanType DDSpanTypes.WEB_SERVLET errored false tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/$jspFileName" + "http.url" "http://localhost:$port/$jspWebappContext/$jspFileName" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 200 defaultTags() } } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/$jspFileName" spanType DDSpanTypes.WEB_SERVLET @@ -109,14 +118,14 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(2) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/$jspFileName" spanType DDSpanTypes.WEB_SERVLET @@ -125,7 +134,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.$jspClassNamePrefix$jspClassName" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -159,25 +168,25 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { trace(0, 3) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/getQuery.jsp" + resourceName "GET /$jspWebappContext/getQuery.jsp" spanType DDSpanTypes.WEB_SERVLET errored false tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/getQuery.jsp" + "http.url" "http://localhost:$port/$jspWebappContext/getQuery.jsp" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 200 defaultTags() } } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/getQuery.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -186,14 +195,14 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(2) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/getQuery.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -202,7 +211,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.getQuery_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -233,25 +242,25 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { trace(0, 3) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "POST /$JSP_WEBAPP_CONTEXT/post.jsp" + resourceName "POST /$jspWebappContext/post.jsp" spanType DDSpanTypes.WEB_SERVLET errored false tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/post.jsp" + "http.url" "http://localhost:$port/$jspWebappContext/post.jsp" "http.method" "POST" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 200 defaultTags() } } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/post.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -260,14 +269,14 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(2) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/post.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -276,7 +285,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.post_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -304,18 +313,18 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { trace(0, 3) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/$jspFileName" + resourceName "GET /$jspWebappContext/$jspFileName" spanType DDSpanTypes.WEB_SERVLET errored true tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/$jspFileName" + "http.url" "http://localhost:$port/$jspWebappContext/$jspFileName" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 500 errorTags(JasperException, String) defaultTags() @@ -323,7 +332,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/$jspFileName" spanType DDSpanTypes.WEB_SERVLET @@ -332,7 +341,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl errorTags(exceptionClass, errorMessage) defaultTags() @@ -340,7 +349,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { } span(2) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/$jspFileName" spanType DDSpanTypes.WEB_SERVLET @@ -349,7 +358,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.$jspClassName" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -382,25 +391,25 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { trace(0, 3) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/includes/includeHtml.jsp" + resourceName "GET /$jspWebappContext/includes/includeHtml.jsp" spanType DDSpanTypes.WEB_SERVLET errored false tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/includes/includeHtml.jsp" + "http.url" "http://localhost:$port/$jspWebappContext/includes/includeHtml.jsp" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 200 defaultTags() } } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/includes/includeHtml.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -409,14 +418,14 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(2) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/includes/includeHtml.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -425,7 +434,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.includes.includeHtml_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -452,25 +461,25 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { trace(0, 7) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/includes/includeMulti.jsp" + resourceName "GET /$jspWebappContext/includes/includeMulti.jsp" spanType DDSpanTypes.WEB_SERVLET errored false tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/includes/includeMulti.jsp" + "http.url" "http://localhost:$port/$jspWebappContext/includes/includeMulti.jsp" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 200 defaultTags() } } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/includes/includeMulti.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -479,14 +488,14 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(2) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/common/javaLoopH2.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -495,14 +504,14 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(3) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/common/javaLoopH2.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -511,7 +520,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.common.javaLoopH2_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -519,7 +528,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { } span(4) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/common/javaLoopH2.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -528,14 +537,14 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(5) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/common/javaLoopH2.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -544,7 +553,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.common.javaLoopH2_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -552,7 +561,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { } span(6) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/includes/includeMulti.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -561,7 +570,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.includes.includeMulti_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -588,18 +597,18 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { trace(0, 2) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/$jspFileName" + resourceName "GET /$jspWebappContext/$jspFileName" spanType DDSpanTypes.WEB_SERVLET errored true tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/$jspFileName" + "http.url" "http://localhost:$port/$jspWebappContext/$jspFileName" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 500 errorTags(JasperException, String) defaultTags() @@ -607,7 +616,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/$jspFileName" spanType DDSpanTypes.WEB_SERVLET @@ -616,7 +625,7 @@ class JSPInstrumentationBasicTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.$jspClassNamePrefix$jspClassName" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" "jsp.javaFile" expectedJspClassFilesDir + jspClassNamePrefix.replace('.', '/') + jspClassName + ".java" diff --git a/dd-java-agent/instrumentation/jsp-2.3/src/test/groovy/JSPInstrumentationForwardTests.groovy b/dd-java-agent/instrumentation/jsp-2.3/src/test/groovy/JSPInstrumentationForwardTests.groovy index 5c01d96eb8..6f0007d34c 100644 --- a/dd-java-agent/instrumentation/jsp-2.3/src/test/groovy/JSPInstrumentationForwardTests.groovy +++ b/dd-java-agent/instrumentation/jsp-2.3/src/test/groovy/JSPInstrumentationForwardTests.groovy @@ -7,6 +7,7 @@ import okhttp3.* import org.apache.catalina.Context import org.apache.catalina.startup.Tomcat import org.apache.jasper.JasperException +import spock.lang.Shared import spock.lang.Unroll import static datadog.trace.agent.test.ListWriterAssert.assertTraces @@ -23,7 +24,22 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { System.setProperty("org.apache.catalina.startup.TldConfig.jarsToSkip", "*") } - static final int PORT = TestUtils.randomOpenPort() + @Shared + int port + @Shared + Tomcat tomcatServer + @Shared + Context appContext + @Shared + String jspWebappContext = "jsptest-context" + + @Shared + File baseDir + @Shared + String baseUrl + @Shared + String expectedJspClassFilesDir = "/work/Tomcat/localhost/$jspWebappContext/org/apache/jsp/" + OkHttpClient client = new OkHttpClient.Builder() // Uncomment when debugging: // .connectTimeout(1, TimeUnit.HOURS) @@ -31,32 +47,25 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { // .readTimeout(1, TimeUnit.HOURS) .build() - static Tomcat tomcatServer - static Context appContext - static final String JSP_WEBAPP_CONTEXT = "jsptest-context" - - static File baseDir - static String baseUrl - static String expectedJspClassFilesDir = "/work/Tomcat/localhost/$JSP_WEBAPP_CONTEXT/org/apache/jsp/" - def setupSpec() { + port = TestUtils.randomOpenPort() tomcatServer = new Tomcat() - tomcatServer.setPort(PORT) + tomcatServer.setPort(port) // comment to debug tomcatServer.setSilent(true) baseDir = Files.createTempDir() baseDir.deleteOnExit() expectedJspClassFilesDir = baseDir.getCanonicalFile().getAbsolutePath() + expectedJspClassFilesDir - baseUrl = "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT" + baseUrl = "http://localhost:$port/$jspWebappContext" tomcatServer.setBaseDir(baseDir.getAbsolutePath()) - appContext = tomcatServer.addWebapp("/$JSP_WEBAPP_CONTEXT", + appContext = tomcatServer.addWebapp("/$jspWebappContext", JSPInstrumentationForwardTests.getResource("/webapps/jsptest").getPath()) tomcatServer.start() System.out.println( - "Tomcat server: http://" + tomcatServer.getHost().getName() + ":" + PORT + "/") + "Tomcat server: http://" + tomcatServer.getHost().getName() + ":" + port + "/") } def cleanupSpec() { @@ -78,25 +87,25 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { trace(0, 5) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/$forwardFromFileName" + resourceName "GET /$jspWebappContext/$forwardFromFileName" spanType DDSpanTypes.WEB_SERVLET errored false tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/$forwardFromFileName" + "http.url" "http://localhost:$port/$jspWebappContext/$forwardFromFileName" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 200 defaultTags() } } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/$forwardFromFileName" spanType DDSpanTypes.WEB_SERVLET @@ -105,14 +114,14 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(2) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/$forwardDestFileName" spanType DDSpanTypes.WEB_SERVLET @@ -121,7 +130,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.forwardOrigin" "/$forwardFromFileName" "jsp.requestURL" baseUrl + "/$forwardDestFileName" defaultTags() @@ -129,7 +138,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(3) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/$forwardDestFileName" spanType DDSpanTypes.WEB_SERVLET @@ -138,7 +147,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.$jspForwardDestClassPrefix$jspForwardDestClassName" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -146,7 +155,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(4) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/$forwardFromFileName" spanType DDSpanTypes.WEB_SERVLET @@ -155,7 +164,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.$jspForwardFromClassPrefix$jspForwardFromClassName" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -187,25 +196,25 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { trace(0, 3) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/forwards/forwardToHtml.jsp" + resourceName "GET /$jspWebappContext/forwards/forwardToHtml.jsp" spanType DDSpanTypes.WEB_SERVLET errored false tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/forwards/forwardToHtml.jsp" + "http.url" "http://localhost:$port/$jspWebappContext/forwards/forwardToHtml.jsp" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 200 defaultTags() } } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/forwards/forwardToHtml.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -214,14 +223,14 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(2) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/forwards/forwardToHtml.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -230,7 +239,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.forwards.forwardToHtml_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -257,25 +266,25 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { trace(0, 9) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/forwards/forwardToIncludeMulti.jsp" + resourceName "GET /$jspWebappContext/forwards/forwardToIncludeMulti.jsp" spanType DDSpanTypes.WEB_SERVLET errored false tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/forwards/forwardToIncludeMulti.jsp" + "http.url" "http://localhost:$port/$jspWebappContext/forwards/forwardToIncludeMulti.jsp" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 200 defaultTags() } } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/forwards/forwardToIncludeMulti.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -284,14 +293,14 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(2) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/includes/includeMulti.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -300,7 +309,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.forwardOrigin" "/forwards/forwardToIncludeMulti.jsp" "jsp.requestURL" baseUrl + "/includes/includeMulti.jsp" defaultTags() @@ -308,7 +317,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(3) { childOf span(2) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/common/javaLoopH2.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -317,7 +326,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.forwardOrigin" "/forwards/forwardToIncludeMulti.jsp" "jsp.requestURL" baseUrl + "/includes/includeMulti.jsp" defaultTags() @@ -325,7 +334,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(4) { childOf span(2) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/common/javaLoopH2.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -334,7 +343,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.common.javaLoopH2_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -342,7 +351,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(5) { childOf span(2) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/common/javaLoopH2.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -351,7 +360,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.forwardOrigin" "/forwards/forwardToIncludeMulti.jsp" "jsp.requestURL" baseUrl + "/includes/includeMulti.jsp" defaultTags() @@ -359,7 +368,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(6) { childOf span(2) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/common/javaLoopH2.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -368,7 +377,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.common.javaLoopH2_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -376,7 +385,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(7) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/includes/includeMulti.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -385,7 +394,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.includes.includeMulti_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -393,7 +402,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(8) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/forwards/forwardToIncludeMulti.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -402,7 +411,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.forwards.forwardToIncludeMulti_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -429,25 +438,25 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { trace(0, 7) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/forwards/forwardToJspForward.jsp" + resourceName "GET /$jspWebappContext/forwards/forwardToJspForward.jsp" spanType DDSpanTypes.WEB_SERVLET errored false tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/forwards/forwardToJspForward.jsp" + "http.url" "http://localhost:$port/$jspWebappContext/forwards/forwardToJspForward.jsp" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 200 defaultTags() } } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/forwards/forwardToJspForward.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -456,14 +465,14 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(2) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/forwards/forwardToSimpleJava.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -472,7 +481,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.forwardOrigin" "/forwards/forwardToJspForward.jsp" "jsp.requestURL" baseUrl + "/forwards/forwardToSimpleJava.jsp" defaultTags() @@ -480,7 +489,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(3) { childOf span(2) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/common/loop.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -489,7 +498,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.forwardOrigin" "/forwards/forwardToJspForward.jsp" "jsp.requestURL" baseUrl + "/common/loop.jsp" defaultTags() @@ -497,7 +506,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(4) { childOf span(2) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/common/loop.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -506,7 +515,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.common.loop_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -514,7 +523,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(5) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/forwards/forwardToSimpleJava.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -523,7 +532,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.forwards.forwardToSimpleJava_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -531,7 +540,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(6) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/forwards/forwardToJspForward.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -540,7 +549,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.forwards.forwardToJspForward_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -567,18 +576,18 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { trace(0, 4) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" - resourceName "GET /$JSP_WEBAPP_CONTEXT/forwards/forwardToCompileError.jsp" + resourceName "GET /$jspWebappContext/forwards/forwardToCompileError.jsp" spanType DDSpanTypes.WEB_SERVLET errored true tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/forwards/forwardToCompileError.jsp" + "http.url" "http://localhost:$port/$jspWebappContext/forwards/forwardToCompileError.jsp" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 500 errorTags(JasperException, String) defaultTags() @@ -586,7 +595,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/forwards/forwardToCompileError.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -595,7 +604,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl errorTags(JasperException, String) defaultTags() @@ -603,7 +612,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(2) { childOf span(1) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/compileError.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -612,7 +621,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.compileError_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" "jsp.javaFile" expectedJspClassFilesDir + "compileError_jsp.java" @@ -623,7 +632,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { } span(3) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/forwards/forwardToCompileError.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -632,7 +641,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.forwards.forwardToCompileError_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() @@ -659,25 +668,25 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { trace(0, 3) { span(0) { parent() - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "servlet.request" resourceName "404" spanType DDSpanTypes.WEB_SERVLET errored false tags { - "http.url" "http://localhost:$PORT/$JSP_WEBAPP_CONTEXT/forwards/forwardToNonExistent.jsp" + "http.url" "http://localhost:$port/$jspWebappContext/forwards/forwardToNonExistent.jsp" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "http.status_code" 404 defaultTags() } } span(1) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.render" resourceName "/forwards/forwardToNonExistent.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -686,14 +695,14 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.requestURL" reqUrl defaultTags() } } span(2) { childOf span(0) - serviceName JSP_WEBAPP_CONTEXT + serviceName jspWebappContext operationName "jsp.compile" resourceName "/forwards/forwardToNonExistent.jsp" spanType DDSpanTypes.WEB_SERVLET @@ -702,7 +711,7 @@ class JSPInstrumentationForwardTests extends AgentTestRunner { "span.kind" "server" "component" "jsp-http-servlet" "span.type" DDSpanTypes.WEB_SERVLET - "servlet.context" "/$JSP_WEBAPP_CONTEXT" + "servlet.context" "/$jspWebappContext" "jsp.classFQCN" "org.apache.jsp.forwards.forwardToNonExistent_jsp" "jsp.compiler" "org.apache.jasper.compiler.JDTCompiler" defaultTags() diff --git a/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceAsyncClientTest.groovy b/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceAsyncClientTest.groovy index c2d46777bf..0f964bda02 100644 --- a/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceAsyncClientTest.groovy +++ b/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceAsyncClientTest.groovy @@ -28,23 +28,25 @@ import static datadog.trace.instrumentation.lettuce.LettuceInstrumentationUtil.A class LettuceAsyncClientTest extends AgentTestRunner { public static final String HOST = "127.0.0.1" - public static final int PORT = TestUtils.randomOpenPort() - public static final int INCORRECT_PORT = TestUtils.randomOpenPort() public static final int DB_INDEX = 0 - public static final String DB_ADDR = HOST + ":" + PORT + "/" + DB_INDEX - public static final String DB_ADDR_NON_EXISTENT = HOST + ":" + INCORRECT_PORT + "/" + DB_INDEX - public static final String DB_URI_NON_EXISTENT = "redis://" + DB_ADDR_NON_EXISTENT - public static final String EMBEDDED_DB_URI = "redis://" + DB_ADDR // Disable autoreconnect so we do not get stray traces popping up on server shutdown public static final ClientOptions CLIENT_OPTIONS = ClientOptions.builder().autoReconnect(false).build() @Shared - RedisServer redisServer = RedisServer.builder() - // bind to localhost to avoid firewall popup - .setting("bind " + HOST) - // set max memory to avoid problems in CI - .setting("maxmemory 128M") - .port(PORT).build() + int port + @Shared + int incorrectPort + @Shared + String dbAddr + @Shared + String dbAddrNonExistent + @Shared + String dbUriNonExistent + @Shared + String embeddedDbUri + + @Shared + RedisServer redisServer @Shared Map testHashMap = [ @@ -53,12 +55,30 @@ class LettuceAsyncClientTest extends AgentTestRunner { age: "53" ] - RedisClient redisClient = RedisClient.create(EMBEDDED_DB_URI) + RedisClient redisClient StatefulConnection connection RedisAsyncCommands asyncCommands RedisCommands syncCommands + def setupSpec() { + port = TestUtils.randomOpenPort() + incorrectPort = TestUtils.randomOpenPort() + dbAddr = HOST + ":" + port + "/" + DB_INDEX + dbAddrNonExistent = HOST + ":" + incorrectPort + "/" + DB_INDEX + dbUriNonExistent = "redis://" + dbAddrNonExistent + embeddedDbUri = "redis://" + dbAddr + + redisServer = RedisServer.builder() + // bind to localhost to avoid firewall popup + .setting("bind " + HOST) + // set max memory to avoid problems in CI + .setting("maxmemory 128M") + .port(port).build() + } + def setup() { + redisClient = RedisClient.create(embeddedDbUri) + println "Using redis: $redisServer.args" redisServer.start() redisClient.setOptions(CLIENT_OPTIONS) @@ -81,12 +101,12 @@ class LettuceAsyncClientTest extends AgentTestRunner { def "connect using get on ConnectionFuture"() { setup: - RedisClient testConnectionClient = RedisClient.create(EMBEDDED_DB_URI) + RedisClient testConnectionClient = RedisClient.create(embeddedDbUri) testConnectionClient.setOptions(CLIENT_OPTIONS) when: ConnectionFuture connectionFuture = testConnectionClient.connectAsync(StringCodec.UTF8, - new RedisURI(HOST, PORT, 3, TimeUnit.SECONDS)) + new RedisURI(HOST, port, 3, TimeUnit.SECONDS)) StatefulConnection connection = connectionFuture.get() then: @@ -97,17 +117,17 @@ class LettuceAsyncClientTest extends AgentTestRunner { serviceName "redis" operationName "redis.query" spanType "redis" - resourceName "CONNECT:" + DB_ADDR + resourceName "CONNECT:" + dbAddr errored false tags { defaultTags() "component" "redis-client" - "db.redis.url" DB_ADDR + "db.redis.url" dbAddr "db.redis.dbIndex" 0 "db.type" "redis" "peer.hostname" HOST - "peer.port" PORT + "peer.port" port "span.kind" "client" "span.type" "redis" } @@ -121,12 +141,12 @@ class LettuceAsyncClientTest extends AgentTestRunner { def "connect exception inside the connection future"() { setup: - RedisClient testConnectionClient = RedisClient.create(DB_URI_NON_EXISTENT) + RedisClient testConnectionClient = RedisClient.create(dbUriNonExistent) testConnectionClient.setOptions(CLIENT_OPTIONS) when: ConnectionFuture connectionFuture = testConnectionClient.connectAsync(StringCodec.UTF8, - new RedisURI(HOST, INCORRECT_PORT, 3, TimeUnit.SECONDS)) + new RedisURI(HOST, incorrectPort, 3, TimeUnit.SECONDS)) StatefulConnection connection = connectionFuture.get() then: @@ -138,18 +158,18 @@ class LettuceAsyncClientTest extends AgentTestRunner { serviceName "redis" operationName "redis.query" spanType "redis" - resourceName "CONNECT:" + DB_ADDR_NON_EXISTENT + resourceName "CONNECT:" + dbAddrNonExistent errored true tags { defaultTags() "component" "redis-client" - "db.redis.url" DB_ADDR_NON_EXISTENT + "db.redis.url" dbAddrNonExistent "db.redis.dbIndex" 0 "db.type" "redis" errorTags CompletionException, String "peer.hostname" HOST - "peer.port" INCORRECT_PORT + "peer.port" incorrectPort "span.kind" "client" "span.type" "redis" } diff --git a/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceReactiveClientTest.groovy b/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceReactiveClientTest.groovy index 83f1e02a26..45f019f83e 100644 --- a/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceReactiveClientTest.groovy +++ b/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceReactiveClientTest.groovy @@ -15,27 +15,37 @@ import static datadog.trace.instrumentation.lettuce.LettuceInstrumentationUtil.A class LettuceReactiveClientTest extends AgentTestRunner { public static final String HOST = "127.0.0.1" - public static final int PORT = TestUtils.randomOpenPort() public static final int DB_INDEX = 0 - public static final String DB_ADDR = HOST + ":" + PORT + "/" + DB_INDEX - public static final String EMBEDDED_DB_URI = "redis://" + DB_ADDR // Disable autoreconnect so we do not get stray traces popping up on server shutdown public static final ClientOptions CLIENT_OPTIONS = ClientOptions.builder().autoReconnect(false).build() @Shared - RedisServer redisServer = RedisServer.builder() - // bind to localhost to avoid firewall popup - .setting("bind " + HOST) - // set max memory to avoid problems in CI - .setting("maxmemory 128M") - .port(PORT).build() + String embeddedDbUri - RedisClient redisClient = RedisClient.create(EMBEDDED_DB_URI) + @Shared + RedisServer redisServer + + RedisClient redisClient StatefulConnection connection RedisReactiveCommands reactiveCommands RedisCommands syncCommands + def setupSpec() { + int port = TestUtils.randomOpenPort() + String dbAddr = HOST + ":" + port + "/" + DB_INDEX + embeddedDbUri = "redis://" + dbAddr + + redisServer = RedisServer.builder() + // bind to localhost to avoid firewall popup + .setting("bind " + HOST) + // set max memory to avoid problems in CI + .setting("maxmemory 128M") + .port(port).build() + } + def setup() { + redisClient = RedisClient.create(embeddedDbUri) + println "Using redis: $redisServer.args" redisServer.start() redisClient.setOptions(CLIENT_OPTIONS) diff --git a/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceSyncClientTest.groovy b/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceSyncClientTest.groovy index 47dc1033ed..f2dadabf18 100644 --- a/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceSyncClientTest.groovy +++ b/dd-java-agent/instrumentation/lettuce-5/src/test/groovy/LettuceSyncClientTest.groovy @@ -15,23 +15,25 @@ import static datadog.trace.instrumentation.lettuce.LettuceInstrumentationUtil.A class LettuceSyncClientTest extends AgentTestRunner { public static final String HOST = "127.0.0.1" - public static final int PORT = TestUtils.randomOpenPort() - public static final int INCORRECT_PORT = TestUtils.randomOpenPort() public static final int DB_INDEX = 0 - public static final String DB_ADDR = HOST + ":" + PORT + "/" + DB_INDEX - public static final String DB_ADDR_NON_EXISTENT = HOST + ":" + INCORRECT_PORT + "/" + DB_INDEX - public static final String DB_URI_NON_EXISTENT = "redis://" + DB_ADDR_NON_EXISTENT - public static final String EMBEDDED_DB_URI = "redis://" + DB_ADDR // Disable autoreconnect so we do not get stray traces popping up on server shutdown public static final ClientOptions CLIENT_OPTIONS = ClientOptions.builder().autoReconnect(false).build() @Shared - RedisServer redisServer = RedisServer.builder() - // bind to localhost to avoid firewall popup - .setting("bind " + HOST) - // set max memory to avoid problems in CI - .setting("maxmemory 128M") - .port(PORT).build() + int port + @Shared + int incorrectPort + @Shared + String dbAddr + @Shared + String dbAddrNonExistent + @Shared + String dbUriNonExistent + @Shared + String embeddedDbUri + + @Shared + RedisServer redisServer @Shared Map testHashMap = [ @@ -40,11 +42,29 @@ class LettuceSyncClientTest extends AgentTestRunner { age: "53" ] - RedisClient redisClient = RedisClient.create(EMBEDDED_DB_URI) + RedisClient redisClient StatefulConnection connection RedisCommands syncCommands + def setupSpec() { + port = TestUtils.randomOpenPort() + incorrectPort = TestUtils.randomOpenPort() + dbAddr = HOST + ":" + port + "/" + DB_INDEX + dbAddrNonExistent = HOST + ":" + incorrectPort + "/" + DB_INDEX + dbUriNonExistent = "redis://" + dbAddrNonExistent + embeddedDbUri = "redis://" + dbAddr + + redisServer = RedisServer.builder() + // bind to localhost to avoid firewall popup + .setting("bind " + HOST) + // set max memory to avoid problems in CI + .setting("maxmemory 128M") + .port(port).build() + } + def setup() { + redisClient = RedisClient.create(embeddedDbUri) + redisServer.start() connection = redisClient.connect() syncCommands = connection.sync() @@ -64,7 +84,7 @@ class LettuceSyncClientTest extends AgentTestRunner { def "connect"() { setup: - RedisClient testConnectionClient = RedisClient.create(EMBEDDED_DB_URI) + RedisClient testConnectionClient = RedisClient.create(embeddedDbUri) testConnectionClient.setOptions(CLIENT_OPTIONS) when: @@ -77,17 +97,17 @@ class LettuceSyncClientTest extends AgentTestRunner { serviceName "redis" operationName "redis.query" spanType "redis" - resourceName "CONNECT:" + DB_ADDR + resourceName "CONNECT:" + dbAddr errored false tags { defaultTags() "component" "redis-client" - "db.redis.url" DB_ADDR + "db.redis.url" dbAddr "db.redis.dbIndex" 0 "db.type" "redis" "peer.hostname" HOST - "peer.port" PORT + "peer.port" port "span.kind" "client" "span.type" "redis" } @@ -101,7 +121,7 @@ class LettuceSyncClientTest extends AgentTestRunner { def "connect exception"() { setup: - RedisClient testConnectionClient = RedisClient.create(DB_URI_NON_EXISTENT) + RedisClient testConnectionClient = RedisClient.create(dbUriNonExistent) testConnectionClient.setOptions(CLIENT_OPTIONS) when: @@ -115,18 +135,18 @@ class LettuceSyncClientTest extends AgentTestRunner { serviceName "redis" operationName "redis.query" spanType "redis" - resourceName "CONNECT:" + DB_ADDR_NON_EXISTENT + resourceName "CONNECT:" + dbAddrNonExistent errored true tags { defaultTags() "component" "redis-client" - "db.redis.url" DB_ADDR_NON_EXISTENT + "db.redis.url" dbAddrNonExistent "db.redis.dbIndex" 0 "db.type" "redis" errorTags CompletionException, String "peer.hostname" HOST - "peer.port" INCORRECT_PORT + "peer.port" incorrectPort "span.kind" "client" "span.type" "redis" } diff --git a/dd-java-agent/instrumentation/netty-4.0/src/test/groovy/Netty40ClientTest.groovy b/dd-java-agent/instrumentation/netty-4.0/src/test/groovy/Netty40ClientTest.groovy index c178a016c5..4b5c845ab0 100644 --- a/dd-java-agent/instrumentation/netty-4.0/src/test/groovy/Netty40ClientTest.groovy +++ b/dd-java-agent/instrumentation/netty-4.0/src/test/groovy/Netty40ClientTest.groovy @@ -22,10 +22,10 @@ class Netty40ClientTest extends AgentTestRunner { System.setProperty("dd.integration.netty.enabled", "true") } - static final PORT = TestUtils.randomOpenPort() - @Shared - Server server = new Server(PORT) + int port + @Shared + Server server @Shared AsyncHttpClient asyncHttpClient = asyncHttpClient() // DefaultAsyncHttpClientConfig.Builder.newInstance().setRequestTimeout(Integer.MAX_VALUE).build()) @@ -34,6 +34,9 @@ class Netty40ClientTest extends AgentTestRunner { def setupSpec() { + port = TestUtils.randomOpenPort() + server = new Server(port) + Handler handler = [ handle: { String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response -> request.getHeaderNames().each { @@ -59,7 +62,7 @@ class Netty40ClientTest extends AgentTestRunner { def "test server request/response"() { setup: - def responseFuture = asyncHttpClient.prepareGet("http://localhost:$PORT/").execute() + def responseFuture = asyncHttpClient.prepareGet("http://localhost:$port/").execute() def response = responseFuture.get() expect: @@ -79,7 +82,7 @@ class Netty40ClientTest extends AgentTestRunner { "$Tags.COMPONENT.key" "netty-client" "$Tags.HTTP_METHOD.key" "GET" "$Tags.HTTP_STATUS.key" 200 - "$Tags.HTTP_URL.key" "http://localhost:$PORT/" + "$Tags.HTTP_URL.key" "http://localhost:$port/" "$Tags.PEER_HOSTNAME.key" "localhost" "$Tags.PEER_PORT.key" Integer "$Tags.SPAN_KIND.key" Tags.SPAN_KIND_CLIENT diff --git a/dd-java-agent/instrumentation/netty-4.1/src/test/groovy/Netty41ClientTest.groovy b/dd-java-agent/instrumentation/netty-4.1/src/test/groovy/Netty41ClientTest.groovy index 562e539271..faaca384ee 100644 --- a/dd-java-agent/instrumentation/netty-4.1/src/test/groovy/Netty41ClientTest.groovy +++ b/dd-java-agent/instrumentation/netty-4.1/src/test/groovy/Netty41ClientTest.groovy @@ -22,10 +22,10 @@ class Netty41ClientTest extends AgentTestRunner { System.setProperty("dd.integration.netty.enabled", "true") } - static final PORT = TestUtils.randomOpenPort() - @Shared - Server server = new Server(PORT) + int port + @Shared + Server server @Shared AsyncHttpClient asyncHttpClient = asyncHttpClient() // DefaultAsyncHttpClientConfig.Builder.newInstance().setRequestTimeout(Integer.MAX_VALUE).build()) @@ -34,6 +34,9 @@ class Netty41ClientTest extends AgentTestRunner { def setupSpec() { + port = TestUtils.randomOpenPort() + server = new Server(port) + Handler handler = [ handle: { String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response -> request.getHeaderNames().each { @@ -59,7 +62,7 @@ class Netty41ClientTest extends AgentTestRunner { def "test server request/response"() { setup: - def responseFuture = asyncHttpClient.prepareGet("http://localhost:$PORT/").execute() + def responseFuture = asyncHttpClient.prepareGet("http://localhost:$port/").execute() def response = responseFuture.get() expect: @@ -79,7 +82,7 @@ class Netty41ClientTest extends AgentTestRunner { "$Tags.COMPONENT.key" "netty-client" "$Tags.HTTP_METHOD.key" "GET" "$Tags.HTTP_STATUS.key" 200 - "$Tags.HTTP_URL.key" "http://localhost:$PORT/" + "$Tags.HTTP_URL.key" "http://localhost:$port/" "$Tags.PEER_HOSTNAME.key" "localhost" "$Tags.PEER_PORT.key" Integer "$Tags.SPAN_KIND.key" Tags.SPAN_KIND_CLIENT diff --git a/dd-java-agent/instrumentation/play-2.4/src/latestDepTest/groovy/Play26Test.groovy b/dd-java-agent/instrumentation/play-2.4/src/latestDepTest/groovy/Play26Test.groovy index 15d047c449..929f7c1432 100644 --- a/dd-java-agent/instrumentation/play-2.4/src/latestDepTest/groovy/Play26Test.groovy +++ b/dd-java-agent/instrumentation/play-2.4/src/latestDepTest/groovy/Play26Test.groovy @@ -14,11 +14,12 @@ class Play26Test extends AgentTestRunner { } @Shared - int port = TestUtils.randomOpenPort() + int port @Shared TestServer testServer def setupSpec() { + port = TestUtils.randomOpenPort() testServer = Helpers.testServer(port, Play26TestUtils.buildTestApp()) testServer.start() } diff --git a/dd-java-agent/instrumentation/play-2.4/src/test/groovy/Play24Test.groovy b/dd-java-agent/instrumentation/play-2.4/src/test/groovy/Play24Test.groovy index ea6e0ca9e1..e3fa32ab40 100644 --- a/dd-java-agent/instrumentation/play-2.4/src/test/groovy/Play24Test.groovy +++ b/dd-java-agent/instrumentation/play-2.4/src/test/groovy/Play24Test.groovy @@ -9,11 +9,12 @@ import spock.lang.Shared class Play24Test extends AgentTestRunner { @Shared - int port = TestUtils.randomOpenPort() + int port @Shared TestServer testServer def setupSpec() { + port = TestUtils.randomOpenPort() testServer = Helpers.testServer(port, Play24TestUtils.buildTestApp()) testServer.start() } diff --git a/dd-java-agent/instrumentation/servlet-2/src/test/groovy/JettyServlet2Test.groovy b/dd-java-agent/instrumentation/servlet-2/src/test/groovy/JettyServlet2Test.groovy index a5804f62a4..c9aae8832a 100644 --- a/dd-java-agent/instrumentation/servlet-2/src/test/groovy/JettyServlet2Test.groovy +++ b/dd-java-agent/instrumentation/servlet-2/src/test/groovy/JettyServlet2Test.groovy @@ -28,10 +28,11 @@ import static datadog.trace.agent.test.ListWriterAssert.assertTraces class JettyServlet2Test extends AgentTestRunner { - static final int PORT = TestUtils.randomOpenPort() - // Jetty needs this to ensure consistent ordering for async. CountDownLatch latch = new CountDownLatch(1) + + int port + OkHttpClient client = new OkHttpClient.Builder() .addNetworkInterceptor(new Interceptor() { @Override @@ -60,7 +61,8 @@ class JettyServlet2Test extends AgentTestRunner { DDTracer tracer = new DDTracer(writer) def setup() { - jettyServer = new Server(PORT) + port = TestUtils.randomOpenPort() + jettyServer = new Server(port) servletContext = new ServletContextHandler() ConstraintSecurityHandler security = setupAuthentication(jettyServer) @@ -73,7 +75,7 @@ class JettyServlet2Test extends AgentTestRunner { jettyServer.start() System.out.println( - "Jetty server: http://localhost:" + PORT + "/") + "Jetty server: http://localhost:" + port + "/") try { GlobalTracer.register(tracer) @@ -95,7 +97,7 @@ class JettyServlet2Test extends AgentTestRunner { def "test #path servlet call"() { setup: def requestBuilder = new Request.Builder() - .url("http://localhost:$PORT/$path") + .url("http://localhost:$port/$path") .get() if (auth) { requestBuilder.header(HttpHeaders.AUTHORIZATION, Credentials.basic("user", "password")) @@ -115,7 +117,7 @@ class JettyServlet2Test extends AgentTestRunner { errored false parent() tags { - "http.url" "http://localhost:$PORT/$path" + "http.url" "http://localhost:$port/$path" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" @@ -139,7 +141,7 @@ class JettyServlet2Test extends AgentTestRunner { def "test #path error servlet call"() { setup: def request = new Request.Builder() - .url("http://localhost:$PORT/$path?error=true") + .url("http://localhost:$port/$path?error=true") .get() .build() def response = client.newCall(request).execute() @@ -157,7 +159,7 @@ class JettyServlet2Test extends AgentTestRunner { errored true parent() tags { - "http.url" "http://localhost:$PORT/$path" + "http.url" "http://localhost:$port/$path" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" @@ -179,7 +181,7 @@ class JettyServlet2Test extends AgentTestRunner { // This doesn't actually detect the error because we can't get the status code via the old servlet API. setup: def request = new Request.Builder() - .url("http://localhost:$PORT/$path?non-throwing-error=true") + .url("http://localhost:$port/$path?non-throwing-error=true") .get() .build() def response = client.newCall(request).execute() @@ -197,7 +199,7 @@ class JettyServlet2Test extends AgentTestRunner { errored false parent() tags { - "http.url" "http://localhost:$PORT/$path" + "http.url" "http://localhost:$port/$path" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" diff --git a/dd-java-agent/instrumentation/servlet-3/src/test/groovy/JettyServlet3Test.groovy b/dd-java-agent/instrumentation/servlet-3/src/test/groovy/JettyServlet3Test.groovy index 473b8f7467..4f5cddc99e 100644 --- a/dd-java-agent/instrumentation/servlet-3/src/test/groovy/JettyServlet3Test.groovy +++ b/dd-java-agent/instrumentation/servlet-3/src/test/groovy/JettyServlet3Test.groovy @@ -28,11 +28,11 @@ import static datadog.trace.agent.test.ListWriterAssert.assertTraces class JettyServlet3Test extends AgentTestRunner { - static final int PORT = TestUtils.randomOpenPort() - // Jetty needs this to ensure consistent ordering for async. CountDownLatch latch = new CountDownLatch(1) + int port + OkHttpClient client = new OkHttpClient.Builder() .addNetworkInterceptor(new Interceptor() { @Override @@ -61,7 +61,8 @@ class JettyServlet3Test extends AgentTestRunner { DDTracer tracer = new DDTracer(writer) def setup() { - jettyServer = new Server(PORT) + port = TestUtils.randomOpenPort() + jettyServer = new Server(port) servletContext = new ServletContextHandler() ConstraintSecurityHandler security = setupAuthentication(jettyServer) @@ -76,7 +77,7 @@ class JettyServlet3Test extends AgentTestRunner { jettyServer.start() System.out.println( - "Jetty server: http://localhost:" + PORT + "/") + "Jetty server: http://localhost:" + port + "/") try { GlobalTracer.register(tracer) @@ -98,7 +99,7 @@ class JettyServlet3Test extends AgentTestRunner { def "test #path servlet call"() { setup: def requestBuilder = new Request.Builder() - .url("http://localhost:$PORT/$path") + .url("http://localhost:$port/$path") .get() if (auth) { requestBuilder.header(HttpHeaders.AUTHORIZATION, Credentials.basic("user", "password")) @@ -118,7 +119,7 @@ class JettyServlet3Test extends AgentTestRunner { errored false parent() tags { - "http.url" "http://localhost:$PORT/$path" + "http.url" "http://localhost:$port/$path" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" @@ -145,7 +146,7 @@ class JettyServlet3Test extends AgentTestRunner { def "servlet instrumentation clears state after async request"() { setup: def request = new Request.Builder() - .url("http://localhost:$PORT/async") + .url("http://localhost:$port/async") .get() .build() def numTraces = 5 @@ -170,7 +171,7 @@ class JettyServlet3Test extends AgentTestRunner { def "test #path error servlet call"() { setup: def request = new Request.Builder() - .url("http://localhost:$PORT/$path?error=true") + .url("http://localhost:$port/$path?error=true") .get() .build() def response = client.newCall(request).execute() @@ -188,7 +189,7 @@ class JettyServlet3Test extends AgentTestRunner { errored true parent() tags { - "http.url" "http://localhost:$PORT/$path" + "http.url" "http://localhost:$port/$path" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" @@ -211,7 +212,7 @@ class JettyServlet3Test extends AgentTestRunner { def "test #path non-throwing-error servlet call"() { setup: def request = new Request.Builder() - .url("http://localhost:$PORT/$path?non-throwing-error=true") + .url("http://localhost:$port/$path?non-throwing-error=true") .get() .build() def response = client.newCall(request).execute() @@ -229,7 +230,7 @@ class JettyServlet3Test extends AgentTestRunner { errored true parent() tags { - "http.url" "http://localhost:$PORT/$path" + "http.url" "http://localhost:$port/$path" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" diff --git a/dd-java-agent/instrumentation/servlet-3/src/test/groovy/TomcatServlet3Test.groovy b/dd-java-agent/instrumentation/servlet-3/src/test/groovy/TomcatServlet3Test.groovy index 670c0f1045..1b15ee1927 100644 --- a/dd-java-agent/instrumentation/servlet-3/src/test/groovy/TomcatServlet3Test.groovy +++ b/dd-java-agent/instrumentation/servlet-3/src/test/groovy/TomcatServlet3Test.groovy @@ -18,7 +18,7 @@ import static datadog.trace.agent.test.ListWriterAssert.assertTraces class TomcatServlet3Test extends AgentTestRunner { - static final int PORT = TestUtils.randomOpenPort() + int port OkHttpClient client = new OkHttpClient.Builder() // Uncomment when debugging: // .connectTimeout(1, TimeUnit.HOURS) @@ -33,8 +33,9 @@ class TomcatServlet3Test extends AgentTestRunner { DDTracer tracer = new DDTracer(writer) def setup() { + port = TestUtils.randomOpenPort() tomcatServer = new Tomcat() - tomcatServer.setPort(PORT) + tomcatServer.setPort(port) def baseDir = Files.createTempDir() baseDir.deleteOnExit() @@ -61,7 +62,7 @@ class TomcatServlet3Test extends AgentTestRunner { tomcatServer.start() System.out.println( - "Tomcat server: http://" + tomcatServer.getHost().getName() + ":" + PORT + "/") + "Tomcat server: http://" + tomcatServer.getHost().getName() + ":" + port + "/") try { @@ -84,7 +85,7 @@ class TomcatServlet3Test extends AgentTestRunner { def "test #path servlet call"() { setup: def request = new Request.Builder() - .url("http://localhost:$PORT/my-context/$path") + .url("http://localhost:$port/my-context/$path") .get() .build() def response = client.newCall(request).execute() @@ -102,7 +103,7 @@ class TomcatServlet3Test extends AgentTestRunner { errored false parent() tags { - "http.url" "http://localhost:$PORT/my-context/$path" + "http.url" "http://localhost:$port/my-context/$path" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" @@ -124,7 +125,7 @@ class TomcatServlet3Test extends AgentTestRunner { def "test #path error servlet call"() { setup: def request = new Request.Builder() - .url("http://localhost:$PORT/my-context/$path?error=true") + .url("http://localhost:$port/my-context/$path?error=true") .get() .build() def response = client.newCall(request).execute() @@ -142,7 +143,7 @@ class TomcatServlet3Test extends AgentTestRunner { errored true parent() tags { - "http.url" "http://localhost:$PORT/my-context/$path" + "http.url" "http://localhost:$port/my-context/$path" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" @@ -165,7 +166,7 @@ class TomcatServlet3Test extends AgentTestRunner { def "test #path error servlet call for non-throwing error"() { setup: def request = new Request.Builder() - .url("http://localhost:$PORT/my-context/$path?non-throwing-error=true") + .url("http://localhost:$port/my-context/$path?non-throwing-error=true") .get() .build() def response = client.newCall(request).execute() @@ -183,7 +184,7 @@ class TomcatServlet3Test extends AgentTestRunner { errored true parent() tags { - "http.url" "http://localhost:$PORT/my-context/$path" + "http.url" "http://localhost:$port/my-context/$path" "http.method" "GET" "span.kind" "server" "component" "java-web-servlet" diff --git a/dd-java-agent/instrumentation/sparkjava-2.4/src/test/groovy/SparkJavaBasedTest.groovy b/dd-java-agent/instrumentation/sparkjava-2.4/src/test/groovy/SparkJavaBasedTest.groovy index a482c929cb..0d623a1443 100644 --- a/dd-java-agent/instrumentation/sparkjava-2.4/src/test/groovy/SparkJavaBasedTest.groovy +++ b/dd-java-agent/instrumentation/sparkjava-2.4/src/test/groovy/SparkJavaBasedTest.groovy @@ -5,6 +5,7 @@ import okhttp3.OkHttpClient import okhttp3.Request import spark.Spark import spark.embeddedserver.jetty.JettyHandler +import spock.lang.Shared class SparkJavaBasedTest extends AgentTestRunner { @@ -12,7 +13,9 @@ class SparkJavaBasedTest extends AgentTestRunner { System.setProperty("dd.integration.jetty.enabled", "true") System.setProperty("dd.integration.sparkjava.enabled", "true") } - static final int PORT = TestUtils.randomOpenPort() + + @Shared + int port OkHttpClient client = new OkHttpClient.Builder() // Uncomment when debugging: @@ -22,7 +25,8 @@ class SparkJavaBasedTest extends AgentTestRunner { .build() def setupSpec() { - TestSparkJavaApplication.initSpark(PORT) + port = TestUtils.randomOpenPort() + TestSparkJavaApplication.initSpark(port) } def cleanupSpec() { @@ -32,26 +36,26 @@ class SparkJavaBasedTest extends AgentTestRunner { def "valid response"() { setup: def request = new Request.Builder() - .url("http://localhost:$PORT/") + .url("http://localhost:$port/") .get() .build() def response = client.newCall(request).execute() expect: - PORT != 0 + port != 0 response.body().string() == "Hello World" } def "valid response with registered trace"() { setup: def request = new Request.Builder() - .url("http://localhost:$PORT/") + .url("http://localhost:$port/") .get() .build() def response = client.newCall(request).execute() expect: - PORT != 0 + port != 0 response.body().string() == "Hello World" and: @@ -63,7 +67,7 @@ class SparkJavaBasedTest extends AgentTestRunner { def "generates spans"() { setup: def request = new Request.Builder() - .url("http://localhost:$PORT/param/asdf1234") + .url("http://localhost:$port/param/asdf1234") .get() .build() def response = client.newCall(request).execute() @@ -83,7 +87,7 @@ class SparkJavaBasedTest extends AgentTestRunner { !context.getErrorFlag() context.parentId == 0 def tags = context.tags - tags["http.url"] == "http://localhost:$PORT/param/asdf1234" + tags["http.url"] == "http://localhost:$port/param/asdf1234" tags["http.method"] == "GET" tags["span.kind"] == "server" tags["span.type"] == "web"