summaryrefslogtreecommitdiffstats
path: root/service-monitor
diff options
context:
space:
mode:
authorHåkon Hallingstad <hakon@oath.com>2017-10-10 20:47:54 +0200
committerHåkon Hallingstad <hakon@oath.com>2017-10-10 20:47:54 +0200
commit6fa3b85dac3c1dabaf04172cde40d8acc464e3ca (patch)
tree0d949240a28e36e4f94e76e70d20934a6dd2054e /service-monitor
parent2953a3fdb1538646695f103e2229d4f955084e51 (diff)
Measure latency in seconds
Diffstat (limited to 'service-monitor')
-rw-r--r--service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/LatencyMeasurement.java2
-rw-r--r--service-monitor/src/test/java/com/yahoo/vespa/service/monitor/internal/LatencyMeasurementTest.java29
2 files changed, 30 insertions, 1 deletions
diff --git a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/LatencyMeasurement.java b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/LatencyMeasurement.java
index b4a8621448b..c7b9782972a 100644
--- a/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/LatencyMeasurement.java
+++ b/service-monitor/src/main/java/com/yahoo/vespa/service/monitor/internal/LatencyMeasurement.java
@@ -24,7 +24,7 @@ public class LatencyMeasurement implements AutoCloseable {
@Override
public void close() {
if (elapsedSecondsConsumer != null) {
- double elapsedSeconds = forceNonNegative(timer.currentTimeMillis() - startMillis);
+ double elapsedSeconds = forceNonNegative(timer.currentTimeMillis() - startMillis) / 1000;
elapsedSecondsConsumer.accept(elapsedSeconds);
elapsedSecondsConsumer = null;
}
diff --git a/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/internal/LatencyMeasurementTest.java b/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/internal/LatencyMeasurementTest.java
new file mode 100644
index 00000000000..14dfd3ea65b
--- /dev/null
+++ b/service-monitor/src/test/java/com/yahoo/vespa/service/monitor/internal/LatencyMeasurementTest.java
@@ -0,0 +1,29 @@
+// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+
+package com.yahoo.vespa.service.monitor.internal;
+
+import com.yahoo.jdisc.Timer;
+import org.junit.Test;
+
+import java.util.function.Consumer;
+
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+public class LatencyMeasurementTest {
+ @Test
+ public void testReportedDuration() {
+ Timer timer = mock(Timer.class);
+ when(timer.currentTimeMillis()).thenReturn(500l, 1000l);
+ Consumer<Double> consumer = mock(Consumer.class);
+ try (LatencyMeasurement measurement = new LatencyMeasurement(timer, consumer)) {
+ // Avoid javac warning by referencing measurement.
+ dummy(measurement);
+ }
+
+ verify(consumer).accept(0.5);
+ }
+
+ private void dummy(LatencyMeasurement measurement) {}
+} \ No newline at end of file