| 609 | } |
| 610 | |
| 611 | void Client::dump_status(Formatter *f) |
| 612 | { |
| 613 | ceph_assert(ceph_mutex_is_locked_by_me(client_lock)); |
| 614 | |
| 615 | ldout(cct, 1) << __func__ << dendl; |
| 616 | |
| 617 | const epoch_t osd_epoch |
| 618 | = objecter->with_osdmap(std::mem_fn(&OSDMap::get_epoch)); |
| 619 | |
| 620 | if (f) { |
| 621 | f->open_object_section("metadata"); |
| 622 | for (const auto& kv : metadata) |
| 623 | f->dump_string(kv.first.c_str(), kv.second); |
| 624 | f->close_section(); |
| 625 | |
| 626 | f->dump_int("dentry_count", lru.lru_get_size()); |
| 627 | f->dump_int("dentry_pinned_count", lru.lru_get_num_pinned()); |
| 628 | f->dump_int("id", get_nodeid().v); |
| 629 | entity_inst_t inst(messenger->get_myname(), messenger->get_myaddr_legacy()); |
| 630 | f->dump_object("inst", inst); |
| 631 | f->dump_object("addr", inst.addr); |
| 632 | f->dump_stream("inst_str") << inst.name << " " << inst.addr.get_legacy_str(); |
| 633 | f->dump_string("addr_str", inst.addr.get_legacy_str()); |
| 634 | f->dump_int("inode_count", inode_map.size()); |
| 635 | f->dump_int("mds_epoch", mdsmap->get_epoch()); |
| 636 | f->dump_int("osd_epoch", osd_epoch); |
| 637 | f->dump_int("osd_epoch_barrier", cap_epoch_barrier); |
| 638 | f->dump_bool("blocklisted", blocklisted); |
| 639 | f->dump_string("fs_name", mdsmap->get_fs_name()); |
| 640 | } |
| 641 | } |
| 642 | |
| 643 | void Client::dump_subvolume_metrics(Formatter* f) { |
| 644 | subvolume_tracker->dump(f); |
no test coverage detected