db, view: add view update generator metrics
The view update generator completely lacked metrics, so a basic set of them is now exposed.
This commit is contained in:
@@ -152,4 +152,21 @@ future<> view_update_generator::register_staging_sstable(sstables::shared_sstabl
|
||||
}
|
||||
}
|
||||
|
||||
void view_update_generator::setup_metrics() {
|
||||
namespace sm = seastar::metrics;
|
||||
|
||||
_metrics.add_group("view_update_generator", {
|
||||
sm::make_gauge("pending_registrations", sm::description("Number of tasks waiting to register staging sstables"),
|
||||
[this] { return _registration_sem.waiters(); }),
|
||||
|
||||
sm::make_gauge("queued_batches_count",
|
||||
sm::description("Number of sets of sstables queued for view update generation"),
|
||||
[this] { return _sstables_with_tables.size(); }),
|
||||
|
||||
sm::make_gauge("sstables_to_move_count",
|
||||
sm::description("Number of sets of sstables which are already processed and wait to be moved from their staging directory"),
|
||||
[this] { return _sstables_to_move.size(); })
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -48,8 +48,11 @@ private:
|
||||
};
|
||||
std::unordered_map<lw_shared_ptr<table>, std::vector<sstables::shared_sstable>> _sstables_with_tables;
|
||||
std::unordered_map<lw_shared_ptr<table>, std::vector<sstables::shared_sstable>> _sstables_to_move;
|
||||
metrics::metric_groups _metrics;
|
||||
public:
|
||||
view_update_generator(database& db) : _db(db) { }
|
||||
view_update_generator(database& db) : _db(db) {
|
||||
setup_metrics();
|
||||
}
|
||||
|
||||
future<> start();
|
||||
future<> stop();
|
||||
@@ -58,6 +61,7 @@ public:
|
||||
ssize_t available_register_units() const { return _registration_sem.available_units(); }
|
||||
private:
|
||||
bool should_throttle() const;
|
||||
void setup_metrics();
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user