aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/trace/Span.scala
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2017-06-11 10:02:22 +0200
committerIvan Topolnjak <ivantopo@gmail.com>2017-06-11 10:02:22 +0200
commite8d3e612dcf0fa396a25920a23f108f6ab8c2e61 (patch)
treee1d702aa2eabbfabc9690a5cdc3ca6ac59ae69b9 /kamon-core/src/main/scala/kamon/trace/Span.scala
parentde3e823cec6ec12d551f568b73d2ad1061944222 (diff)
downloadKamon-e8d3e612dcf0fa396a25920a23f108f6ab8c2e61.tar.gz
Kamon-e8d3e612dcf0fa396a25920a23f108f6ab8c2e61.tar.bz2
Kamon-e8d3e612dcf0fa396a25920a23f108f6ab8c2e61.zip
separate metrics from instruments and add default instrument for metrics
Diffstat (limited to 'kamon-core/src/main/scala/kamon/trace/Span.scala')
-rw-r--r--kamon-core/src/main/scala/kamon/trace/Span.scala11
1 files changed, 7 insertions, 4 deletions
diff --git a/kamon-core/src/main/scala/kamon/trace/Span.scala b/kamon-core/src/main/scala/kamon/trace/Span.scala
index a23c1f49..583c2b35 100644
--- a/kamon-core/src/main/scala/kamon/trace/Span.scala
+++ b/kamon-core/src/main/scala/kamon/trace/Span.scala
@@ -16,13 +16,12 @@
package kamon
package trace
-import kamon.metric.MetricLookup
import scala.collection.JavaConverters._
import kamon.util.{Clock, MeasurementUnit}
class Span(spanContext: SpanContext, initialOperationName: String, initialTags: Map[String, String], startTimestampMicros: Long,
- metrics: MetricLookup, reporterRegistry: ReporterRegistryImpl) extends io.opentracing.Span {
+ reporterRegistry: ReporterRegistryImpl) extends io.opentracing.Span {
private var isOpen: Boolean = true
private val sampled: Boolean = spanContext.sampled
@@ -154,18 +153,22 @@ class Span(spanContext: SpanContext, initialOperationName: String, initialTags:
val elapsedTime = endTimestampMicros - startTimestampMicros
val metricTags = Map("operation" -> operationName) ++ additionalMetricTags
- val latencyHistogram = metrics.histogram("span.processing-time", MeasurementUnit.time.microseconds, metricTags)
+ val latencyHistogram = Span.Metrics.SpanProcessingTimeMetric.refine(metricTags)
latencyHistogram.record(elapsedTime)
tags.get("error").foreach { errorTag =>
if(errorTag != null && errorTag.equals(Span.BooleanTagTrueValue)) {
- metrics.counter("span.errors", MeasurementUnit.none, metricTags).increment()
+ //TODO: count properly metrics.counter("span.errors", MeasurementUnit.none, metricTags).increment()
}
}
}
}
object Span {
+ object Metrics {
+ val SpanProcessingTimeMetric = Kamon.histogram("span.processing-time", MeasurementUnit.time.microseconds)
+ }
+
val MetricTagPrefix = "metric."
val BooleanTagTrueValue = "1"
val BooleanTagFalseValue = "0"