summaryrefslogtreecommitdiffstats
path: root/vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentApiMetrics.java
diff options
context:
space:
mode:
Diffstat (limited to 'vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentApiMetrics.java')
-rw-r--r--vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentApiMetrics.java17
1 files changed, 12 insertions, 5 deletions
diff --git a/vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentApiMetrics.java b/vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentApiMetrics.java
index 890f06dd094..f1335351ac6 100644
--- a/vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentApiMetrics.java
+++ b/vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentApiMetrics.java
@@ -10,6 +10,7 @@ import com.yahoo.metrics.simple.Point;
import java.time.Duration;
import java.time.Instant;
+import java.util.EnumSet;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutionException;
@@ -52,16 +53,22 @@ public class DocumentApiMetrics {
feeds.add(point);
}
- public void reportSuccessful(DocumentOperationType documentOperationType, Instant startTime) {
- double latency = Duration.between(startTime, Instant.now()).toMillis() / 1000.0d;
- reportSuccessful(documentOperationType, latency);
- }
-
public void reportFailure(DocumentOperationType documentOperationType, DocumentOperationStatus documentOperationStatus) {
Point point = points.get(documentOperationStatus).get(documentOperationType);
feeds.add(point);
}
+ public void report(DocumentOperationType type, Instant start, DocumentOperationStatus... status) {
+ double latency = latency(start);
+ for (var s : status) {
+ var point = points.get(s).get(type);
+ feedLatency.sample(latency, point);
+ feeds.add(point);
+ }
+ }
+
+ private static double latency(Instant start) { return Duration.between(start, Instant.now()).toMillis() / 1000d; }
+
public void reportHttpRequest(String clientVersion) {
if (clientVersion != null) {
try {