RBMDeviceGroupRef&& rb_group,
BackrefManager &backref_manager,
LBAManager &lba_manager,
- bool detailed)
+ bool detailed,
+ bool is_cold)
: store_index(store_index),
detailed(detailed),
+ is_cold(is_cold),
rb_group(std::move(rb_group)),
backref_manager(backref_manager),
lba_manager(lba_manager)
{
namespace sm = seastar::metrics;
- metrics.add_group("rbm_cleaner", {
+ std::string prefix;
+ if (is_cold) {
+ prefix.append("cold_");
+ }
+ prefix.append("rbm_cleaner");
+
+ metrics.add_group(prefix, {
sm::make_counter("total_bytes",
[this] { return get_total_bytes(); },
sm::description("the size of the space"),
RBMDeviceGroupRef&& rb_group,
BackrefManager &backref_manager,
LBAManager &lba_manager,
- bool detailed);
+ bool detailed,
+ bool is_cold);
static RBMCleanerRef create(
store_index_t store_index,
RBMDeviceGroupRef&& rb_group,
BackrefManager &backref_manager,
LBAManager &lba_manager,
- bool detailed) {
+ bool detailed,
+ bool is_cold) {
return std::make_unique<RBMCleaner>(
store_index,
- std::move(rb_group), backref_manager, lba_manager, detailed);
+ std::move(rb_group), backref_manager, lba_manager, detailed, is_cold);
}
RBMDeviceGroup* get_rb_group() {
store_index_t store_index;
const bool detailed;
+ const bool is_cold;
RBMDeviceGroupRef rb_group;
BackrefManager &backref_manager;
LBAManager &lba_manager;