diff options
author | João Ferreira <jtjeferreira@gmail.com> | 2015-06-26 17:47:00 +0100 |
---|---|---|
committer | João Ferreira <jtjeferreira@gmail.com> | 2015-06-26 18:02:21 +0100 |
commit | 7e74030ea824a6b6a561880103f69f3e8e409bba (patch) | |
tree | 77eb6fd87599564d309d0abc02132fd2d46070ec /kamon-core/src/main/scala/kamon/trace/TracerModule.scala | |
parent | ea0da37b4a9f769b498fde269dc28b6bad06ab64 (diff) | |
download | Kamon-7e74030ea824a6b6a561880103f69f3e8e409bba.tar.gz Kamon-7e74030ea824a6b6a561880103f69f3e8e409bba.tar.bz2 Kamon-7e74030ea824a6b6a561880103f69f3e8e409bba.zip |
+ core: kamon.trace.token-generator conf
Diffstat (limited to 'kamon-core/src/main/scala/kamon/trace/TracerModule.scala')
-rw-r--r-- | kamon-core/src/main/scala/kamon/trace/TracerModule.scala | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/kamon-core/src/main/scala/kamon/trace/TracerModule.scala b/kamon-core/src/main/scala/kamon/trace/TracerModule.scala index 416af20e..88464a30 100644 --- a/kamon-core/src/main/scala/kamon/trace/TracerModule.scala +++ b/kamon-core/src/main/scala/kamon/trace/TracerModule.scala @@ -16,17 +16,12 @@ package kamon.trace -import java.net.InetAddress -import java.util.concurrent.atomic.AtomicLong - import akka.actor._ import com.typesafe.config.Config import kamon.Kamon import kamon.metric.MetricsModule import kamon.util._ -import scala.util.Try - trait TracerModule { def newContext(name: String): TraceContext def newContext(name: String, token: Option[String]): TraceContext @@ -96,14 +91,13 @@ object Tracer { private[kamon] class TracerModuleImpl(metricsExtension: MetricsModule, config: Config) extends TracerModule { private val _settings = TraceSettings(config) - private val _hostnamePrefix = Try(InetAddress.getLocalHost.getHostName).getOrElse("unknown-localhost") - private val _tokenCounter = new AtomicLong private val _subscriptions = new LazyActorRef private val _incubator = new LazyActorRef + private val _dynamic = new akka.actor.ReflectiveDynamicAccess(getClass.getClassLoader) + private val _tokenGenerator = _dynamic.createInstanceFor[Function0[String]](_settings.tokenGeneratorFQN, Nil).get // let's bubble up any problems. - private def newToken: String = - _hostnamePrefix + "-" + String.valueOf(_tokenCounter.incrementAndGet()) + private def newToken: String = _tokenGenerator() def newContext(name: String): TraceContext = createTraceContext(name, None) |