aboutsummaryrefslogtreecommitdiff
path: root/kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala
diff options
context:
space:
mode:
Diffstat (limited to 'kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala')
-rw-r--r--kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala27
1 files changed, 25 insertions, 2 deletions
diff --git a/kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala b/kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala
index 06eb84a3..a16d166e 100644
--- a/kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala
+++ b/kamon-playground/src/main/scala/test/SimpleRequestProcessor.scala
@@ -17,7 +17,7 @@
package test
import akka.actor._
-import akka.routing.RoundRobinPool
+import akka.routing.{ BalancingPool, RoundRobinPool }
import akka.util.Timeout
import kamon.Kamon
import kamon.metric.SubscriptionsDispatcher.TickMetricSnapshot
@@ -130,11 +130,34 @@ object SimpleRequestProcessor extends App with SimpleRoutingApp with RequestBuil
}
+object RouterExample extends App {
+ Kamon.start()
+ val system = ActorSystem("system")
+ val router = system.actorOf(RoundRobinPool(5).props(Props[PrintWhatever]), "test-round-robin")
+
+ Kamon.metrics.subscribe("**", "**", system.actorOf(Props[PrintAllMetrics], "printer"))
+
+ while (true) {
+ router ! "Test"
+ Thread.sleep(5000)
+ }
+}
+
+class PrintAllMetrics extends Actor {
+ def receive = {
+ case TickMetricSnapshot(from, to, metrics) ⇒
+ println("================================================================================")
+ println(metrics.map({
+ case (entity, snapshot) ⇒ entity.category.padTo(20, ' ') + " > " + entity.name + " " + entity.tags
+ }).toList.sorted.mkString("\n"))
+ }
+}
+
class PrintWhatever extends Actor {
def receive = {
case TickMetricSnapshot(from, to, metrics) ⇒
println(metrics.map { case (key, value) ⇒ key.name + " => " + value.metrics.mkString(",") }.mkString("|"))
- case anything ⇒ println(anything)
+ case anything ⇒ //println(anything)
}
}