diff options
Diffstat (limited to 'kamon-core/src/main/scala/kamon/util')
-rw-r--r-- | kamon-core/src/main/scala/kamon/util/Clock.scala | 19 |
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 |