Skip to content

Commit 05dff08

Browse files
authored
Merge pull request #495 from DataDog/tyler/couchbase
Add span.type and remove bucket name from resource.name for Couchbase
2 parents e947418 + bcec2e5 commit 05dff08

File tree

6 files changed

+43
-16
lines changed

6 files changed

+43
-16
lines changed

dd-java-agent/instrumentation/couchbase-2.0/src/main/java/datadog/trace/instrumentation/couchbase/client/CouchbaseBucketInstrumentation.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import com.couchbase.client.java.CouchbaseCluster;
1212
import com.google.auto.service.AutoService;
1313
import datadog.trace.agent.tooling.Instrumenter;
14+
import datadog.trace.api.DDSpanTypes;
1415
import datadog.trace.api.DDTags;
1516
import datadog.trace.bootstrap.CallDepthThreadLocalMap;
1617
import io.opentracing.Span;
@@ -107,14 +108,15 @@ public void call() {
107108
final Class<?> declaringClass = method.getDeclaringClass();
108109
final String className =
109110
declaringClass.getSimpleName().replace("CouchbaseAsync", "").replace("DefaultAsync", "");
110-
final String resourceName = className + "." + method.getName() + "(" + bucket + ")";
111+
final String resourceName = className + "." + method.getName();
111112

112113
// just replace the no-op span.
113114
spanRef.set(
114115
GlobalTracer.get()
115116
.buildSpan("couchbase.call")
116117
.withTag(DDTags.SERVICE_NAME, "couchbase")
117118
.withTag(DDTags.RESOURCE_NAME, resourceName)
119+
.withTag(DDTags.SPAN_TYPE, DDSpanTypes.COUCHBASE)
118120
.withTag("bucket", bucket)
119121
.start());
120122
}

dd-java-agent/instrumentation/couchbase-2.0/src/main/java/datadog/trace/instrumentation/couchbase/client/CouchbaseClusterInstrumentation.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import com.couchbase.client.java.CouchbaseCluster;
1212
import com.google.auto.service.AutoService;
1313
import datadog.trace.agent.tooling.Instrumenter;
14+
import datadog.trace.api.DDSpanTypes;
1415
import datadog.trace.api.DDTags;
1516
import datadog.trace.bootstrap.CallDepthThreadLocalMap;
1617
import io.opentracing.Span;
@@ -110,6 +111,7 @@ public void call() {
110111
.buildSpan("couchbase.call")
111112
.withTag(DDTags.SERVICE_NAME, "couchbase")
112113
.withTag(DDTags.RESOURCE_NAME, resourceName)
114+
.withTag(DDTags.SPAN_TYPE, DDSpanTypes.COUCHBASE)
113115
.start());
114116
}
115117
}

dd-java-agent/instrumentation/couchbase-2.0/src/test/groovy/CouchbaseClientTest.groovy

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ import com.couchbase.client.java.Bucket
22
import com.couchbase.client.java.document.JsonDocument
33
import com.couchbase.client.java.document.json.JsonObject
44
import com.couchbase.client.java.query.N1qlQuery
5+
import datadog.trace.api.DDSpanTypes
6+
import datadog.trace.api.DDTags
57
import util.AbstractCouchbaseTest
68

79
import static datadog.trace.agent.test.asserts.ListWriterAssert.assertTraces
@@ -22,6 +24,7 @@ class CouchbaseClientTest extends AbstractCouchbaseTest {
2224
errored false
2325
parent()
2426
tags {
27+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
2528
defaultTags()
2629
}
2730
}
@@ -42,11 +45,12 @@ class CouchbaseClientTest extends AbstractCouchbaseTest {
4245
trace(0, 1) {
4346
span(0) {
4447
serviceName "couchbase"
45-
resourceName "Bucket.upsert(${bkt.name()})"
48+
resourceName "Bucket.upsert"
4649
operationName "couchbase.call"
4750
errored false
4851
parent()
4952
tags {
53+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
5054
"bucket" bkt.name()
5155
defaultTags()
5256
}
@@ -67,11 +71,12 @@ class CouchbaseClientTest extends AbstractCouchbaseTest {
6771
trace(0, 1) {
6872
span(0) {
6973
serviceName "couchbase"
70-
resourceName "Bucket.get(${bkt.name()})"
74+
resourceName "Bucket.get"
7175
operationName "couchbase.call"
7276
errored false
7377
parent()
7478
tags {
79+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
7580
"bucket" bkt.name()
7681
defaultTags()
7782
}
@@ -108,11 +113,12 @@ class CouchbaseClientTest extends AbstractCouchbaseTest {
108113
trace(0, 1) {
109114
span(0) {
110115
serviceName "couchbase"
111-
resourceName "Bucket.query(${bkt.name()})"
116+
resourceName "Bucket.query"
112117
operationName "couchbase.call"
113118
errored false
114119
parent()
115120
tags {
121+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
116122
"bucket" bkt.name()
117123
defaultTags()
118124
}

dd-java-agent/instrumentation/couchbase-2.0/src/test/groovy/springdata/CouchbaseSpringRepositoryTest.groovy

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ package springdata
22

33
import com.couchbase.client.java.view.DefaultView
44
import com.couchbase.client.java.view.DesignDocument
5+
import datadog.trace.api.DDSpanTypes
6+
import datadog.trace.api.DDTags
57
import org.springframework.context.ConfigurableApplicationContext
68
import org.springframework.context.annotation.AnnotationConfigApplicationContext
79
import org.springframework.data.repository.CrudRepository
@@ -77,11 +79,12 @@ class CouchbaseSpringRepositoryTest extends AbstractCouchbaseTest {
7779
trace(0, 1) {
7880
span(0) {
7981
serviceName "couchbase"
80-
resourceName "Bucket.query(${bucketCouchbase.name()})"
82+
resourceName "Bucket.query"
8183
operationName "couchbase.call"
8284
errored false
8385
parent()
8486
tags {
87+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
8588
"bucket" bucketCouchbase.name()
8689
defaultTags()
8790
}
@@ -105,11 +108,12 @@ class CouchbaseSpringRepositoryTest extends AbstractCouchbaseTest {
105108
trace(0, 1) {
106109
span(0) {
107110
serviceName "couchbase"
108-
resourceName "Bucket.upsert(${bucketCouchbase.name()})"
111+
resourceName "Bucket.upsert"
109112
operationName "couchbase.call"
110113
errored false
111114
parent()
112115
tags {
116+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
113117
"bucket" bucketCouchbase.name()
114118
defaultTags()
115119
}
@@ -126,11 +130,12 @@ class CouchbaseSpringRepositoryTest extends AbstractCouchbaseTest {
126130
trace(0, 1) {
127131
span(0) {
128132
serviceName "couchbase"
129-
resourceName "Bucket.get(${bucketCouchbase.name()})"
133+
resourceName "Bucket.get"
130134
operationName "couchbase.call"
131135
errored false
132136
parent()
133137
tags {
138+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
134139
"bucket" bucketCouchbase.name()
135140
defaultTags()
136141
}
@@ -150,11 +155,12 @@ class CouchbaseSpringRepositoryTest extends AbstractCouchbaseTest {
150155
trace(0, 1) {
151156
span(0) {
152157
serviceName "couchbase"
153-
resourceName "Bucket.upsert(${bucketCouchbase.name()})"
158+
resourceName "Bucket.upsert"
154159
operationName "couchbase.call"
155160
errored false
156161
parent()
157162
tags {
163+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
158164
"bucket" bucketCouchbase.name()
159165
defaultTags()
160166
}
@@ -163,11 +169,12 @@ class CouchbaseSpringRepositoryTest extends AbstractCouchbaseTest {
163169
trace(1, 1) {
164170
span(0) {
165171
serviceName "couchbase"
166-
resourceName "Bucket.query(${bucketCouchbase.name()})"
172+
resourceName "Bucket.query"
167173
operationName "couchbase.call"
168174
errored false
169175
parent()
170176
tags {
177+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
171178
"bucket" bucketCouchbase.name()
172179
defaultTags()
173180
}
@@ -176,11 +183,12 @@ class CouchbaseSpringRepositoryTest extends AbstractCouchbaseTest {
176183
trace(2, 1) {
177184
span(0) {
178185
serviceName "couchbase"
179-
resourceName "Bucket.get(${bucketCouchbase.name()})"
186+
resourceName "Bucket.get"
180187
operationName "couchbase.call"
181188
errored false
182189
parent()
183190
tags {
191+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
184192
"bucket" bucketCouchbase.name()
185193
defaultTags()
186194
}
@@ -200,11 +208,12 @@ class CouchbaseSpringRepositoryTest extends AbstractCouchbaseTest {
200208
trace(0, 1) {
201209
span(0) {
202210
serviceName "couchbase"
203-
resourceName "Bucket.remove(${bucketCouchbase.name()})"
211+
resourceName "Bucket.remove"
204212
operationName "couchbase.call"
205213
errored false
206214
parent()
207215
tags {
216+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
208217
"bucket" bucketCouchbase.name()
209218
defaultTags()
210219
}
@@ -213,11 +222,12 @@ class CouchbaseSpringRepositoryTest extends AbstractCouchbaseTest {
213222
trace(1, 1) {
214223
span(0) {
215224
serviceName "couchbase"
216-
resourceName "Bucket.query(${bucketCouchbase.name()})"
225+
resourceName "Bucket.query"
217226
operationName "couchbase.call"
218227
errored false
219228
parent()
220229
tags {
230+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
221231
"bucket" bucketCouchbase.name()
222232
defaultTags()
223233
}

dd-java-agent/instrumentation/couchbase-2.0/src/test/groovy/springdata/CouchbaseSpringTemplateTest.groovy

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ package springdata
22

33

44
import com.couchbase.client.java.Bucket
5+
import datadog.trace.api.DDSpanTypes
6+
import datadog.trace.api.DDTags
57
import org.springframework.data.couchbase.core.CouchbaseTemplate
68
import spock.lang.Shared
79
import util.AbstractCouchbaseTest
@@ -43,11 +45,12 @@ class CouchbaseSpringTemplateTest extends AbstractCouchbaseTest {
4345
trace(0, 1) {
4446
span(0) {
4547
serviceName "couchbase"
46-
resourceName "Bucket.upsert($name)"
48+
resourceName "Bucket.upsert"
4749
operationName "couchbase.call"
4850
errored false
4951
parent()
5052
tags {
53+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
5154
"bucket" name
5255
defaultTags()
5356
}
@@ -56,11 +59,12 @@ class CouchbaseSpringTemplateTest extends AbstractCouchbaseTest {
5659
trace(1, 1) {
5760
span(0) {
5861
serviceName "couchbase"
59-
resourceName "Bucket.get($name)"
62+
resourceName "Bucket.get"
6063
operationName "couchbase.call"
6164
errored false
6265
parent()
6366
tags {
67+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
6468
"bucket" name
6569
defaultTags()
6670
}
@@ -69,11 +73,12 @@ class CouchbaseSpringTemplateTest extends AbstractCouchbaseTest {
6973
trace(2, 1) {
7074
span(0) {
7175
serviceName "couchbase"
72-
resourceName "Bucket.remove($name)"
76+
resourceName "Bucket.remove"
7377
operationName "couchbase.call"
7478
errored false
7579
parent()
7680
tags {
81+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
7782
"bucket" name
7883
defaultTags()
7984
}
@@ -82,11 +87,12 @@ class CouchbaseSpringTemplateTest extends AbstractCouchbaseTest {
8287
trace(3, 1) {
8388
span(0) {
8489
serviceName "couchbase"
85-
resourceName "Bucket.get($name)"
90+
resourceName "Bucket.get"
8691
operationName "couchbase.call"
8792
errored false
8893
parent()
8994
tags {
95+
"$DDTags.SPAN_TYPE" DDSpanTypes.COUCHBASE
9096
"bucket" name
9197
defaultTags()
9298
}

dd-trace-api/src/main/java/datadog/trace/api/DDSpanTypes.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ public class DDSpanTypes {
1010
public static final String SQL = "sql";
1111
public static final String MONGO = "mongodb";
1212
public static final String CASSANDRA = "cassandra";
13+
public static final String COUCHBASE = "db"; // Using generic for now.
1314
public static final String REDIS = "redis";
1415
public static final String MEMCACHED = "memcached";
1516
public static final String ELASTICSEARCH = "elasticsearch";

0 commit comments

Comments
 (0)