aboutsummaryrefslogtreecommitdiff
path: root/kamon-system-metrics/src/main/scala/kamon/metrics/MemoryMetrics.scala
diff options
context:
space:
mode:
authorBoris Giftge <bgiftge@kixeye.com>2014-10-22 18:19:15 -0700
committerIvan Topolnjak <ivantopo@gmail.com>2014-10-23 18:53:21 +0200
commit349b628dc483c7ec6ba4c166e25a5965c0e7d81c (patch)
tree47ae95aa8b08ad50344d8dbb1ad65ab8a0e1bf31 /kamon-system-metrics/src/main/scala/kamon/metrics/MemoryMetrics.scala
parent509988c356965e3c4b40bcd4036b7dc573796e1f (diff)
downloadKamon-349b628dc483c7ec6ba4c166e25a5965c0e7d81c.tar.gz
Kamon-349b628dc483c7ec6ba4c166e25a5965c0e7d81c.tar.bz2
Kamon-349b628dc483c7ec6ba4c166e25a5965c0e7d81c.zip
= core,system.metrics: fixed serialization errors when using akka.actor.serialize-messages = on
Diffstat (limited to 'kamon-system-metrics/src/main/scala/kamon/metrics/MemoryMetrics.scala')
-rw-r--r--kamon-system-metrics/src/main/scala/kamon/metrics/MemoryMetrics.scala48
1 files changed, 26 insertions, 22 deletions
diff --git a/kamon-system-metrics/src/main/scala/kamon/metrics/MemoryMetrics.scala b/kamon-system-metrics/src/main/scala/kamon/metrics/MemoryMetrics.scala
index 6f3eb6df..14051427 100644
--- a/kamon-system-metrics/src/main/scala/kamon/metrics/MemoryMetrics.scala
+++ b/kamon-system-metrics/src/main/scala/kamon/metrics/MemoryMetrics.scala
@@ -62,27 +62,31 @@ object MemoryMetrics extends MetricGroupCategory {
SwapFree -> swapFree)
}
- val Factory = new MetricGroupFactory {
-
- type GroupRecorder = MemoryMetricRecorder
-
- def create(config: Config, system: ActorSystem): GroupRecorder = {
- val settings = config.getConfig("precision.system.memory")
-
- val usedConfig = settings.getConfig("used")
- val freeConfig = settings.getConfig("free")
- val bufferConfig = settings.getConfig("buffer")
- val cacheConfig = settings.getConfig("cache")
- val swapUsedConfig = settings.getConfig("swap-used")
- val swapFreeConfig = settings.getConfig("swap-free")
-
- new MemoryMetricRecorder(
- Histogram.fromConfig(usedConfig, Scale.Mega),
- Histogram.fromConfig(freeConfig, Scale.Mega),
- Histogram.fromConfig(swapUsedConfig, Scale.Mega),
- Histogram.fromConfig(swapFreeConfig, Scale.Mega),
- Histogram.fromConfig(bufferConfig, Scale.Mega),
- Histogram.fromConfig(cacheConfig, Scale.Mega))
- }
+ val Factory = MemoryMetricGroupFactory
+}
+
+case object MemoryMetricGroupFactory extends MetricGroupFactory {
+
+ import MemoryMetrics._
+
+ type GroupRecorder = MemoryMetricRecorder
+
+ def create(config: Config, system: ActorSystem): GroupRecorder = {
+ val settings = config.getConfig("precision.system.memory")
+
+ val usedConfig = settings.getConfig("used")
+ val freeConfig = settings.getConfig("free")
+ val bufferConfig = settings.getConfig("buffer")
+ val cacheConfig = settings.getConfig("cache")
+ val swapUsedConfig = settings.getConfig("swap-used")
+ val swapFreeConfig = settings.getConfig("swap-free")
+
+ new MemoryMetricRecorder(
+ Histogram.fromConfig(usedConfig, Scale.Mega),
+ Histogram.fromConfig(freeConfig, Scale.Mega),
+ Histogram.fromConfig(swapUsedConfig, Scale.Mega),
+ Histogram.fromConfig(swapFreeConfig, Scale.Mega),
+ Histogram.fromConfig(bufferConfig, Scale.Mega),
+ Histogram.fromConfig(cacheConfig, Scale.Mega))
}
} \ No newline at end of file