diff options
Diffstat (limited to 'kamon-statsd/src')
-rw-r--r-- | kamon-statsd/src/main/scala/kamon/statsd/Statsd.scala | 8 | ||||
-rw-r--r-- | kamon-statsd/src/main/scala/kamon/statsd/StatsdMetricTranslator.scala | 32 | ||||
-rw-r--r-- | kamon-statsd/src/main/scala/kamon/statsd/StatsdMetricsSender.scala (renamed from kamon-statsd/src/main/scala/kamon/statsd/client/StatsdMetricsSender.scala) | 2 |
3 files changed, 38 insertions, 4 deletions
diff --git a/kamon-statsd/src/main/scala/kamon/statsd/Statsd.scala b/kamon-statsd/src/main/scala/kamon/statsd/Statsd.scala index 4e0f0dfe..a0af09bb 100644 --- a/kamon-statsd/src/main/scala/kamon/statsd/Statsd.scala +++ b/kamon-statsd/src/main/scala/kamon/statsd/Statsd.scala @@ -18,9 +18,9 @@ package kamon.statsd import akka.actor._ import kamon.Kamon -import kamon.statsd.client.StatsdMetricsSender import kamon.metrics.Subscriptions.TickMetricSnapshot -import kamon.metrics.{CustomMetric, TraceMetrics, Metrics} +import kamon.metrics.{TickMetricSnapshotBuffer, CustomMetric, TraceMetrics, Metrics} +import kamon.statsd.StatsdMetricsSender object Statsd extends ExtensionId[StatsdExtension] with ExtensionIdProvider { override def lookup(): ExtensionId[_ <: Extension] = Statsd @@ -46,7 +46,9 @@ class StatsdMetricsListener(host:String, port:Int, prefix:String) extends Actor log.info("Starting the Kamon(Statsd) extension") - val statsdActor = context.actorOf(StatsdMetricsSender.props(prefix, new InetSocketAddress(InetAddress.getByName(host), port)), "StatsdSender") + val statsdActor = context.actorOf(StatsdMetricsSender.props(prefix, new InetSocketAddress(InetAddress.getByName(host), port)), "statsd-metrics-sender") + val translator = context.actorOf(StatsdMetricTranslator.props(statsdActor), "statsd-metrics-translator") + val buffer = context.actorOf(TickMetricSnapshotBuffer.props(1 minute, translator), "metrics-buffer") def receive = { case tick: TickMetricSnapshot ⇒ statsdActor.forward(tick) diff --git a/kamon-statsd/src/main/scala/kamon/statsd/StatsdMetricTranslator.scala b/kamon-statsd/src/main/scala/kamon/statsd/StatsdMetricTranslator.scala new file mode 100644 index 00000000..ee56c005 --- /dev/null +++ b/kamon-statsd/src/main/scala/kamon/statsd/StatsdMetricTranslator.scala @@ -0,0 +1,32 @@ +/* + * ========================================================================================= + * Copyright © 2013-2014 the kamon project <http://kamon.io/> + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the + * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, + * either express or implied. See the License for the specific language governing permissions + * and limitations under the License. + * ========================================================================================= + */ +package kamon.statsd + +import akka.actor.{Props, Actor, ActorRef} +import kamon.metrics.Subscriptions.TickMetricSnapshot + +class StatsdMetricTranslator(receiver: ActorRef) extends Actor{ + + def receive = { + case TickMetricSnapshot(from, to, metrics) ⇒ + receiver ! "" + } + +} + +object StatsdMetricTranslator { + def props(receiver: ActorRef): Props = Props(new StatsdMetricTranslator(receiver)) +} diff --git a/kamon-statsd/src/main/scala/kamon/statsd/client/StatsdMetricsSender.scala b/kamon-statsd/src/main/scala/kamon/statsd/StatsdMetricsSender.scala index d9173e45..1ccf5397 100644 --- a/kamon-statsd/src/main/scala/kamon/statsd/client/StatsdMetricsSender.scala +++ b/kamon-statsd/src/main/scala/kamon/statsd/StatsdMetricsSender.scala @@ -14,7 +14,7 @@ * ========================================================================================= */ -package kamon.statsd.client +package kamon.statsd import akka.actor.{ActorLogging, Props, ActorRef, Actor} import akka.io.{Udp, IO} |