summaryrefslogtreecommitdiffstats
path: root/container-search
diff options
context:
space:
mode:
authorgjoranv <gv@verizonmedia.com>2021-02-02 12:38:43 +0100
committergjoranv <gv@verizonmedia.com>2021-02-02 12:40:28 +0100
commit7ad3e9fad22e2ae0435232aa99c398eab4176dcd (patch)
tree7d28fc2f7a9719e9868563c1182e18d0215d29b2 /container-search
parent292edf51fc53ae6dc78dd8182dde132b2a46f389 (diff)
Add histogram buckets for hits_per_query metric.
Diffstat (limited to 'container-search')
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/statistics/StatisticsSearcher.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/statistics/StatisticsSearcher.java b/container-search/src/main/java/com/yahoo/prelude/statistics/StatisticsSearcher.java
index 4940f707fd6..e6accafe2d4 100644
--- a/container-search/src/main/java/com/yahoo/prelude/statistics/StatisticsSearcher.java
+++ b/container-search/src/main/java/com/yahoo/prelude/statistics/StatisticsSearcher.java
@@ -77,6 +77,7 @@ public class StatisticsSearcher extends Searcher {
private final Value peakQPS; // peak 1s QPS
private final Counter emptyResults; // number of results containing no concrete hits
private final Value hitsPerQuery; // mean number of hits per query
+ private final Value hitsPerQueryBuckets;
private final PeakQpsReporter peakQpsReporter;
@@ -137,8 +138,12 @@ public class StatisticsSearcher extends Searcher {
queryLatencyBuckets = Value.buildValue(QUERY_LATENCY_METRIC, manager, null);
peakQPS = new Value(PEAK_QPS_METRIC, manager, new Value.Parameters().setLogRaw(false).setLogMax(true).setNameExtension(false));
hitsPerQuery = new Value(HITS_PER_QUERY_METRIC, manager, new Value.Parameters().setLogRaw(false).setLogMean(true).setNameExtension(false));
+ hitsPerQueryBuckets = Value.buildValue(HITS_PER_QUERY_METRIC, manager, null);
+
emptyResults = new Counter(EMPTY_RESULTS_METRIC, manager, false);
metricReceiver.declareGauge(QUERY_LATENCY_METRIC, Optional.empty(), new MetricSettings.Builder().histogram(true).build());
+ metricReceiver.declareGauge(HITS_PER_QUERY_METRIC, Optional.empty(), new MetricSettings.Builder().histogram(true).build());
+
scheduler.schedule(peakQpsReporter, 1000, 1000);
}
@@ -266,8 +271,10 @@ public class StatisticsSearcher extends Searcher {
metric.add(DOCS_TOTAL_METRIC, queryCoverage.getActive(), metricContext);
}
int hitCount = result.getConcreteHitCount();
- hitsPerQuery.put((double) hitCount);
+ hitsPerQuery.put(hitCount);
+ hitsPerQueryBuckets.put(hitCount);
metric.set(HITS_PER_QUERY_METRIC, (double) hitCount, metricContext);
+
metric.set(TOTALHITS_PER_QUERY_METRIC, (double) result.getTotalHitCount(), metricContext);
metric.set(QUERY_OFFSET_METRIC, (double) (query.getHits() + query.getOffset()), metricContext);
if (hitCount == 0) {