aboutsummaryrefslogtreecommitdiff
path: root/kamon-core
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2017-08-16 20:10:50 +0200
committerIvan Topolnjak <ivantopo@gmail.com>2017-08-16 20:10:50 +0200
commit5e0b768f139fc2c5e75d6b5060bd4d0aa48092b0 (patch)
treec373be3478fc7273faf2c23afbf6572b9e52caec /kamon-core
parent61029e115272b9af3f4460b311d3a2e650c806e3 (diff)
downloadKamon-5e0b768f139fc2c5e75d6b5060bd4d0aa48092b0.tar.gz
Kamon-5e0b768f139fc2c5e75d6b5060bd4d0aa48092b0.tar.bz2
Kamon-5e0b768f139fc2c5e75d6b5060bd4d0aa48092b0.zip
add utility function for including metric and trace tags simultaneously
Diffstat (limited to 'kamon-core')
-rw-r--r--kamon-core/src/main/scala/kamon/trace/Span.scala10
-rw-r--r--kamon-core/src/main/scala/kamon/trace/Tracer.scala6
2 files changed, 16 insertions, 0 deletions
diff --git a/kamon-core/src/main/scala/kamon/trace/Span.scala b/kamon-core/src/main/scala/kamon/trace/Span.scala
index ae67f7f6..ea28142e 100644
--- a/kamon-core/src/main/scala/kamon/trace/Span.scala
+++ b/kamon-core/src/main/scala/kamon/trace/Span.scala
@@ -35,6 +35,8 @@ trait Span {
def annotate(annotation: Span.Annotation): Span
+ def addTag(key: String, value: String): Span
+
def addSpanTag(key: String, value: String): Span
def addSpanTag(key: String, value: Long): Span
@@ -72,6 +74,7 @@ object Span {
override def isEmpty(): Boolean = true
override def isLocal(): Boolean = true
override def annotate(annotation: Annotation): Span = this
+ override def addTag(key: String, value: String): Span = this
override def addSpanTag(key: String, value: String): Span = this
override def addSpanTag(key: String, value: Long): Span = this
override def addSpanTag(key: String, value: Boolean): Span = this
@@ -110,6 +113,12 @@ object Span {
this
}
+ override def addTag(key: String, value: String): Span = synchronized {
+ addSpanTag(key, value)
+ addMetricTag(key, value)
+ this
+ }
+
override def addSpanTag(key: String, value: String): Span = synchronized {
if(sampled && open)
spanTags = spanTags + (key -> TagValue.String(value))
@@ -196,6 +205,7 @@ object Span {
override def isEmpty(): Boolean = false
override def isLocal(): Boolean = false
override def annotate(annotation: Annotation): Span = this
+ override def addTag(key: String, value: String): Span = this
override def addSpanTag(key: String, value: String): Span = this
override def addSpanTag(key: String, value: Long): Span = this
override def addSpanTag(key: String, value: Boolean): Span = this
diff --git a/kamon-core/src/main/scala/kamon/trace/Tracer.scala b/kamon-core/src/main/scala/kamon/trace/Tracer.scala
index 37706926..84cb1899 100644
--- a/kamon-core/src/main/scala/kamon/trace/Tracer.scala
+++ b/kamon-core/src/main/scala/kamon/trace/Tracer.scala
@@ -100,6 +100,12 @@ object Tracer {
this
}
+ def withTag(key: String, value: String): SpanBuilder = {
+ this.initialMetricTags = this.initialMetricTags + (key -> value)
+ this.initialSpanTags = this.initialSpanTags + (key -> TagValue.String(value))
+ this
+ }
+
def withMetricTag(key: String, value: String): SpanBuilder = {
this.initialMetricTags = this.initialMetricTags + (key -> value)
this