From da43d1df916466780289a867261071d8dd0aa30b Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Wed, 7 Jul 2021 10:29:59 +0800 Subject: [PATCH] crimson/admin: dump DERIVE metrics as signed integer per include/seastar/core/metrics.hh, // The value binding data types enum class data_type : uint8_t { COUNTER, // unsigned int 64 GAUGE, // double DERIVE, // signed int 64 ABSOLUTE, // unsigned int 64 HISTOGRAM, }; the DERIVE values are signed. Signed-off-by: Kefu Chai --- src/crimson/admin/osd_admin.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/crimson/admin/osd_admin.cc b/src/crimson/admin/osd_admin.cc index a69cd84b4aded..e1c8c5b4d8ab4 100644 --- a/src/crimson/admin/osd_admin.cc +++ b/src/crimson/admin/osd_admin.cc @@ -238,10 +238,11 @@ private: f->dump_float(full_name, v.d()); break; case data_type::COUNTER: - [[fallthrough]]; - case data_type::DERIVE: f->dump_unsigned(full_name, v.ui()); break; + case data_type::DERIVE: + f->dump_int(full_name, v.i()); + break; case data_type::HISTOGRAM: { f->open_object_section(full_name); auto&& h = v.get_histogram(); -- 2.39.5