Skip to content

Commit 18b513c

Browse files
authored
Merge pull request #136 from DataDog/tyler/fix-headers
Fix headers to match standard DD trace headers
2 parents 20fc790 + cfe36d0 commit 18b513c

File tree

6 files changed

+27
-23
lines changed

6 files changed

+27
-23
lines changed

dd-java-agent/integrations/helpers/src/main/java/com/datadoghq/agent/integration/Servlet2Helper.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,10 @@ public void onError(
7171
}
7272

7373
final ActiveSpan span = tracer.activeSpan();
74-
ServletFilterSpanDecorator.STANDARD_TAGS.onError(req, resp, ex, span);
75-
span.deactivate();
74+
if (span != null) {
75+
ServletFilterSpanDecorator.STANDARD_TAGS.onError(req, resp, ex, span);
76+
span.deactivate();
77+
}
7678
}
7779

7880
public void onResponse(final HttpServletRequest req, final HttpServletResponse resp) {
@@ -82,7 +84,9 @@ public void onResponse(final HttpServletRequest req, final HttpServletResponse r
8284
}
8385

8486
final ActiveSpan span = tracer.activeSpan();
85-
ServletFilterSpanDecorator.STANDARD_TAGS.onResponse(req, resp, span);
86-
span.deactivate();
87+
if (span != null) {
88+
ServletFilterSpanDecorator.STANDARD_TAGS.onResponse(req, resp, span);
89+
span.deactivate();
90+
}
8791
}
8892
}

dd-java-agent/integrations/helpers/src/main/java/com/datadoghq/agent/integration/Servlet3Helper.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,14 @@ public void onResponse(final HttpServletRequest req, final HttpServletResponse r
3333
}
3434

3535
final ActiveSpan span = tracer.activeSpan();
36-
if (req.isAsyncStarted()) {
37-
addAsyncListeners(req, resp, span);
38-
} else {
39-
ServletFilterSpanDecorator.STANDARD_TAGS.onResponse(req, resp, span);
36+
if (span != null) {
37+
if (req.isAsyncStarted()) {
38+
addAsyncListeners(req, resp, span);
39+
} else {
40+
ServletFilterSpanDecorator.STANDARD_TAGS.onResponse(req, resp, span);
41+
}
42+
span.deactivate();
4043
}
41-
span.deactivate();
4244
}
4345

4446
private void addAsyncListeners(

dd-trace-examples/spring-boot-jdbc/src/main/java/com/datadoghq/examples/Application.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
@SpringBootApplication
77
public class Application {
88

9-
public static void main(String[] args) {
9+
public static void main(final String[] args) {
1010
SpringApplication.run(Application.class, args);
1111
}
1212
}

dd-trace-examples/spring-boot-jdbc/src/main/resources/application.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# you must set the following so that OpenTracing traced driver is used
22
spring.datasource.driver-class-name=io.opentracing.contrib.jdbc.TracingDriver
3-
spring.datasource.url=jdbc:tracing:h2:mem:spring-test
3+
spring.datasource.url=jdbc:tracing:h2:mem:spring-test;DB_CLOSE_ON_EXIT=FALSE
44

55
# set the logging level
66
logging.level.root=INFO

dd-trace/src/main/java/com/datadoghq/trace/propagation/HTTPCodec.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,9 @@
1414
@Slf4j
1515
public class HTTPCodec implements Codec<TextMap> {
1616

17-
private static final String OT_PREFIX = "ot-tracer-";
1817
private static final String OT_BAGGAGE_PREFIX = "ot-baggage-";
19-
private static final String TRACE_ID_KEY = OT_PREFIX + "traceid";
20-
private static final String SPAN_ID_KEY = OT_PREFIX + "spanid";
18+
private static final String TRACE_ID_KEY = "x-datadog-trace-id";
19+
private static final String SPAN_ID_KEY = "x-datadog-parent-id";
2120

2221
@Override
2322
public void inject(final DDSpanContext context, final TextMap carrier) {

dd-trace/src/test/java/com/datadoghq/trace/propagation/HTTPCodecTest.java

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,14 @@
1212
/** Created by gpolaert on 6/23/17. */
1313
public class HTTPCodecTest {
1414

15-
private static final String OT_PREFIX = "ot-tracer-";
1615
private static final String OT_BAGGAGE_PREFIX = "ot-baggage-";
17-
private static final String TRACE_ID_KEY = OT_PREFIX + "traceid";
18-
private static final String SPAN_ID_KEY = OT_PREFIX + "spanid";
16+
private static final String TRACE_ID_KEY = "x-datadog-trace-id";
17+
private static final String SPAN_ID_KEY = "x-datadog-parent-id";
1918

2019
@Test
2120
public void shoudAddHttpHeaders() {
2221

23-
DDSpanContext mockedContext =
22+
final DDSpanContext mockedContext =
2423
new DDSpanContext(
2524
1L,
2625
2L,
@@ -40,9 +39,9 @@ public void shoudAddHttpHeaders() {
4039
null,
4140
null);
4241

43-
Map<String, String> carrier = new HashMap<>();
42+
final Map<String, String> carrier = new HashMap<>();
4443

45-
HTTPCodec codec = new HTTPCodec();
44+
final HTTPCodec codec = new HTTPCodec();
4645
codec.inject(mockedContext, new TextMapInjectAdapter(carrier));
4746

4847
assertThat(carrier.get(TRACE_ID_KEY)).isEqualTo("1");
@@ -54,7 +53,7 @@ public void shoudAddHttpHeaders() {
5453
@Test
5554
public void shoudReadHttpHeaders() {
5655

57-
Map<String, String> actual =
56+
final Map<String, String> actual =
5857
new HashMap<String, String>() {
5958
{
6059
put(TRACE_ID_KEY, "1");
@@ -64,8 +63,8 @@ public void shoudReadHttpHeaders() {
6463
}
6564
};
6665

67-
HTTPCodec codec = new HTTPCodec();
68-
DDSpanContext context = codec.extract(new TextMapExtractAdapter(actual));
66+
final HTTPCodec codec = new HTTPCodec();
67+
final DDSpanContext context = codec.extract(new TextMapExtractAdapter(actual));
6968

7069
assertThat(context.getTraceId()).isEqualTo(1l);
7170
assertThat(context.getSpanId()).isEqualTo(2l);

0 commit comments

Comments
 (0)