diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2019-08-22 15:20:07 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-22 15:20:07 +0200 |
commit | 5e6a6f708ea01f05b27795ca77fa79dc5d57a6aa (patch) | |
tree | 465dd21d7d013b56e203b13f722c9796b43db807 | |
parent | 0c0c4422700f22733191c123d9115f2ffe634ec3 (diff) | |
parent | e2f21822b2b32977c4a614fc6f30a95f77c6b068 (diff) |
Merge pull request #10375 from vespa-engine/balder/soft_doom_factor-metric
Balder/soft doom factor metric
3 files changed, 25 insertions, 14 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/VespaMetricSet.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/VespaMetricSet.java index 0c0701983a4..970d03689ab 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/VespaMetricSet.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/VespaMetricSet.java @@ -413,6 +413,10 @@ public class VespaMetricSet { // matching metrics.add(new Metric("content.proton.documentdb.matching.queries.rate")); metrics.add(new Metric("content.proton.documentdb.matching.soft_doomed_queries.rate")); + metrics.add(new Metric("content.proton.documentdb.matching.soft_doom_factor.min")); + metrics.add(new Metric("content.proton.documentdb.matching.soft_doom_factor.max")); + metrics.add(new Metric("content.proton.documentdb.matching.soft_doom_factor.sum")); + metrics.add(new Metric("content.proton.documentdb.matching.soft_doom_factor.count")); metrics.add(new Metric("content.proton.documentdb.matching.query_latency.max")); metrics.add(new Metric("content.proton.documentdb.matching.query_latency.sum")); metrics.add(new Metric("content.proton.documentdb.matching.query_latency.count")); @@ -424,6 +428,10 @@ public class VespaMetricSet { metrics.add(new Metric("content.proton.documentdb.matching.docs_matched.rate")); metrics.add(new Metric("content.proton.documentdb.matching.rank_profile.queries.rate")); metrics.add(new Metric("content.proton.documentdb.matching.rank_profile.soft_doomed_queries.rate")); + metrics.add(new Metric("content.proton.documentdb.matching.rank_profile.soft_doom_factor.min")); + metrics.add(new Metric("content.proton.documentdb.matching.rank_profile.soft_doom_factor.max")); + metrics.add(new Metric("content.proton.documentdb.matching.rank_profile.soft_doom_factor.sum")); + metrics.add(new Metric("content.proton.documentdb.matching.rank_profile.soft_doom_factor.count")); metrics.add(new Metric("content.proton.documentdb.matching.rank_profile.query_latency.max")); metrics.add(new Metric("content.proton.documentdb.matching.rank_profile.query_latency.sum")); metrics.add(new Metric("content.proton.documentdb.matching.rank_profile.query_latency.count")); diff --git a/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.cpp b/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.cpp index dcb68c15c0e..c8c53d6f795 100644 --- a/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.cpp +++ b/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.cpp @@ -149,6 +149,7 @@ DocumentDBTaggedMetrics::MatchingMetrics::RankProfileMetrics::RankProfileMetrics queries("queries", {}, "Number of queries executed", this), limitedQueries("limited_queries", {}, "Number of queries limited in match phase", this), softDoomedQueries("soft_doomed_queries", {}, "Number of queries hitting the soft timeout", this), + softDoomFactor("soft_doom_factor", {}, "Factor used to compute soft-timeout", this), matchTime("match_time", {}, "Average time (sec) for matching a query (1st phase)", this), groupingTime("grouping_time", {}, "Average time (sec) spent on grouping", this), rerankTime("rerank_time", {}, "Average time (sec) spent on 2nd phase ranking", this), @@ -195,6 +196,7 @@ DocumentDBTaggedMetrics::MatchingMetrics::RankProfileMetrics::update(const Match queries.inc(stats.queries()); limitedQueries.inc(stats.limited_queries()); softDoomedQueries.inc(stats.softDoomed()); + softDoomFactor.set(stats.softDoomFactor()); matchTime.addValueBatch(stats.matchTimeAvg(), stats.matchTimeCount(), stats.matchTimeMin(), stats.matchTimeMax()); groupingTime.addValueBatch(stats.groupingTimeAvg(), stats.groupingTimeCount(), diff --git a/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.h b/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.h index 29c29d642e7..12aba210b17 100644 --- a/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.h +++ b/searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.h @@ -30,7 +30,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet metrics::DoubleAverageMetric total; JobMetrics(metrics::MetricSet *parent); - ~JobMetrics(); + ~JobMetrics() override; }; struct SubDBMetrics : metrics::MetricSet @@ -45,7 +45,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet metrics::DoubleValueMetric lidFragmentationFactor; LidSpaceMetrics(metrics::MetricSet *parent); - ~LidSpaceMetrics(); + ~LidSpaceMetrics() override; }; struct DocumentStoreMetrics : metrics::MetricSet @@ -59,7 +59,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet metrics::LongCountMetric invalidations; CacheMetrics(metrics::MetricSet *parent); - ~CacheMetrics(); + ~CacheMetrics() override; }; metrics::LongValueMetric diskUsage; @@ -69,7 +69,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet CacheMetrics cache; DocumentStoreMetrics(metrics::MetricSet *parent); - ~DocumentStoreMetrics(); + ~DocumentStoreMetrics() override; }; LidSpaceMetrics lidSpace; @@ -77,7 +77,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet proton::AttributeMetrics attributes; SubDBMetrics(const vespalib::string &name, metrics::MetricSet *parent); - ~SubDBMetrics(); + ~SubDBMetrics() override; }; struct AttributeMetrics : metrics::MetricSet @@ -89,14 +89,14 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet metrics::LongValueMetric feedingBlocked; ResourceUsageMetrics(metrics::MetricSet *parent); - ~ResourceUsageMetrics(); + ~ResourceUsageMetrics() override; }; ResourceUsageMetrics resourceUsage; MemoryUsageMetrics totalMemoryUsage; AttributeMetrics(metrics::MetricSet *parent); - ~AttributeMetrics(); + ~AttributeMetrics() override; }; struct IndexMetrics : metrics::MetricSet @@ -106,7 +106,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet metrics::LongValueMetric docsInMemory; IndexMetrics(metrics::MetricSet *parent); - ~IndexMetrics(); + ~IndexMetrics() override; }; struct MatchingMetrics : metrics::MetricSet { @@ -129,7 +129,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet using UP = std::unique_ptr<DocIdPartition>; DocIdPartition(const vespalib::string &name, metrics::MetricSet *parent); - ~DocIdPartition(); + ~DocIdPartition() override; void update(const matching::MatchingStats::Partition &stats); }; using DocIdPartitions = std::vector<DocIdPartition::UP>; @@ -141,6 +141,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet metrics::LongCountMetric queries; metrics::LongCountMetric limitedQueries; metrics::LongCountMetric softDoomedQueries; + metrics::DoubleValueMetric softDoomFactor; metrics::DoubleAverageMetric matchTime; metrics::DoubleAverageMetric groupingTime; metrics::DoubleAverageMetric rerankTime; @@ -151,7 +152,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet RankProfileMetrics(const vespalib::string &name, size_t numDocIdPartitions, metrics::MetricSet *parent); - ~RankProfileMetrics(); + ~RankProfileMetrics() override; void update(const matching::MatchingStats &stats); }; @@ -160,7 +161,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet void update(const matching::MatchingStats &stats); MatchingMetrics(metrics::MetricSet *parent); - ~MatchingMetrics(); + ~MatchingMetrics() override; }; struct SessionCacheMetrics : metrics::MetricSet { @@ -168,7 +169,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet SessionManagerMetrics grouping; SessionCacheMetrics(metrics::MetricSet *parent); - ~SessionCacheMetrics(); + ~SessionCacheMetrics() override; }; struct DocumentsMetrics : metrics::MetricSet { @@ -178,7 +179,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet metrics::LongValueMetric removed; DocumentsMetrics(metrics::MetricSet *parent); - ~DocumentsMetrics(); + ~DocumentsMetrics() override; }; JobMetrics job; @@ -196,7 +197,7 @@ struct DocumentDBTaggedMetrics : metrics::MetricSet size_t maxNumThreads; DocumentDBTaggedMetrics(const vespalib::string &docTypeName, size_t maxNumThreads_); - ~DocumentDBTaggedMetrics(); + ~DocumentDBTaggedMetrics() override; }; } |