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" ||
}
}
+ 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;
}