]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: l_osd_tier_[dirty|clean]
authorSage Weil <sage@inktank.com>
Mon, 17 Feb 2014 20:20:28 +0000 (12:20 -0800)
committerSage Weil <sage@inktank.com>
Tue, 18 Feb 2014 12:51:03 +0000 (04:51 -0800)
Signed-off-by: Sage Weil <sage@inktank.com>
src/osd/OSD.cc
src/osd/OSD.h
src/osd/ReplicatedPG.cc

index 356e576a9a4fd87de84d07937912c482aa8c272e..93f9f288ab30a6025391a63d315647dfd88133a1 100644 (file)
@@ -1441,6 +1441,9 @@ void OSD::create_logger()
   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);
 }
index 5a9977a237e0e04b6512ba48a903821f8a648955..e3c2e1884e49197cb22e7f1ab419e4dc38680a07 100644 (file)
@@ -131,6 +131,9 @@ enum {
   l_osd_tier_try_flush_fail,
   l_osd_tier_evict,
   l_osd_tier_whiteout,
+  l_osd_tier_dirty,
+  l_osd_tier_clean,
+
   l_osd_last,
 };
 
index 376d69e18e08d5bcbf4cb8fc4ddf3dce2bf87c3d..f5d8094da1c3bfbd418f59c73a51d90007614f23 100644 (file)
@@ -4574,10 +4574,12 @@ void ReplicatedPG::make_writeable(OpContext *ctx)
       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);
     }
   }
 
@@ -5955,6 +5957,8 @@ int ReplicatedPG::try_flush_mark_clean(FlushOpRef fop)
 
   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];