From 7fef611462943aa8199b6f7e87ae115b2a566de1 Mon Sep 17 00:00:00 2001 From: kungf Date: Thu, 9 Aug 2018 17:11:36 +0800 Subject: [PATCH] OSD: add recovery bytes counter to osd logger add recovery bytes counter, so we can get recovery bandwidth from prometheus Signed-off-by: kungf --- src/osd/OSD.cc | 5 +++++ src/osd/OSD.h | 1 + src/osd/ReplicatedBackend.cc | 2 ++ 3 files changed, 8 insertions(+) diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 86e06dd561995..3d89b0260bcf4 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -3074,6 +3074,11 @@ void OSD::create_logger() "Started recovery operations", "rop", PerfCountersBuilder::PRIO_INTERESTING); + osd_plb.add_u64_counter( + l_osd_rbytes, "recovery_bytes", + "recovery bytes", + "rbt", PerfCountersBuilder::PRIO_INTERESTING); + osd_plb.add_u64(l_osd_loadavg, "loadavg", "CPU load"); osd_plb.add_u64(l_osd_buf, "buffer_bytes", "Total allocated buffer size", NULL, 0, unit_t(UNIT_BYTES)); osd_plb.add_u64(l_osd_history_alloc_bytes, "history_alloc_Mbytes", NULL, 0, unit_t(UNIT_BYTES)); diff --git a/src/osd/OSD.h b/src/osd/OSD.h index e435b99000a71..2d42a3e87e8cc 100644 --- a/src/osd/OSD.h +++ b/src/osd/OSD.h @@ -121,6 +121,7 @@ enum { l_osd_push_outb, l_osd_rop, + l_osd_rbytes, l_osd_loadavg, l_osd_buf, diff --git a/src/osd/ReplicatedBackend.cc b/src/osd/ReplicatedBackend.cc index 62f89eba14eff..2cfe72a7831bc 100644 --- a/src/osd/ReplicatedBackend.cc +++ b/src/osd/ReplicatedBackend.cc @@ -1696,6 +1696,7 @@ bool ReplicatedBackend::handle_pull_response( pi.stat.num_keys_recovered += pop.omap_entries.size(); pi.stat.num_bytes_recovered += data.length(); + get_parent()->get_logger()->inc(l_osd_rop, pop.omap_entries.size() + data.length()); if (complete) { pi.stat.num_objects_recovered++; @@ -1966,6 +1967,7 @@ int ReplicatedBackend::build_push_op(const ObjectRecoveryInfo &recovery_info, if (stat) { stat->num_keys_recovered += out_op->omap_entries.size(); stat->num_bytes_recovered += out_op->data.length(); + get_parent()->get_logger()->inc(l_osd_rbytes, out_op->omap_entries.size() + out_op->data.length()); } get_parent()->get_logger()->inc(l_osd_push); -- 2.39.5