summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2019-08-22 11:11:15 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2019-08-22 11:11:15 +0000
commit18a87fa2cfe385c758b9d92a71d85e5f030581fc (patch)
treef18782241baf42ff54fc8b56d34385e1ca10d20f /searchcore
parentc0444cf8384a34981530d06743af26f163248744 (diff)
Add soft_doom_factor metric production per rankprofile in the backend.
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.cpp2
-rw-r--r--searchcore/src/vespa/searchcore/proton/metrics/documentdb_tagged_metrics.h29
2 files changed, 17 insertions, 14 deletions
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;
};
}