aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego <diegolparra@gmail.com>2014-08-09 17:48:37 -0300
committerDiego <diegolparra@gmail.com>2014-08-09 17:48:37 -0300
commit0777a6ff7b6c11f8f4a4e89ac27287b1a18449de (patch)
tree9e1a482d7aa15063222dfb2976435c1195e1eaa8
parent0493752254dcace311f12574f4053b184f6b164f (diff)
downloadKamon-0777a6ff7b6c11f8f4a4e89ac27287b1a18449de.tar.gz
Kamon-0777a6ff7b6c11f8f4a4e89ac27287b1a18449de.tar.bz2
Kamon-0777a6ff7b6c11f8f4a4e89ac27287b1a18449de.zip
+ system-metrics: minor load banner refactor
-rw-r--r--kamon-core/src/main/java/kamon/jsr166/LongMaxUpdater.java8
-rw-r--r--kamon-core/src/main/scala/kamon/metric/instrument/MinMaxCounter.scala7
-rw-r--r--kamon-system-metrics/src/main/scala/kamon/system/sigar/SigarLoader.scala27
3 files changed, 24 insertions, 18 deletions
diff --git a/kamon-core/src/main/java/kamon/jsr166/LongMaxUpdater.java b/kamon-core/src/main/java/kamon/jsr166/LongMaxUpdater.java
index 226cd9a1..e4ba8807 100644
--- a/kamon-core/src/main/java/kamon/jsr166/LongMaxUpdater.java
+++ b/kamon-core/src/main/java/kamon/jsr166/LongMaxUpdater.java
@@ -43,6 +43,14 @@ public class LongMaxUpdater extends Striped64 implements Serializable {
}
/**
+ * Creates a new instance with the given initialValue
+ */
+ public LongMaxUpdater(long initialValue) {
+ base = initialValue;
+ }
+
+
+ /**
* Updates the maximum to be at least the given value.
*
* @param x the value to update
diff --git a/kamon-core/src/main/scala/kamon/metric/instrument/MinMaxCounter.scala b/kamon-core/src/main/scala/kamon/metric/instrument/MinMaxCounter.scala
index 78828904..13dea8fe 100644
--- a/kamon-core/src/main/scala/kamon/metric/instrument/MinMaxCounter.scala
+++ b/kamon-core/src/main/scala/kamon/metric/instrument/MinMaxCounter.scala
@@ -63,14 +63,11 @@ object MinMaxCounter {
}
class PaddedMinMaxCounter(underlyingHistogram: Histogram) extends MinMaxCounter {
- private val min = new LongMaxUpdater
- private val max = new LongMaxUpdater
+ private val min = new LongMaxUpdater(0L)
+ private val max = new LongMaxUpdater(0L)
private val sum = new PaddedAtomicLong
val refreshValuesSchedule = new AtomicReference[Cancellable]()
- min.update(0L)
- max.update(0L)
-
def increment(): Unit = increment(1L)
def increment(times: Long): Unit = {
diff --git a/kamon-system-metrics/src/main/scala/kamon/system/sigar/SigarLoader.scala b/kamon-system-metrics/src/main/scala/kamon/system/sigar/SigarLoader.scala
index d138ec8f..ca58c065 100644
--- a/kamon-system-metrics/src/main/scala/kamon/system/sigar/SigarLoader.scala
+++ b/kamon-system-metrics/src/main/scala/kamon/system/sigar/SigarLoader.scala
@@ -17,6 +17,7 @@
package kamon.system.sigar
import java.io._
+import java.text.SimpleDateFormat
import java.util
import java.util.logging.Logger
import java.util.{ ArrayList, Date, List }
@@ -133,26 +134,18 @@ object SigarLoader {
}
private[sigar] def printBanner(sigar: Sigar) = {
+ val os = OperatingSystem.getInstance
+
def loadAverage(sigar: Sigar) = {
val average = sigar.getLoadAverage
(average(0), average(1), average(2))
}
def uptime(sigar: Sigar) = {
+ val sdf = new SimpleDateFormat("yyyy-MM-dd")
val uptime = sigar.getUptime
val now = System.currentTimeMillis()
- new Date(now - (uptime.getUptime() * 1000).toLong)
- }
-
- def osInfo() = {
- val NewLine = "\n"
- val os = OperatingSystem.getInstance
- val osInfo = new StringBuilder("------ OS Information ------").append(NewLine)
- osInfo.append("Description: ").append(os.getDescription).append(NewLine)
- .append("Name: ").append(os.getName).append(NewLine)
- .append("Version: ").append(os.getVersion).append(NewLine)
- .append("Arch: ").append(os.getArch).append(NewLine)
- .toString()
+ sdf.format(new Date(now - (uptime.getUptime() * 1000).toLong))
}
val message =
@@ -166,7 +159,15 @@ object SigarLoader {
||_____/ \__, |___/\__\___|_| |_| |_|_| |_|\___|\__|_| |_|\___|___/______\___/ \__,_|\__,_|\___|\__,_|
| __/ |
| |___/
- """.stripMargin + s"\nBoot Time: ${uptime(sigar)} \nLoad Average: ${loadAverage(sigar)} \n${osInfo()}"
+ |
+ | [System Status] [OS Information]
+ | |--------------------------------| |----------------------------------------|
+ | Boot Time: %-10s Description: %s
+ | Load Average: %-16s Name: %s
+ | Version: %s
+ | Arch: %s
+ |
+ """.stripMargin.format(uptime(sigar),os.getDescription, loadAverage(sigar), os.getName, os.getVersion, os.getArch)
log.info(message)
}
class Loader private[sigar]