aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/TraceContext.scala
diff options
context:
space:
mode:
authorDiego Parra <diegolparra@gmail.com>2013-09-19 08:58:34 -0300
committerDiego Parra <diegolparra@gmail.com>2013-10-01 17:52:28 -0300
commit5ffb3a50be348237fda9a8176b508284c59261af (patch)
tree0d83e1d25bf4a7c2fbff67dc53316954d7706171 /kamon-core/src/main/scala/kamon/TraceContext.scala
parentfdd4b8817a57c94f7228c5ad6a8028f5aa7a21e4 (diff)
downloadKamon-5ffb3a50be348237fda9a8176b508284c59261af.tar.gz
Kamon-5ffb3a50be348237fda9a8176b508284c59261af.tar.bz2
Kamon-5ffb3a50be348237fda9a8176b508284c59261af.zip
Envelope Instrumentation and some cleanup
Diffstat (limited to 'kamon-core/src/main/scala/kamon/TraceContext.scala')
-rw-r--r--kamon-core/src/main/scala/kamon/TraceContext.scala21
1 files changed, 9 insertions, 12 deletions
diff --git a/kamon-core/src/main/scala/kamon/TraceContext.scala b/kamon-core/src/main/scala/kamon/TraceContext.scala
index 73186a18..23da7001 100644
--- a/kamon-core/src/main/scala/kamon/TraceContext.scala
+++ b/kamon-core/src/main/scala/kamon/TraceContext.scala
@@ -6,6 +6,7 @@ import java.util.concurrent.atomic.AtomicLong
import kamon.trace.UowTraceAggregator
import scala.concurrent.duration._
import kamon.newrelic.NewRelicReporting
+import kamon.trace.UowTracing.Start
// TODO: Decide if we need or not an ID, generating it takes time and it doesn't seem necessary.
case class TraceContext(id: Long, entries: ActorRef, userContext: Option[Any] = None) {
@@ -19,7 +20,13 @@ case class TraceContext(id: Long, entries: ActorRef, userContext: Option[Any] =
object TraceContext {
val reporter = Kamon.actorSystem.actorOf(Props[NewRelicReporting])
val traceIdCounter = new AtomicLong
- def apply()(implicit system: ActorSystem) = new TraceContext(100, system.actorOf(UowTraceAggregator.props(reporter, 30 seconds), "tracer-"+traceIdCounter.incrementAndGet())) // TODO: Move to a kamon specific supervisor, like /user/kamon/tracer
+
+ def apply()(implicit system: ActorSystem) = {
+ val actor = system.actorOf(UowTraceAggregator.props(reporter, 30 seconds), s"tracer-${traceIdCounter.incrementAndGet()}")
+ actor ! Start()
+
+ new TraceContext(100, actor) // TODO: Move to a kamon specific supervisor, like /user/kamon/tracer
+ }
}
@@ -32,20 +39,10 @@ class TraceAccumulator extends Actor {
trait TraceEntry
-
case class CodeBlockExecutionTime(name: String, begin: Long, end: Long) extends TraceEntry
-
-
-
case class TransactionTrace(id: UUID, start: Long, end: Long, entries: Seq[TraceEntry])
-
-
-
-
-object Collector {
-
-}
+object Collector
trait TraceEntryStorage {
def store(entry: TraceEntry): Boolean