From c6bb65535bcc3cc1ff3834a91473ee8dfa6145e8 Mon Sep 17 00:00:00 2001 From: Ivan Topolnjak Date: Thu, 12 Feb 2015 11:30:06 +0100 Subject: ! all: Kamon now works as a single instance in a companion object. --- .../src/main/scala/kamon/statsd/StatsD.scala | 2 +- .../kamon/statsd/StatsDMetricSenderSpec.scala | 33 +++++++++++----------- 2 files changed, 17 insertions(+), 18 deletions(-) (limited to 'kamon-statsd') diff --git a/kamon-statsd/src/main/scala/kamon/statsd/StatsD.scala b/kamon-statsd/src/main/scala/kamon/statsd/StatsD.scala index d363bdd4..d406faf6 100644 --- a/kamon-statsd/src/main/scala/kamon/statsd/StatsD.scala +++ b/kamon-statsd/src/main/scala/kamon/statsd/StatsD.scala @@ -40,7 +40,7 @@ class StatsDExtension(system: ExtendedActorSystem) extends Kamon.Extension { private val config = system.settings.config private val statsDConfig = config.getConfig("kamon.statsd") - val metricsExtension = Kamon(Metrics) + val metricsExtension = Kamon.metrics val tickInterval = metricsExtension.settings.tickInterval val statsDHost = new InetSocketAddress(statsDConfig.getString("hostname"), statsDConfig.getInt("port")) diff --git a/kamon-statsd/src/test/scala/kamon/statsd/StatsDMetricSenderSpec.scala b/kamon-statsd/src/test/scala/kamon/statsd/StatsDMetricSenderSpec.scala index a0d787d9..0211ac0f 100644 --- a/kamon-statsd/src/test/scala/kamon/statsd/StatsDMetricSenderSpec.scala +++ b/kamon-statsd/src/test/scala/kamon/statsd/StatsDMetricSenderSpec.scala @@ -20,6 +20,7 @@ import akka.testkit.{ TestKitBase, TestProbe } import akka.actor.{ ActorRef, Props, ActorSystem } import kamon.Kamon import kamon.metric.instrument.{ InstrumentFactory, UnitOfMeasurement } +import kamon.testkit.BaseKamonSpec import kamon.util.MilliTimestamp import org.scalatest.{ Matchers, WordSpecLike } import kamon.metric._ @@ -28,28 +29,26 @@ import kamon.metric.SubscriptionsDispatcher.TickMetricSnapshot import java.net.InetSocketAddress import com.typesafe.config.ConfigFactory -class StatsDMetricSenderSpec extends TestKitBase with WordSpecLike with Matchers { - implicit lazy val system: ActorSystem = ActorSystem("statsd-metric-sender-spec", ConfigFactory.parseString( - """ - |kamon { - | statsd.simple-metric-key-generator { - | application = kamon - | hostname-override = kamon-host - | include-hostname = true - | metric-name-normalization-strategy = normalize - | } - |} - | - """.stripMargin)) +class StatsDMetricSenderSpec extends BaseKamonSpec("statsd-metric-sender-spec") { + override lazy val config = + ConfigFactory.parseString( + """ + |kamon { + | statsd.simple-metric-key-generator { + | application = kamon + | hostname-override = kamon-host + | include-hostname = true + | metric-name-normalization-strategy = normalize + | } + |} + | + """.stripMargin) implicit val metricKeyGenerator = new SimpleMetricKeyGenerator(system.settings.config) { override def hostName: String = "localhost_local" } - val collectionContext = Kamon(Metrics).buildDefaultCollectionContext - "the StatsDMetricSender" should { - "flush the metrics data after processing the tick, even if the max-packet-size is not reached" in new UdpListenerFixture { val testMetricKey = buildMetricKey(testEntity, "metric-one") val testRecorder = buildRecorder("user/kamon") @@ -134,7 +133,7 @@ class StatsDMetricSenderSpec extends TestKitBase with WordSpecLike with Matchers } def buildRecorder(name: String): TestEntityRecorder = { - Kamon(Metrics).register(TestEntityRecorder, name).get.recorder + Kamon.metrics.register(TestEntityRecorder, name).get.recorder } def setup(metrics: Map[Entity, EntitySnapshot]): TestProbe = { -- cgit v1.2.3