diff options
Diffstat (limited to 'kamon-core/src/main/scala/kamon/metric/ExecutorServiceMetricCollector.scala')
-rw-r--r-- | kamon-core/src/main/scala/kamon/metric/ExecutorServiceMetricCollector.scala | 34 |
1 files changed, 13 insertions, 21 deletions
diff --git a/kamon-core/src/main/scala/kamon/metric/ExecutorServiceMetricCollector.scala b/kamon-core/src/main/scala/kamon/metric/ExecutorServiceMetricCollector.scala index a99deb5b..4c4b93e9 100644 --- a/kamon-core/src/main/scala/kamon/metric/ExecutorServiceMetricCollector.scala +++ b/kamon-core/src/main/scala/kamon/metric/ExecutorServiceMetricCollector.scala @@ -15,16 +15,16 @@ * ========================================================== */ package kamon.metric -import java.util.concurrent.{ThreadPoolExecutor, ExecutorService} +import java.util.concurrent.{ ThreadPoolExecutor, ExecutorService } import scala.concurrent.forkjoin.ForkJoinPool -import com.codahale.metrics.{Metric, MetricFilter} +import com.codahale.metrics.{ Metric, MetricFilter } object ExecutorServiceMetricCollector extends ForkJoinPoolMetricCollector with ThreadPoolExecutorMetricCollector { def register(fullName: String, executorService: ExecutorService) = executorService match { - case fjp: ForkJoinPool => registerForkJoinPool(fullName, fjp) - case tpe: ThreadPoolExecutor => registerThreadPoolExecutor(fullName, tpe) - case _ => // If it is a unknown Executor then just do nothing. + case fjp: ForkJoinPool ⇒ registerForkJoinPool(fullName, fjp) + case tpe: ThreadPoolExecutor ⇒ registerThreadPoolExecutor(fullName, tpe) + case _ ⇒ // If it is a unknown Executor then just do nothing. } def deregister(fullName: String) = { @@ -34,22 +34,19 @@ object ExecutorServiceMetricCollector extends ForkJoinPoolMetricCollector with T } } - trait ForkJoinPoolMetricCollector { import GaugeGenerator._ import BasicExecutorMetricNames._ - def registerForkJoinPool(fullName: String, fjp: ForkJoinPool) = { val forkJoinPoolGauge = newNumericGaugeFor(fjp) _ val allMetrics = Map( - fullName + queueSize -> forkJoinPoolGauge(_.getQueuedTaskCount.toInt), - fullName + poolSize -> forkJoinPoolGauge(_.getPoolSize), - fullName + activeThreads -> forkJoinPoolGauge(_.getActiveThreadCount) - ) + fullName + queueSize -> forkJoinPoolGauge(_.getQueuedTaskCount.toInt), + fullName + poolSize -> forkJoinPoolGauge(_.getPoolSize), + fullName + activeThreads -> forkJoinPoolGauge(_.getActiveThreadCount)) - allMetrics.foreach { case (name, metric) => Metrics.registry.register(name, metric) } + allMetrics.foreach { case (name, metric) ⇒ Metrics.registry.register(name, metric) } } } @@ -61,22 +58,17 @@ trait ThreadPoolExecutorMetricCollector { val tpeGauge = newNumericGaugeFor(tpe) _ val allMetrics = Map( - fullName + queueSize -> tpeGauge(_.getQueue.size()), - fullName + poolSize -> tpeGauge(_.getPoolSize), - fullName + activeThreads -> tpeGauge(_.getActiveCount) - ) + fullName + queueSize -> tpeGauge(_.getQueue.size()), + fullName + poolSize -> tpeGauge(_.getPoolSize), + fullName + activeThreads -> tpeGauge(_.getActiveCount)) - allMetrics.foreach { case (name, metric) => Metrics.registry.register(name, metric) } + allMetrics.foreach { case (name, metric) ⇒ Metrics.registry.register(name, metric) } } } - object BasicExecutorMetricNames { val queueSize = "queueSize" val poolSize = "threads/poolSize" val activeThreads = "threads/activeThreads" } - - - |