diff options
Diffstat (limited to 'kamon-core/src/main/scala/kamon/Kamon.scala')
-rw-r--r-- | kamon-core/src/main/scala/kamon/Kamon.scala | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/kamon-core/src/main/scala/kamon/Kamon.scala b/kamon-core/src/main/scala/kamon/Kamon.scala index 00026b77..f07f846b 100644 --- a/kamon-core/src/main/scala/kamon/Kamon.scala +++ b/kamon-core/src/main/scala/kamon/Kamon.scala @@ -16,9 +16,26 @@ package kamon import _root_.akka.actor import _root_.akka.actor._ +import com.typesafe.config.Config +import kamon.metric._ +import kamon.trace.{ Tracer, TracerExtension } + +class Kamon(val actorSystem: ActorSystem) { + val metrics: MetricsExtension = Metrics.get(actorSystem) + val tracer: TracerExtension = Tracer.get(actorSystem) + val userMetrics: UserMetricsExtension = UserMetrics.get(actorSystem) +} object Kamon { trait Extension extends actor.Extension def apply[T <: Extension](key: ExtensionId[T])(implicit system: ActorSystem): T = key(system) -} + def apply(actorSystemName: String): Kamon = + apply(ActorSystem(actorSystemName)) + + def apply(actorSystemName: String, config: Config): Kamon = + apply(ActorSystem(actorSystemName, config)) + + def apply(system: ActorSystem): Kamon = + new Kamon(system) +}
\ No newline at end of file |