osd_plb.add_u64_counter(l_osd_tier_try_flush_fail, "tier_try_flush_fail");
osd_plb.add_u64_counter(l_osd_tier_evict, "tier_evict");
osd_plb.add_u64_counter(l_osd_tier_whiteout, "tier_whiteout");
+ osd_plb.add_u64_counter(l_osd_tier_dirty, "tier_dirty");
+ osd_plb.add_u64_counter(l_osd_tier_clean, "tier_clean");
+
logger = osd_plb.create_perf_counters();
cct->get_perfcounters_collection()->add(logger);
}
assert(ctx->new_obs.oi.is_dirty());
ctx->new_obs.oi.clear_flag(object_info_t::FLAG_DIRTY);
--ctx->delta_stats.num_objects_dirty;
+ osd->logger->inc(l_osd_tier_clean);
} else if (!ctx->new_obs.oi.test_flag(object_info_t::FLAG_DIRTY)) {
dout(20) << " setting DIRTY flag" << dendl;
ctx->new_obs.oi.set_flag(object_info_t::FLAG_DIRTY);
++ctx->delta_stats.num_objects_dirty;
+ osd->logger->inc(l_osd_tier_dirty);
}
}
finish_ctx(ctx, pg_log_entry_t::CLEAN);
+ osd->logger->inc(l_osd_tier_clean);
+
if (!fop->dup_ops.empty()) {
dout(20) << __func__ << " queueing dups for " << ctx->at_version << dendl;
list<OpRequestRef>& ls = waiting_for_ondisk[ctx->at_version];