aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/akka/PoolMetrics.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/akka/PoolMetrics.scala')
-rw-r--r--src/main/scala/akka/PoolMetrics.scala29
1 files changed, 0 insertions, 29 deletions
diff --git a/src/main/scala/akka/PoolMetrics.scala b/src/main/scala/akka/PoolMetrics.scala
deleted file mode 100644
index 422e34fd..00000000
--- a/src/main/scala/akka/PoolMetrics.scala
+++ /dev/null
@@ -1,29 +0,0 @@
-package akka
-
-import scala.concurrent.forkjoin.ForkJoinPool
-import com.newrelic.api.agent.NewRelic
-
-case class PoolMetrics(poolName:String, data:Map[String,Int])
-
-object PoolMetrics {
- def apply(pool: ForkJoinPool) = new PoolMetrics(pool.getClass.getSimpleName, toMap(pool))
-
- def toMap(pool: scala.concurrent.forkjoin.ForkJoinPool):Map[String,Int] = Map[String,Int](
- "ActiveThreadCount" -> pool.getActiveThreadCount,
- "Parallelism" -> pool.getParallelism,
- "PoolSize" -> pool.getPoolSize,
- "QueuedSubmissionCount" -> pool.getQueuedSubmissionCount,
- "StealCount" -> pool.getStealCount.toInt,
- "QueuedTaskCount" -> pool.getQueuedTaskCount.toInt,
- "RunningThreadCount" -> pool.getRunningThreadCount
- )
-}
-
-class PoolMetricsSender(forkJoinPool:ForkJoinPool) extends Runnable {
- def run() {
- val pool = PoolMetrics(forkJoinPool)
- println(s"Sending Metrics to NewRelic -> ${pool}")
- pool.data.map{case(k,v) => NewRelic.recordMetric(s"${pool.poolName}:${k}",v)}
- }
-}
-