]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/os/seastore: add metrics about total invalidated transactions 52369/head
authorZhang Song <zhangsong325@gmail.com>
Sun, 9 Jul 2023 04:22:58 +0000 (12:22 +0800)
committerZhang Song <zhangsong325@gmail.com>
Mon, 10 Jul 2023 02:57:13 +0000 (10:57 +0800)
Signed-off-by: Zhang Song <zhangsong325@gmail.com>
src/crimson/os/seastore/cache.cc
src/crimson/os/seastore/cache.h

index 0b0f5cd332e5c0412f20bb5cf499726206328f56..52c08712d2896d7eca6d41c83e679d1bffb2ea7b 100644 (file)
@@ -225,9 +225,9 @@ void Cache::register_metrics()
           "cache",
           {
             sm::make_counter(
-              "trans_invalidated",
+              "trans_invalidated_by_extent",
               counter,
-              sm::description("total number of transaction invalidated"),
+              sm::description("total number of transactions invalidated by extents"),
               {src_label, ext_label}
             ),
           }
@@ -295,6 +295,12 @@ void Cache::register_metrics()
       metrics.add_group(
         "cache",
         {
+          sm::make_counter(
+            "trans_invalidated",
+            efforts.total_trans_invalidated,
+            sm::description("total number of transactions invalidated"),
+            {src_label}
+          ),
           sm::make_counter(
             "invalidated_delta_bytes",
             efforts.mutate_delta_bytes,
@@ -843,6 +849,7 @@ void Cache::mark_transaction_conflicted(
 
   auto& efforts = get_by_src(stats.invalidated_efforts_by_src,
                              t.get_src());
+  ++efforts.total_trans_invalidated;
 
   auto& counter = get_by_ext(efforts.num_trans_invalidated,
                              conflicting_extent.get_type());
index 2f7346fe3583be11bf5d89985fb958fd1603753b..3185c49012fc3a6b591e05be13fc53cf3201bec1 100644 (file)
@@ -1438,6 +1438,7 @@ private:
     io_stat_t fresh;
     io_stat_t fresh_ool_written;
     counter_by_extent_t<uint64_t> num_trans_invalidated;
+    uint64_t total_trans_invalidated = 0;
     uint64_t num_ool_records = 0;
     uint64_t ool_record_bytes = 0;
   };