diff options
Diffstat (limited to 'src/main/scala/kamon/Kamon.scala')
-rw-r--r-- | src/main/scala/kamon/Kamon.scala | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/main/scala/kamon/Kamon.scala b/src/main/scala/kamon/Kamon.scala index c1b97722..8fb3c24a 100644 --- a/src/main/scala/kamon/Kamon.scala +++ b/src/main/scala/kamon/Kamon.scala @@ -1,6 +1,9 @@ package kamon import akka.actor.{Props, ActorSystem} +import scala.collection.JavaConverters._ +import java.util.concurrent.ConcurrentHashMap +import kamon.metric.{Atomic, ActorSystemMetrics} object Kamon { @@ -28,10 +31,26 @@ object Kamon { def publish(tx: FullTransaction) = publisher ! tx + + + object Metric { + val actorSystems = new ConcurrentHashMap[String, ActorSystemMetrics] asScala + + def registerActorSystem(name: String) = actorSystems.getOrElseUpdate(name, ActorSystemMetrics(name)) + + def actorSystem(name: String): Option[ActorSystemMetrics] = actorSystems.get(name) + } + } + + + + + + object Tracer { val ctx = new ThreadLocal[Option[TraceContext]] { override def initialValue() = None |