diff options
author | Ivan Topolnak <itopolnak@despegar.com> | 2014-02-04 18:16:07 -0300 |
---|---|---|
committer | Ivan Topolnak <itopolnak@despegar.com> | 2014-02-04 18:16:07 -0300 |
commit | 57e433c07a271b4e5e4159500cdc828cd7bb6a83 (patch) | |
tree | 6b2928dcf3c1dc68c4131aa864a0a0f53ccf2160 /kamon-newrelic/src/main/scala/kamon/newrelic/AgentJsonProtocol.scala | |
parent | 7307e1cc97e0363d1fb4cc116fc69a5272ca3730 (diff) | |
download | Kamon-57e433c07a271b4e5e4159500cdc828cd7bb6a83.tar.gz Kamon-57e433c07a271b4e5e4159500cdc828cd7bb6a83.tar.bz2 Kamon-57e433c07a271b4e5e4159500cdc828cd7bb6a83.zip |
partial rewrite of kamon-newrelic
Diffstat (limited to 'kamon-newrelic/src/main/scala/kamon/newrelic/AgentJsonProtocol.scala')
-rw-r--r-- | kamon-newrelic/src/main/scala/kamon/newrelic/AgentJsonProtocol.scala | 31 |
1 files changed, 14 insertions, 17 deletions
diff --git a/kamon-newrelic/src/main/scala/kamon/newrelic/AgentJsonProtocol.scala b/kamon-newrelic/src/main/scala/kamon/newrelic/AgentJsonProtocol.scala index da8199ab..ef556e11 100644 --- a/kamon-newrelic/src/main/scala/kamon/newrelic/AgentJsonProtocol.scala +++ b/kamon-newrelic/src/main/scala/kamon/newrelic/AgentJsonProtocol.scala @@ -32,26 +32,23 @@ object AgentJsonProtocol extends DefaultJsonProtocol { "pid" -> JsNumber(obj.pid))) } - import NewRelicMetric._ - - implicit def listWriter[T: JsonWriter] = new JsonWriter[List[T]] { - def write(list: List[T]) = JsArray(list.map(_.toJson)) + implicit def seqWriter[T: JsonWriter] = new JsonWriter[Seq[T]] { + def write(seq: Seq[T]) = JsArray(seq.map(_.toJson).toList) } - implicit object MetricDetailWriter extends JsonWriter[(ID, Data)] { - def write(obj: (ID, Data)): JsValue = { - val (id, data) = obj + implicit object MetricDetailWriter extends JsonWriter[NewRelic.Metric] { + def write(obj: NewRelic.Metric): JsValue = { JsArray( JsObject( - "name" -> JsString(id.name) // TODO Include scope + "name" -> JsString(obj.name) // TODO Include scope ), JsArray( - JsNumber(data.callCount), - JsNumber(data.total), - JsNumber(data.totalExclusive), - JsNumber(data.min), - JsNumber(data.max), - JsNumber(data.sumOfSquares))) + JsNumber(obj.callCount), + JsNumber(obj.total), + JsNumber(obj.totalExclusive), + JsNumber(obj.min), + JsNumber(obj.max), + JsNumber(obj.sumOfSquares))) } } @@ -59,8 +56,8 @@ object AgentJsonProtocol extends DefaultJsonProtocol { def write(obj: MetricData): JsValue = JsArray( JsNumber(obj.runId), - JsNumber(obj.start), - JsNumber(obj.end), - obj.metrics.toJson) + JsNumber(obj.timeSliceMetrics.from), + JsNumber(obj.timeSliceMetrics.to), + obj.timeSliceMetrics.metrics.toJson) } } |