Merge pull request #854 from DataDog/mar-kolya/kafka-client-service-name
Set kafka client service name to application default service name.
This commit is contained in:
commit
bc37601fc2
|
@ -12,6 +12,11 @@ import org.apache.kafka.clients.producer.ProducerRecord;
|
||||||
public abstract class KafkaDecorator extends ClientDecorator {
|
public abstract class KafkaDecorator extends ClientDecorator {
|
||||||
public static final KafkaDecorator PRODUCER_DECORATE =
|
public static final KafkaDecorator PRODUCER_DECORATE =
|
||||||
new KafkaDecorator() {
|
new KafkaDecorator() {
|
||||||
|
@Override
|
||||||
|
protected String service() {
|
||||||
|
return "kafka";
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected String spanKind() {
|
protected String spanKind() {
|
||||||
return Tags.SPAN_KIND_PRODUCER;
|
return Tags.SPAN_KIND_PRODUCER;
|
||||||
|
@ -25,6 +30,16 @@ public abstract class KafkaDecorator extends ClientDecorator {
|
||||||
|
|
||||||
public static final KafkaDecorator CONSUMER_DECORATE =
|
public static final KafkaDecorator CONSUMER_DECORATE =
|
||||||
new KafkaDecorator() {
|
new KafkaDecorator() {
|
||||||
|
@Override
|
||||||
|
protected String service() {
|
||||||
|
/*
|
||||||
|
Use default service name. Common use-case here is to have consumer span parent
|
||||||
|
children spans in instrumented application. Since service name is inherited it makes
|
||||||
|
sense to default that to application service name rather than 'kafka'.
|
||||||
|
*/
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected String spanKind() {
|
protected String spanKind() {
|
||||||
return Tags.SPAN_KIND_CONSUMER;
|
return Tags.SPAN_KIND_CONSUMER;
|
||||||
|
@ -41,11 +56,6 @@ public abstract class KafkaDecorator extends ClientDecorator {
|
||||||
return new String[] {"kafka"};
|
return new String[] {"kafka"};
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
protected String service() {
|
|
||||||
return "kafka";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected String component() {
|
protected String component() {
|
||||||
return "java-kafka";
|
return "java-kafka";
|
||||||
|
|
|
@ -94,7 +94,7 @@ class KafkaClientTest extends AgentTestRunner {
|
||||||
trace(1, 1) {
|
trace(1, 1) {
|
||||||
// CONSUMER span 0
|
// CONSUMER span 0
|
||||||
span(0) {
|
span(0) {
|
||||||
serviceName "kafka"
|
serviceName "unnamed-java-app"
|
||||||
operationName "kafka.consume"
|
operationName "kafka.consume"
|
||||||
resourceName "Consume Topic $SHARED_TOPIC"
|
resourceName "Consume Topic $SHARED_TOPIC"
|
||||||
spanType "queue"
|
spanType "queue"
|
||||||
|
|
|
@ -80,13 +80,13 @@ class KafkaStreamsTest extends AgentTestRunner {
|
||||||
KStream<String, String> textLines = builder.stream(STREAM_PENDING)
|
KStream<String, String> textLines = builder.stream(STREAM_PENDING)
|
||||||
def values = textLines
|
def values = textLines
|
||||||
.mapValues(new ValueMapper<String, String>() {
|
.mapValues(new ValueMapper<String, String>() {
|
||||||
@Override
|
@Override
|
||||||
String apply(String textLine) {
|
String apply(String textLine) {
|
||||||
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
|
TEST_WRITER.waitForTraces(1) // ensure consistent ordering of traces
|
||||||
getTestTracer().activeSpan().setTag("asdf", "testing")
|
getTestTracer().activeSpan().setTag("asdf", "testing")
|
||||||
return textLine.toLowerCase()
|
return textLine.toLowerCase()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
KafkaStreams streams
|
KafkaStreams streams
|
||||||
try {
|
try {
|
||||||
|
@ -172,7 +172,7 @@ class KafkaStreamsTest extends AgentTestRunner {
|
||||||
trace(2, 1) {
|
trace(2, 1) {
|
||||||
// CONSUMER span 0
|
// CONSUMER span 0
|
||||||
span(0) {
|
span(0) {
|
||||||
serviceName "kafka"
|
serviceName "unnamed-java-app"
|
||||||
operationName "kafka.consume"
|
operationName "kafka.consume"
|
||||||
resourceName "Consume Topic $STREAM_PROCESSED"
|
resourceName "Consume Topic $STREAM_PROCESSED"
|
||||||
spanType "queue"
|
spanType "queue"
|
||||||
|
|
Loading…
Reference in New Issue