diff options
Diffstat (limited to 'kamon-core/src/main/resources/reference.conf')
-rw-r--r-- | kamon-core/src/main/resources/reference.conf | 59 |
1 files changed, 55 insertions, 4 deletions
diff --git a/kamon-core/src/main/resources/reference.conf b/kamon-core/src/main/resources/reference.conf index 6ad06325..ad180f1c 100644 --- a/kamon-core/src/main/resources/reference.conf +++ b/kamon-core/src/main/resources/reference.conf @@ -85,20 +85,71 @@ kamon { reporter-queue-size = 1024 + # Decide whether a new, locally created Span should have the same Span Identifier as it's remote parent (if any) or + # get a new local identifier. Certain tracing systems use the same Span Identifier to represent both sides (client + # and server) of a RPC call, if you are reporting data to such systems then this option should be enabled. + # + # If you are using Zipkin, keep this option enabled. If you are using Jaeger, disable it. + join-remote-parents-with-same-span-id = no + # Configures a sample that decides which traces should be reported to the trace backends. The possible values are: # - always: report all traces. # - never: don't report any trace. - # - random: use the random tracer. + # - random: randomly decide using the probability defined in the random-sampler.probability setting. # sampler = "random" # The random sampler uses the "chance" setting and a random number to take a decision, if the random number is # on the upper (chance * 100) percent of the number spectrum the trace will be sampled. E.g. a chance of 0.01 will # hint that 1% of all traces should be reported. - sampler-random { + random-sampler { + + # Probability of a span being sampled. Must be a value between 0 and 1. + probability = 0.01 + } + + # The IdentityProvider used to generate Trace and Span Identifiers in Kamon. There are two default implementations + # that ship with Kamon: + # - kamon.trace.IdentityProvider$Default: Creates 8-byte identifiers for both Traces and Spans. + # - kamon.trace.IdentityProvider$DoubleSizeTraceID: Creates 16-byte identifiers for Traces and 8-byte identifiers + # for Spans. + # + # Any external implementation can be configured here, as long as it can be instantiated with a parameterless constructor. + identity-provider = "kamon.trace.IdentityProvider$Default" + + # The SpanContextCodecs are used to encode/decode the SpanContext data into simple TextMaps, HTTP Headers or Binary + # carriers. The decision about which one to use is based on the kamon.trace.SpanContextCodec.Format instance passed + # to inject/extract calls. + # + # Any external implementation can be configured here, as long as it can be instantiated with a single parameter + # constructor that accepts a IdentityProvider. + span-context-codec { + + # Encodes/Decodes the SpanContext data using a simple key/value pair. Since this is very rarely going to be used + # we default to using the same codec for HTTP Headers, as it is built on top of a TextMap. + text-map = "kamon.trace.SpanContextCodec$ExtendedB3" + + # Encodes/Decodes the SpanContext into a TextMap with HTTP Header friendly, URLEncoded values. The default + # implementation follows the guidelines of B3 propagation. See more at https://github.com/openzipkin/b3-propagation. + http-headers = "kamon.trace.SpanContextCodec$ExtendedB3" - # Chance of a span being sampled. Must be a value between 0 and 1. - chance = 0.01 + # Encodes/Decodes the SpanContext using a binary representation. + binary = "TODO" + } + + + } + + context { + encoding { + + http-headers { + span = "kamon.trace.SpanCodec$B3" + } + + binary { + # span = "kamon.trace.propagation.Binary" + } } } |