From: Sage Weil Date: Mon, 3 Apr 2017 16:46:21 +0000 (-0400) Subject: mon: move 'osd perf' and 'osd blocked-by' to PGMap X-Git-Tag: v12.0.2~187^2~1 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=ba730ecd7065b99b506ed48390bcbd6e93bb7a60;p=ceph-ci.git mon: move 'osd perf' and 'osd blocked-by' to PGMap Signed-off-by: Sage Weil --- diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index 6fa5e8de4be..7d701d890ba 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -3771,29 +3771,11 @@ bool OSDMonitor::preprocess_command(MonOpRequestRef op) else rdata.append(ds); } - else if (prefix == "osd perf") { + else if (prefix == "osd perf" || + prefix == "osd blocked-by") { const PGMap &pgm = mon->pgmon()->pg_map; - if (f) { - f->open_object_section("osdstats"); - pgm.dump_osd_perf_stats(f.get()); - f->close_section(); - f->flush(ds); - } else { - pgm.print_osd_perf_stats(&ds); - } - rdata.append(ds); - } - else if (prefix == "osd blocked-by") { - const PGMap &pgm = mon->pgmon()->pg_map; - if (f) { - f->open_object_section("osd_blocked_by"); - pgm.dump_osd_blocked_by_stats(f.get()); - f->close_section(); - f->flush(ds); - } else { - pgm.print_osd_blocked_by_stats(&ds); - } - rdata.append(ds); + r = process_pg_map_command(prefix, cmdmap, pgm, osdmap, + f.get(), &ss, &rdata); } else if (prefix == "osd dump" || prefix == "osd tree" || diff --git a/src/mon/PGMap.cc b/src/mon/PGMap.cc index 590b2f545ea..9a09d77e3bd 100644 --- a/src/mon/PGMap.cc +++ b/src/mon/PGMap.cc @@ -2393,6 +2393,32 @@ int process_pg_map_command( } } + if (prefix == "osd perf") { + if (f) { + f->open_object_section("osdstats"); + pg_map.dump_osd_perf_stats(f); + f->close_section(); + f->flush(ds); + } else { + pg_map.print_osd_perf_stats(&ds); + } + odata->append(ds); + return 0; + } + + if (prefix == "osd blocked-by") { + if (f) { + f->open_object_section("osd_blocked_by"); + pg_map.dump_osd_blocked_by_stats(f); + f->close_section(); + f->flush(ds); + } else { + pg_map.print_osd_blocked_by_stats(&ds); + } + odata->append(ds); + return 0; + } + return -EOPNOTSUPP; }