diff options
Diffstat (limited to 'storage')
-rw-r--r-- | storage/src/vespa/storage/distributor/distributor_total_metrics.cpp | 19 | ||||
-rw-r--r-- | storage/src/vespa/storage/distributor/distributor_total_metrics.h | 1 |
2 files changed, 12 insertions, 8 deletions
diff --git a/storage/src/vespa/storage/distributor/distributor_total_metrics.cpp b/storage/src/vespa/storage/distributor/distributor_total_metrics.cpp index fff996958b3..510b1df2ff3 100644 --- a/storage/src/vespa/storage/distributor/distributor_total_metrics.cpp +++ b/storage/src/vespa/storage/distributor/distributor_total_metrics.cpp @@ -18,23 +18,26 @@ DistributorTotalMetrics::DistributorTotalMetrics(uint32_t num_distributor_stripe DistributorTotalMetrics::~DistributorTotalMetrics() = default; void -DistributorTotalMetrics::aggregate() +DistributorTotalMetrics::aggregate_helper(DistributorMetricSet &total) const { - DistributorMetricSet::reset(); - _bucket_db_updater_metrics.addToPart(*this); + _bucket_db_updater_metrics.addToPart(total); for (auto &stripe_metrics : _stripes_metrics) { - stripe_metrics->addToPart(*this); + stripe_metrics->addToPart(total); } } void +DistributorTotalMetrics::aggregate() +{ + DistributorMetricSet::reset(); + aggregate_helper(*this); +} + +void DistributorTotalMetrics::addToSnapshot(Metric& m, std::vector<Metric::UP> &ownerList) const { DistributorMetricSet total; - _bucket_db_updater_metrics.addToPart(total); - for (auto &stripe_metrics : _stripes_metrics) { - stripe_metrics->addToPart(total); - } + aggregate_helper(total); total.addToSnapshot(m, ownerList); } diff --git a/storage/src/vespa/storage/distributor/distributor_total_metrics.h b/storage/src/vespa/storage/distributor/distributor_total_metrics.h index 7b4f705a6fe..f0457fe64c3 100644 --- a/storage/src/vespa/storage/distributor/distributor_total_metrics.h +++ b/storage/src/vespa/storage/distributor/distributor_total_metrics.h @@ -15,6 +15,7 @@ class DistributorTotalMetrics : public DistributorMetricSet { std::vector<std::shared_ptr<DistributorMetricSet>> _stripes_metrics; DistributorMetricSet _bucket_db_updater_metrics; + void aggregate_helper(DistributorMetricSet &total) const; public: explicit DistributorTotalMetrics(uint32_t num_distributor_stripes); ~DistributorTotalMetrics() override; |