diff options
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.java | 11 |
1 files changed, 11 insertions, 0 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 28fcd027d2b..eabd43bccbf 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 @@ -21,7 +21,9 @@ public class DocumentApiMetrics { private final Counter feeds; private final Gauge feedLatency; + private final Counter feedRequests; private final Map<DocumentOperationStatus, Map<DocumentOperationType, Point>> points = new HashMap<>(); + private final Map<String, Point> versionPointCache = new HashMap<>(); public DocumentApiMetrics(MetricReceiver metricReceiver, String apiName) { Map<String, String> dimensions = new HashMap<>(); @@ -37,6 +39,7 @@ public class DocumentApiMetrics { feeds = metricReceiver.declareCounter("feed.operations"); feedLatency = metricReceiver.declareGauge("feed.latency"); + feedRequests = metricReceiver.declareCounter("feed.http-requests"); } public void reportSuccessful(DocumentOperationType documentOperationType, double latencyInSeconds) { @@ -56,4 +59,12 @@ public class DocumentApiMetrics { feeds.add(point); } + public void reportClientVersion(String version) { + if (version != null) { + feedRequests.add(versionPointCache.computeIfAbsent(version, v -> new Point(Map.of("client-version", v)))); + } else { + feedRequests.add(); + } + } + } |