From bf15a139d56fa5d09ae4ea0fa2e3e7e67625315a Mon Sep 17 00:00:00 2001 From: Tyler Benson Date: Mon, 3 Jul 2017 16:14:35 -0700 Subject: [PATCH] Remove tagsKV from @Trace annotation --- dd-java-agent-ittests/pom.xml | 1 - .../datadoghq/trace/agent/SayTracedHello.java | 13 ++++++++--- dd-java-agent/README.md | 4 ++-- .../trace/agent/TraceAnnotationsManager.java | 23 ------------------- .../main/java/com/datadoghq/trace/Trace.java | 6 ----- .../dropwizard-mongo-client/pom.xml | 12 ++++++++++ .../helloworld/client/TracedClient.java | 5 +++- .../resources/SimpleCrudResource.java | 14 ++++++----- 8 files changed, 36 insertions(+), 42 deletions(-) diff --git a/dd-java-agent-ittests/pom.xml b/dd-java-agent-ittests/pom.xml index cfdd3bc03b6..80da6e78f4a 100644 --- a/dd-java-agent-ittests/pom.xml +++ b/dd-java-agent-ittests/pom.xml @@ -11,7 +11,6 @@ dd-java-agent-ittests Datadog Java Agent integration tests https://github.com/datadog/dd-trace-java - pom diff --git a/dd-java-agent-ittests/src/test/java/com/datadoghq/trace/agent/SayTracedHello.java b/dd-java-agent-ittests/src/test/java/com/datadoghq/trace/agent/SayTracedHello.java index 0d3111f3dbc..b79b99f6b48 100644 --- a/dd-java-agent-ittests/src/test/java/com/datadoghq/trace/agent/SayTracedHello.java +++ b/dd-java-agent-ittests/src/test/java/com/datadoghq/trace/agent/SayTracedHello.java @@ -1,21 +1,28 @@ package com.datadoghq.trace.agent; +import com.datadoghq.trace.DDTags; import com.datadoghq.trace.Trace; +import io.opentracing.tag.StringTag; +import io.opentracing.util.GlobalTracer; public class SayTracedHello { - @Trace(operationName="SAY_HELLO",tagsKV={"service-name","test"}) + @Trace(operationName="SAY_HELLO") public static String sayHello(){ + new StringTag(DDTags.SERVICE_NAME).set(GlobalTracer.get().activeSpan(), "test"); return "hello!"; } - @Trace(operationName="SAY_HA",tagsKV={"service-name","test","span-type","DB"}) + @Trace(operationName="SAY_HA") public static String sayHA(){ + new StringTag(DDTags.SERVICE_NAME).set(GlobalTracer.get().activeSpan(), "test"); + new StringTag(DDTags.SPAN_TYPE).set(GlobalTracer.get().activeSpan(), "DB"); return "HA!!"; } - @Trace(operationName="NEW_TRACE",tagsKV={"service-name","test2"}) + @Trace(operationName="NEW_TRACE") public static String sayHELLOsayHA(){ + new StringTag(DDTags.SERVICE_NAME).set(GlobalTracer.get().activeSpan(), "test2"); return sayHello()+sayHA(); } diff --git a/dd-java-agent/README.md b/dd-java-agent/README.md index fbe34c7d523..17c9ce4e571 100644 --- a/dd-java-agent/README.md +++ b/dd-java-agent/README.md @@ -152,10 +152,10 @@ public void myMethod() throws InterruptedException{ By default, the operation name attached to the spawn span will be the name of the method and no meta tags will be attached. -You can use the `operationName` and `tagsKV` attributes to customize your trace: +You can use the `operationName` customize your trace: ```java -@Trace(operationName="Before DB",tagsKV={"mytag","myvalue"}) +@Trace(operationName="Before DB") public void myMethod() throws InterruptedException{ .... } diff --git a/dd-java-agent/src/main/java/com/datadoghq/trace/agent/TraceAnnotationsManager.java b/dd-java-agent/src/main/java/com/datadoghq/trace/agent/TraceAnnotationsManager.java index db78226df1d..a5631e383a7 100644 --- a/dd-java-agent/src/main/java/com/datadoghq/trace/agent/TraceAnnotationsManager.java +++ b/dd-java-agent/src/main/java/com/datadoghq/trace/agent/TraceAnnotationsManager.java @@ -172,7 +172,6 @@ public static void loadAnnotationsRules(String... scannedPackages) { String ruleText = CURRENT_SPAN_EXISTS+ buildSpan(javassistMethod)+ - buildWithTags(javassistMethod)+ START; RuleScript script = createRuleScript("Start Active Span ",cc, javassistMethod, Location.create(LocationType.ENTRY,""),ruleText); generatedScripts.append(script).append("\n"); @@ -264,26 +263,4 @@ private static String buildSpan(CtMethod javassistMethod){ } return BUILD_SPAN+javassistMethod.getName()+CLOSE_PARENTHESIS; } - - private static String buildWithTags(CtMethod javassistMethod){ - try { - Trace trace = (Trace) javassistMethod.getAnnotation(Trace.class); - if(trace.tagsKV()!=null && trace.tagsKV().length>0){ - if(trace.tagsKV().length%2==0){ - StringBuilder sb = new StringBuilder(); - for(int i = 0;i${dd-trace.version} + + + io.opentracing + opentracing-api + ${opentracing.version} + + + io.opentracing + opentracing-util + ${opentracing.version} + + io.dropwizard diff --git a/dd-trace-examples/dropwizard-mongo-client/src/main/java/com/example/helloworld/client/TracedClient.java b/dd-trace-examples/dropwizard-mongo-client/src/main/java/com/example/helloworld/client/TracedClient.java index 15ae1dcc6cb..29337ddf165 100644 --- a/dd-trace-examples/dropwizard-mongo-client/src/main/java/com/example/helloworld/client/TracedClient.java +++ b/dd-trace-examples/dropwizard-mongo-client/src/main/java/com/example/helloworld/client/TracedClient.java @@ -3,6 +3,8 @@ import java.io.IOException; import com.datadoghq.trace.Trace; +import io.opentracing.tag.StringTag; +import io.opentracing.util.GlobalTracer; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; @@ -21,8 +23,9 @@ public static void main(String[] args) throws Exception{ System.out.println("After execute"); } - @Trace(tagsKV={"service-name","TracedClient"}) + @Trace private static void executeCall() throws IOException { + new StringTag("service-name").set(GlobalTracer.get().activeSpan(), "TracedClient"); OkHttpClient client = new OkHttpClient().newBuilder().build(); Request request = new Request.Builder() diff --git a/dd-trace-examples/dropwizard-mongo-client/src/main/java/com/example/helloworld/resources/SimpleCrudResource.java b/dd-trace-examples/dropwizard-mongo-client/src/main/java/com/example/helloworld/resources/SimpleCrudResource.java index a8fcb57c0d5..1e0b564ccd3 100644 --- a/dd-trace-examples/dropwizard-mongo-client/src/main/java/com/example/helloworld/resources/SimpleCrudResource.java +++ b/dd-trace-examples/dropwizard-mongo-client/src/main/java/com/example/helloworld/resources/SimpleCrudResource.java @@ -6,6 +6,8 @@ import com.mongodb.MongoClient; import com.mongodb.client.MongoCursor; import com.mongodb.client.MongoDatabase; +import io.opentracing.tag.StringTag; +import io.opentracing.util.GlobalTracer; import org.bson.Document; import javax.ws.rs.GET; @@ -101,24 +103,24 @@ public List getBooks() throws InterruptedException { } /** - * The beforeDB is traced using the annotation @trace - * Tags, the operation name can be configured using tagsKV and operationName options + * The beforeDB is traced using the annotation @trace with a custom operationName and a custom tag. * * @throws InterruptedException */ - @Trace(operationName = "Before DB", tagsKV = {"mytag", "myvalue"}) + @Trace(operationName = "Before DB") public void beforeDB() throws InterruptedException { + new StringTag("mytag").set(GlobalTracer.get().activeSpan(), "myvalue"); Thread.sleep(333); } /** - * The beforeDB is traced using the annotation @trace - * Tags, the operation name can be configured using tagsKV and operationName options + * The beforeDB is traced using the annotation @trace with a custom operationName and a custom tag. * * @throws InterruptedException */ - @Trace(operationName = "After DB", tagsKV = {"mytag", "myvalue"}) + @Trace(operationName = "After DB") public void afterDB() throws InterruptedException { + new StringTag("mytag").set(GlobalTracer.get().activeSpan(), "myvalue"); Thread.sleep(111); }