diff options
Diffstat (limited to 'kamon-trace/src/main/scala/kamon/trace/Trace.scala')
-rw-r--r-- | kamon-trace/src/main/scala/kamon/trace/Trace.scala | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/kamon-trace/src/main/scala/kamon/trace/Trace.scala b/kamon-trace/src/main/scala/kamon/trace/Trace.scala index d733c5de..05519067 100644 --- a/kamon-trace/src/main/scala/kamon/trace/Trace.scala +++ b/kamon-trace/src/main/scala/kamon/trace/Trace.scala @@ -27,17 +27,13 @@ object Trace extends ExtensionId[TraceExtension] with ExtensionIdProvider { def lookup(): ExtensionId[_ <: Extension] = Trace def createExtension(system: ExtendedActorSystem): TraceExtension = new TraceExtension(system) - /*** Protocol */ case object Register - - /** User API */ private[trace] val traceContext = new DynamicVariable[Option[TraceContext]](None) private[trace] val tranid = new AtomicLong() - def context() = traceContext.value def set(ctx: TraceContext) = traceContext.value = Some(ctx) @@ -50,9 +46,9 @@ object Trace extends ExtensionId[TraceExtension] with ExtensionIdProvider { ctx } - def withContext[T](ctx: Option[TraceContext])(thunk: => T): T = traceContext.withValue(ctx)(thunk) + def withContext[T](ctx: Option[TraceContext])(thunk: ⇒ T): T = traceContext.withValue(ctx)(thunk) - def transformContext(f: TraceContext => TraceContext): Unit = { + def transformContext(f: TraceContext ⇒ TraceContext): Unit = { context.map(f).foreach(set(_)) } @@ -74,16 +70,16 @@ class TraceManager extends Actor with ActorLogging { var listeners: Seq[ActorRef] = Seq.empty def receive = { - case Register => + case Register ⇒ listeners = sender +: listeners log.info("Registered [{}] as listener for Kamon traces", sender) - case segment: UowSegment => + case segment: UowSegment ⇒ val tracerName = segment.id.toString context.child(tracerName).getOrElse(newTracer(tracerName)) ! segment - case trace: UowTrace => - listeners foreach(_ ! trace) + case trace: UowTrace ⇒ + listeners foreach (_ ! trace) } def newTracer(name: String): ActorRef = { |