aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/metrics/Metrics.scala
diff options
context:
space:
mode:
authorIvan Topolnak <itopolnak@despegar.com>2014-03-06 18:08:59 -0300
committerIvan Topolnak <itopolnak@despegar.com>2014-03-06 18:08:59 -0300
commit347319f58f7aca927729c5144b3d7d59750be7e4 (patch)
treef1790f322062d4df7d0919a944ef591f6286b9a2 /kamon-core/src/main/scala/kamon/metrics/Metrics.scala
parente2cc143f49398bbeafd9c796c5a0b4bf4a6d7958 (diff)
downloadKamon-347319f58f7aca927729c5144b3d7d59750be7e4.tar.gz
Kamon-347319f58f7aca927729c5144b3d7d59750be7e4.tar.bz2
Kamon-347319f58f7aca927729c5144b3d7d59750be7e4.zip
support for custom metrics
Diffstat (limited to 'kamon-core/src/main/scala/kamon/metrics/Metrics.scala')
-rw-r--r--kamon-core/src/main/scala/kamon/metrics/Metrics.scala11
1 files changed, 9 insertions, 2 deletions
diff --git a/kamon-core/src/main/scala/kamon/metrics/Metrics.scala b/kamon-core/src/main/scala/kamon/metrics/Metrics.scala
index 81475d52..f7ee833b 100644
--- a/kamon-core/src/main/scala/kamon/metrics/Metrics.scala
+++ b/kamon-core/src/main/scala/kamon/metrics/Metrics.scala
@@ -34,11 +34,18 @@ trait MetricIdentity {
def tag: String
}
-trait MetricGroupRecorder {
- def record(identity: MetricIdentity, value: Long)
+sealed trait MetricGroupRecorder {
def collect: MetricGroupSnapshot
}
+trait MetricMultiGroupRecorder extends MetricGroupRecorder {
+ def record(identity: MetricIdentity, value: Long)
+}
+
+trait MetricSingleGroupRecorder extends MetricGroupRecorder {
+ def record(value: Long)
+}
+
trait MetricGroupSnapshot {
def metrics: Map[MetricIdentity, MetricSnapshot]
}