aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/metric/MetricRegistry.scala
diff options
context:
space:
mode:
Diffstat (limited to 'kamon-core/src/main/scala/kamon/metric/MetricRegistry.scala')
-rw-r--r--kamon-core/src/main/scala/kamon/metric/MetricRegistry.scala13
1 files changed, 13 insertions, 0 deletions
diff --git a/kamon-core/src/main/scala/kamon/metric/MetricRegistry.scala b/kamon-core/src/main/scala/kamon/metric/MetricRegistry.scala
index cc111d95..05bff637 100644
--- a/kamon-core/src/main/scala/kamon/metric/MetricRegistry.scala
+++ b/kamon-core/src/main/scala/kamon/metric/MetricRegistry.scala
@@ -26,6 +26,7 @@ import scala.collection.concurrent.TrieMap
import java.time.Duration
import java.util.concurrent.ScheduledExecutorService
+import kamon.status.Status
import org.slf4j.LoggerFactory
@@ -88,6 +89,18 @@ class MetricRegistry(initialConfig: Config, scheduler: ScheduledExecutorService)
metric.asInstanceOf[T]
}
+
+ private[kamon] def status(): Status.MetricRegistry = {
+ var registeredMetrics = Seq.empty[Status.Metric]
+ metrics.foreach {
+ case (metricName, metric) =>
+ metric.incarnations().foreach(incarnation => {
+ registeredMetrics = registeredMetrics :+ Status.Metric(metricName, incarnation, metric.unit, metric.instrumentType)
+ })
+ }
+
+ Status.MetricRegistry(registeredMetrics)
+ }
}
trait MetricsSnapshotGenerator {