From: Kefu Chai Date: Wed, 7 Jul 2021 02:29:59 +0000 (+0800) Subject: crimson/admin: dump DERIVE metrics as signed integer X-Git-Tag: v17.1.0~1468^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F42203%2Fhead;p=ceph.git 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 --- diff --git a/src/crimson/admin/osd_admin.cc b/src/crimson/admin/osd_admin.cc index a69cd84b4ad..e1c8c5b4d8a 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();