aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2017-07-18 09:10:59 +0200
committerIvan Topolnjak <ivantopo@gmail.com>2017-07-18 09:10:59 +0200
commitba35b9859a342bf9d6ceb12e169333f3b68f8b05 (patch)
tree33cc325248798eb843f896e6285b3cf2c666ffe8
parentcce0b5d9320c78fc66197104b68d1d9dddebf007 (diff)
downloadKamon-ba35b9859a342bf9d6ceb12e169333f3b68f8b05.tar.gz
Kamon-ba35b9859a342bf9d6ceb12e169333f3b68f8b05.tar.bz2
Kamon-ba35b9859a342bf9d6ceb12e169333f3b68f8b05.zip
use "probability" instead of "chance" terms for the random sampler
-rw-r--r--kamon-core/src/main/resources/reference.conf8
-rw-r--r--kamon-core/src/main/scala/kamon/trace/Sampler.scala20
-rw-r--r--kamon-core/src/main/scala/kamon/trace/Tracer.scala8
3 files changed, 18 insertions, 18 deletions
diff --git a/kamon-core/src/main/resources/reference.conf b/kamon-core/src/main/resources/reference.conf
index 6ad06325..06da8e18 100644
--- a/kamon-core/src/main/resources/reference.conf
+++ b/kamon-core/src/main/resources/reference.conf
@@ -88,17 +88,17 @@ kamon {
# 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 {
- # Chance of a span being sampled. Must be a value between 0 and 1.
- chance = 0.01
+ # Probability of a span being sampled. Must be a value between 0 and 1.
+ probability = 0.01
}
}
diff --git a/kamon-core/src/main/scala/kamon/trace/Sampler.scala b/kamon-core/src/main/scala/kamon/trace/Sampler.scala
index f478bbd1..e2aefe22 100644
--- a/kamon-core/src/main/scala/kamon/trace/Sampler.scala
+++ b/kamon-core/src/main/scala/kamon/trace/Sampler.scala
@@ -23,15 +23,15 @@ trait Sampler {
}
object Sampler {
- val always = new Constant(SamplingDecision.Sample)
- val never = new Constant(SamplingDecision.DoNotSample)
+ val Always = new Constant(SamplingDecision.Sample)
+ val Never = new Constant(SamplingDecision.DoNotSample)
- def random(chance: Double): Sampler = {
- assert(chance >= 0D && chance <= 1.0D, "Change should be >= 0 and <= 1.0")
+ def random(probability: Double): Sampler = {
+ assert(probability >= 0D && probability <= 1.0D, "The probability should be >= 0 and <= 1.0")
- chance match {
- case 0D => never
- case 1.0D => always
+ probability match {
+ case 0D => Never
+ case 1.0D => Always
case anyOther => new Random(anyOther)
}
}
@@ -43,8 +43,8 @@ object Sampler {
s"Sampler.Constant(decision = $decision)"
}
- class Random(chance: Double) extends Sampler {
- val upperBoundary = Long.MaxValue * chance
+ class Random(probability: Double) extends Sampler {
+ val upperBoundary = Long.MaxValue * probability
val lowerBoundary = -upperBoundary
override def decide(operationName: String, builderTags: Map[String, String]): SamplingDecision = {
@@ -53,6 +53,6 @@ object Sampler {
}
override def toString: String =
- s"Sampler.Random(chance = $chance)"
+ s"Sampler.Random(probability = $probability)"
}
}
diff --git a/kamon-core/src/main/scala/kamon/trace/Tracer.scala b/kamon-core/src/main/scala/kamon/trace/Tracer.scala
index ecc690af..85d02c8d 100644
--- a/kamon-core/src/main/scala/kamon/trace/Tracer.scala
+++ b/kamon-core/src/main/scala/kamon/trace/Tracer.scala
@@ -51,7 +51,7 @@ object Tracer {
private[Tracer] val tracerMetrics = new TracerMetrics(metrics)
@volatile private[Tracer] var joinRemoteSpansWithSameID: Boolean = false
- @volatile private[Tracer] var configuredSampler: Sampler = Sampler.never
+ @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)
@volatile private[Tracer] var httpHeaderSpanContextCodec: SpanContextCodec[TextMap] = SpanContextCodec.ExtendedB3(identityProvider)
@@ -99,9 +99,9 @@ object Tracer {
val traceConfig = config.getConfig("kamon.trace")
configuredSampler = traceConfig.getString("sampler") match {
- case "always" => Sampler.always
- case "never" => Sampler.never
- case "random" => Sampler.random(traceConfig.getDouble("sampler-random.chance"))
+ case "always" => Sampler.Always
+ case "never" => Sampler.Never
+ case "random" => Sampler.random(traceConfig.getDouble("random-sampler.probability"))
case other => sys.error(s"Unexpected sampler name $other.")
}
}