aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/trace/Tracer.scala
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2017-07-18 10:01:38 +0200
committerIvan Topolnjak <ivantopo@gmail.com>2017-07-18 10:01:38 +0200
commit9b6878da2fbfb1328e972a885a6fdc077e08aaf9 (patch)
tree26392290b76ea3d4b7aaa9a108c315adca803168 /kamon-core/src/main/scala/kamon/trace/Tracer.scala
parent8a035052392ed073cdcb690262c0ef300154918b (diff)
downloadKamon-9b6878da2fbfb1328e972a885a6fdc077e08aaf9.tar.gz
Kamon-9b6878da2fbfb1328e972a885a6fdc077e08aaf9.tar.bz2
Kamon-9b6878da2fbfb1328e972a885a6fdc077e08aaf9.zip
introduce types for Span tags
Diffstat (limited to 'kamon-core/src/main/scala/kamon/trace/Tracer.scala')
-rw-r--r--kamon-core/src/main/scala/kamon/trace/Tracer.scala16
1 files changed, 14 insertions, 2 deletions
diff --git a/kamon-core/src/main/scala/kamon/trace/Tracer.scala b/kamon-core/src/main/scala/kamon/trace/Tracer.scala
index c10974f5..d7ca5609 100644
--- a/kamon-core/src/main/scala/kamon/trace/Tracer.scala
+++ b/kamon-core/src/main/scala/kamon/trace/Tracer.scala
@@ -21,6 +21,7 @@ import java.nio.ByteBuffer
import com.typesafe.config.Config
import kamon.ReporterRegistryImpl
import kamon.metric.MetricLookup
+import kamon.trace.Span.TagValue
import kamon.trace.SpanContext.{SamplingDecision, Source}
import kamon.trace.Tracer.SpanBuilder
import kamon.util.Clock
@@ -114,7 +115,7 @@ object Tracer {
final class SpanBuilder(operationName: String, tracer: Tracer.Default, reporterRegistry: ReporterRegistryImpl) {
private var parentContext: SpanContext = _
private var startTimestamp = 0L
- private var initialTags = Map.empty[String, String]
+ private var initialTags = Map.empty[String, Span.TagValue]
private var useActiveSpanAsParent = true
def asChildOf(parentContext: SpanContext): SpanBuilder = {
@@ -126,7 +127,18 @@ object Tracer {
asChildOf(parentSpan.context())
def withSpanTag(key: String, value: String): SpanBuilder = {
- this.initialTags = this.initialTags + (key -> value)
+ this.initialTags = this.initialTags + (key -> TagValue.String(value))
+ this
+ }
+
+ def withSpanTag(key: String, value: Long): SpanBuilder = {
+ this.initialTags = this.initialTags + (key -> TagValue.Number(value))
+ this
+ }
+
+ def withSpanTag(key: String, value: Boolean): SpanBuilder = {
+ val tagValue = if (value) TagValue.True else TagValue.False
+ this.initialTags = this.initialTags + (key -> tagValue)
this
}