From 364216f15fcffd9ed4925c8279adaa5055ce9fef Mon Sep 17 00:00:00 2001 From: Ivan Topolnjak Date: Tue, 18 Jul 2017 09:29:19 +0200 Subject: make the remote parent join mode configurable --- kamon-core/src/main/scala/kamon/trace/Tracer.scala | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'kamon-core/src/main/scala/kamon') diff --git a/kamon-core/src/main/scala/kamon/trace/Tracer.scala b/kamon-core/src/main/scala/kamon/trace/Tracer.scala index 1aa07be1..c10974f5 100644 --- a/kamon-core/src/main/scala/kamon/trace/Tracer.scala +++ b/kamon-core/src/main/scala/kamon/trace/Tracer.scala @@ -50,7 +50,7 @@ object Tracer { } private[Tracer] val tracerMetrics = new TracerMetrics(metrics) - @volatile private[Tracer] var joinRemoteSpansWithSameID: Boolean = false + @volatile private[Tracer] var joinRemoteParentsWithSameSpanID: Boolean = true @volatile private[Tracer] var configuredSampler: Sampler = Sampler.Never @volatile private[Tracer] var identityProvider: IdentityProvider = IdentityProvider.Default() @volatile private[Tracer] var textMapSpanContextCodec: SpanContextCodec[TextMap] = SpanContextCodec.ExtendedB3(identityProvider) @@ -101,6 +101,8 @@ object Tracer { case "random" => Sampler.random(traceConfig.getDouble("random-sampler.probability")) case other => sys.error(s"Unexpected sampler name $other.") } + + joinRemoteParentsWithSameSpanID = traceConfig.getBoolean("join-remote-parents-with-same-span-id") } } @@ -160,7 +162,7 @@ object Tracer { } private def joinParentContext(parent: SpanContext, samplingDecision: SamplingDecision): SpanContext = - if(parent.source == Source.Remote && tracer.joinRemoteSpansWithSameID) + if(parent.source == Source.Remote && tracer.joinRemoteParentsWithSameSpanID) parent.copy(samplingDecision = samplingDecision) else parent.createChild(tracer.identityProvider.spanIdentifierGenerator().generate(), samplingDecision) -- cgit v1.2.3