Merge pull request #32615 from marcingrzejszczak
* gh-32615: Make auto-configured Brave Tracer more compliant with OTel tracer Closes gh-32615
This commit is contained in:
commit
006d2edcd5
|
|
@ -92,8 +92,9 @@ public class BraveAutoConfiguration {
|
||||||
List<TracingCustomizer> tracingCustomizers, CurrentTraceContext currentTraceContext,
|
List<TracingCustomizer> tracingCustomizers, CurrentTraceContext currentTraceContext,
|
||||||
Factory propagationFactory, Sampler sampler) {
|
Factory propagationFactory, Sampler sampler) {
|
||||||
String applicationName = environment.getProperty("spring.application.name", DEFAULT_APPLICATION_NAME);
|
String applicationName = environment.getProperty("spring.application.name", DEFAULT_APPLICATION_NAME);
|
||||||
Builder builder = Tracing.newBuilder().currentTraceContext(currentTraceContext)
|
Builder builder = Tracing.newBuilder().currentTraceContext(currentTraceContext).traceId128Bit(true)
|
||||||
.propagationFactory(propagationFactory).sampler(sampler).localServiceName(applicationName);
|
.supportsJoin(false).propagationFactory(propagationFactory).sampler(sampler)
|
||||||
|
.localServiceName(applicationName);
|
||||||
for (SpanHandler spanHandler : spanHandlers) {
|
for (SpanHandler spanHandler : spanHandlers) {
|
||||||
builder.addSpanHandler(spanHandler);
|
builder.addSpanHandler(spanHandler);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@
|
||||||
|
|
||||||
package org.springframework.boot.actuate.autoconfigure.tracing;
|
package org.springframework.boot.actuate.autoconfigure.tracing;
|
||||||
|
|
||||||
|
import brave.Span;
|
||||||
import brave.Tracer;
|
import brave.Tracer;
|
||||||
import brave.Tracing;
|
import brave.Tracing;
|
||||||
import brave.baggage.BaggagePropagation;
|
import brave.baggage.BaggagePropagation;
|
||||||
|
|
@ -211,6 +212,27 @@ class BraveAutoConfigurationTests {
|
||||||
.run((context) -> assertThat(context).hasBean("mdcCorrelationScopeDecoratorBuilder"));
|
.run((context) -> assertThat(context).hasBean("mdcCorrelationScopeDecoratorBuilder"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void shouldHave128BitTraceId() {
|
||||||
|
this.contextRunner.run((context) -> {
|
||||||
|
Tracing tracing = context.getBean(Tracing.class);
|
||||||
|
Span span = tracing.tracer().nextSpan();
|
||||||
|
assertThat(span.context().traceIdString()).hasSize(32);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void shouldNotSupportJoinedSpans() {
|
||||||
|
this.contextRunner.run((context) -> {
|
||||||
|
Tracing tracing = context.getBean(Tracing.class);
|
||||||
|
Span parentSpan = tracing.tracer().nextSpan();
|
||||||
|
Span childSpan = tracing.tracer().joinSpan(parentSpan.context());
|
||||||
|
assertThat(parentSpan.context().traceIdString()).isEqualTo(childSpan.context().traceIdString());
|
||||||
|
assertThat(parentSpan.context().spanIdString()).isEqualTo(childSpan.context().parentIdString());
|
||||||
|
assertThat(parentSpan.context().spanIdString()).isNotEqualTo(childSpan.context().spanIdString());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
@Configuration(proxyBeanMethods = false)
|
@Configuration(proxyBeanMethods = false)
|
||||||
private static class CustomConfiguration {
|
private static class CustomConfiguration {
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue