v1: serialize span links as structured data and honor baggage tag config.#11810
v1: serialize span links as structured data and honor baggage tag config.#11810AlexeyKuznetsov-DD wants to merge 2 commits into
Conversation
|
/merge |
|
View all feedbacks in Devflow UI.
The expected merge time in
The merge request has been interrupted because the build 5239872126070858024 took longer than expected. The current limit for the base branch 'master' is 120 minutes. Possible reasons:
|
|
/merge |
|
View all feedbacks in Devflow UI.
The expected merge time in
The merge request has been interrupted because the build 7051895293262795330 took longer than expected. The current limit for the base branch 'master' is 120 minutes. Possible reasons:
|
|
🎯 Code Coverage (details) 🔗 Commit SHA: 1e4d4ee | Docs | Datadog PR Page | Give us feedback! |
🟢 Java Benchmark SLOs — All performance SLOs passed
PR vs. master results
Commit: Load and DaCapo benchmarks can be triggered manually in the GitLab pipeline. Results will appear in the Benchmarking Platform UI after completion. |
What Does This Do
Replaces the
v1trace payload'sCoreSpan.processTagsAndBaggage(consumer, injectLinksAsTags, injectBaggageAsTags)with a purpose-namedprocessTagsAndBaggageWithStructuredLinks(consumer):v1serializes links as first-class data and no longer flattens them into the_dd.span_linkstag (injectLinksAsTags = false).v1previously hard-codedinjectBaggageAsTags = false; it now respects the configured value, aligningv1with thev0.4/V0.5paths.CoreSpan(replaced by a default method),DDSpan,DDSpanContext, and the test doubles (SimpleSpan,TraceGenerator).On the test side:
v1coverage inDDSpanSerializationTest.java(structured links not flattened; configured baggage tags).v1decoder into a sharedV1PayloadReader, now used by bothDDSpanSerializationTestandTraceMapperV1PayloadTest.Motivation
system-testsfailed on my branch when I enabledv1by default for tests inTest_Headers_Baggage_Span_Tags.Additional Notes
Verified:
./gradlew :dd-trace-core:test --tests DDSpanSerializationTest --tests TraceMapperV1PayloadTestpasses;spotlessApplyclean.system-testspassed locally:DD_TRACE_DEBUG=true TEST_LIBRARY=java ./run.sh PARAMETRIC tests/parametric/test_headers_baggage.py --force-dd-trace-debugwith both modes:v1orv04enabled.