diff options
author | Diego Parra <diegolparra@gmail.com> | 2013-09-01 19:22:26 -0300 |
---|---|---|
committer | Diego Parra <diegolparra@gmail.com> | 2013-09-01 19:22:26 -0300 |
commit | e457fb4d3b8535c27343c80c45fdbe7fa7a93dae (patch) | |
tree | 7585b5e48e8c56554f272c2915a6e25f7dcef7ec /kamon-dashboard/src/main/scala/kamon/dashboard/protocol/DashboardProtocols.scala | |
parent | 0b24374b851590d54c3a671ecbc812d2dc3bed3a (diff) | |
download | Kamon-e457fb4d3b8535c27343c80c45fdbe7fa7a93dae.tar.gz Kamon-e457fb4d3b8535c27343c80c45fdbe7fa7a93dae.tar.bz2 Kamon-e457fb4d3b8535c27343c80c45fdbe7fa7a93dae.zip |
WIP: Refactor in dashboard in order to prepare actro tree view
Diffstat (limited to 'kamon-dashboard/src/main/scala/kamon/dashboard/protocol/DashboardProtocols.scala')
-rw-r--r-- | kamon-dashboard/src/main/scala/kamon/dashboard/protocol/DashboardProtocols.scala | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/kamon-dashboard/src/main/scala/kamon/dashboard/protocol/DashboardProtocols.scala b/kamon-dashboard/src/main/scala/kamon/dashboard/protocol/DashboardProtocols.scala new file mode 100644 index 00000000..3f7ed6dc --- /dev/null +++ b/kamon-dashboard/src/main/scala/kamon/dashboard/protocol/DashboardProtocols.scala @@ -0,0 +1,32 @@ +package kamon.dashboard.protocol + +import spray.json.{RootJsonFormat, DefaultJsonProtocol} + +object DashboardProtocols { + + case class TimerDataHolder(name:String, count:Double, percentile99:Double) + case class TotalMessages(messages:Double, actors:Long, data:Seq[TimerDataHolder]) + case class DispatcherMetricCollectorHolder(name:String, activeThreadCount: Double, poolSize: Double, queueSize:Double) + case class ActorSystemMetricsHolder(actorSystem:String, dispatchers:Map[String, DispatcherMetricCollectorHolder]) + case class ActorTree(name:String, children:List[ActorTree] = Nil) + + object TimerDataHolder extends DefaultJsonProtocol { + implicit val TimerDataHolderJsonProtocol = jsonFormat3(apply) + } + + object TotalMessages extends DefaultJsonProtocol { + implicit val TotalMessagesJsonProtocol = jsonFormat3(apply) + } + + object DispatcherMetricCollectorHolder extends DefaultJsonProtocol { + implicit val DispatcherMetricCollectorJsonProtocol = jsonFormat4(apply) + } + + object ActorSystemMetricsHolder extends DefaultJsonProtocol { + implicit val ActorSystemMetricsJsonProtocol = jsonFormat2(apply) + } + + object ActorTree extends DefaultJsonProtocol { + implicit val ActorTreeJsonProtocol:RootJsonFormat[ActorTree] = rootFormat(lazyFormat(jsonFormat(apply, "name", "children"))) + } +} |