From 1f4e5e64619a359880413cc6baf2182f5609753b Mon Sep 17 00:00:00 2001 From: Ivan Topolnjak Date: Fri, 20 Mar 2015 15:52:00 +0100 Subject: ! statsd: report segment metrics as sub-metrics of the correspondant trace. --- .../scala/kamon/statsd/SimpleMetricKeyGenerator.scala | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'kamon-statsd/src') diff --git a/kamon-statsd/src/main/scala/kamon/statsd/SimpleMetricKeyGenerator.scala b/kamon-statsd/src/main/scala/kamon/statsd/SimpleMetricKeyGenerator.scala index fc72e837..97a27ff3 100644 --- a/kamon-statsd/src/main/scala/kamon/statsd/SimpleMetricKeyGenerator.scala +++ b/kamon-statsd/src/main/scala/kamon/statsd/SimpleMetricKeyGenerator.scala @@ -26,12 +26,16 @@ class SimpleMetricKeyGenerator(config: Config) extends MetricKeyGenerator { if (includeHostname) s"$application.$normalizedHostname" else application - def generateKey(entity: Entity, metricKey: MetricKey): String = { - val normalizedGroupName = normalizer(entity.name) - if (SingleInstrumentEntityRecorder.AllCategories.contains(entity.category)) - s"${baseName}.${entity.category}.${normalizedGroupName}" - else - s"${baseName}.${entity.category}.${normalizedGroupName}.${metricKey.name}" + def generateKey(entity: Entity, metricKey: MetricKey): String = entity.category match { + case "trace-segment" ⇒ + s"${baseName}.trace.${normalizer(entity.tags("trace"))}.segments.${normalizer(entity.name)}.${metricKey.name}" + + case _ if SingleInstrumentEntityRecorder.AllCategories.contains(entity.category) ⇒ + s"${baseName}.${entity.category}.${normalizer(entity.name)}" + + case _ ⇒ + s"${baseName}.${entity.category}.${normalizer(entity.name)}.${metricKey.name}" + } def hostName: String = ManagementFactory.getRuntimeMXBean.getName.split('@')(1) -- cgit v1.2.3