diff options
author | Ivan Topolnjak <ivantopo@gmail.com> | 2016-12-24 03:14:29 +0100 |
---|---|---|
committer | Ivan Topolnjak <ivantopo@gmail.com> | 2016-12-24 03:17:06 +0100 |
commit | becf6cac7142011cc478ab7ab15d51799b190951 (patch) | |
tree | ebfe0193f2cecf46cda386188c474135f01c20df /kamon-core/src/main/scala/kamon/metric | |
parent | 68de5a1bd092fc7dddf2045491dd36a353b72a71 (diff) | |
download | Kamon-becf6cac7142011cc478ab7ab15d51799b190951.tar.gz Kamon-becf6cac7142011cc478ab7ab15d51799b190951.tar.bz2 Kamon-becf6cac7142011cc478ab7ab15d51799b190951.zip |
allow restarting Kamon in the same process.
taking some ideas from #395, this commit removes ConfigProviders and
allows Kamon to be used in "permissive" mode until it gets started.
Diffstat (limited to 'kamon-core/src/main/scala/kamon/metric')
-rwxr-xr-x | kamon-core/src/main/scala/kamon/metric/MetricsModule.scala | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/kamon-core/src/main/scala/kamon/metric/MetricsModule.scala b/kamon-core/src/main/scala/kamon/metric/MetricsModule.scala index 75ef0851..864b7a0b 100755 --- a/kamon-core/src/main/scala/kamon/metric/MetricsModule.scala +++ b/kamon-core/src/main/scala/kamon/metric/MetricsModule.scala @@ -234,7 +234,7 @@ private[kamon] class MetricsModuleImpl(config: Config) extends MetricsModule { private val _trackedEntities = TrieMap.empty[Entity, EntityRecorder] private val _subscriptions = new LazyActorRef - val settings = MetricsSettings(config) + @volatile var settings = MetricsSettings(config) def shouldTrack(entity: Entity): Boolean = settings.entityFilters.get(entity.category).map { @@ -360,7 +360,8 @@ private[kamon] class MetricsModuleImpl(config: Config) extends MetricsModule { settings.pointScheduler(DefaultRefreshScheduler(_system.scheduler, _system.dispatcher)) } - def start(system: ActorSystem): Unit = synchronized { + def start(system: ActorSystem, newConfig: Config): Unit = synchronized { + settings = MetricsSettings(newConfig) _system = system _start _system = null |