aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/util/Clock.scala
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2017-05-18 16:21:44 +0200
committerIvan Topolnjak <ivantopo@gmail.com>2017-05-18 16:21:44 +0200
commit77f2666650726352a9e15dcf6019064d91393b2e (patch)
treec39f7e2a18ac6bb1fcd1e2cc73dd3c165919515e /kamon-core/src/main/scala/kamon/util/Clock.scala
parent5dee54a0794b282e9b5729a3d4b85478c12a68d1 (diff)
downloadKamon-77f2666650726352a9e15dcf6019064d91393b2e.tar.gz
Kamon-77f2666650726352a9e15dcf6019064d91393b2e.tar.bz2
Kamon-77f2666650726352a9e15dcf6019064d91393b2e.zip
some more wip
Diffstat (limited to 'kamon-core/src/main/scala/kamon/util/Clock.scala')
-rw-r--r--kamon-core/src/main/scala/kamon/util/Clock.scala19
1 files changed, 13 insertions, 6 deletions
diff --git a/kamon-core/src/main/scala/kamon/util/Clock.scala b/kamon-core/src/main/scala/kamon/util/Clock.scala
index 55bb529a..b0b47a2b 100644
--- a/kamon-core/src/main/scala/kamon/util/Clock.scala
+++ b/kamon-core/src/main/scala/kamon/util/Clock.scala
@@ -1,9 +1,16 @@
package kamon.util
-trait Clock {
- def nanoTimestamp(): Long
- def microTimestamp(): Long
- def milliTimestamp(): Long
+object Clock {
+ private val startTimeMillis = System.currentTimeMillis()
+ private val startNanoTime = System.nanoTime()
+ private val startMicroTime = startTimeMillis * 1000L
- def relativeNanoTimestamp(): Long
-}
+ def microTimestamp(): Long =
+ startMicroTime + ((System.nanoTime() - startNanoTime) / 1000L)
+
+ def milliTimestamp(): Long =
+ System.currentTimeMillis()
+
+ def relativeNanoTimestamp(): Long =
+ System.nanoTime()
+} \ No newline at end of file