]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: show the leader info on mon stat command 14178/head
authorsongbaisen <song.baisen@zte.com.cn>
Tue, 28 Mar 2017 06:41:59 +0000 (14:41 +0800)
committersongbaisen <song.baisen@zte.com.cn>
Tue, 28 Mar 2017 06:41:59 +0000 (14:41 +0800)
Signed-off-by:song baisen <song.baisen@zte.com.cn>

src/mon/Monitor.h
src/mon/MonmapMonitor.cc

index 96d8f2582f39030b937aad19a678020cbd9794c1..5cdc09971b271562e82314ea08a013c6ece8c72e 100644 (file)
@@ -558,6 +558,9 @@ private:
 public:
   epoch_t get_epoch();
   int get_leader() const { return leader; }
+  string get_leader_name() {
+    return quorum.empty() ? string() : monmap->get_name(*quorum.begin());
+  }
   const set<int>& get_quorum() const { return quorum; }
   list<string> get_quorum_names() {
     list<string> q;
index 046cb58eeffd7d2f8d527b09e0348d55417dc1db..dea7acf8c4f42956b1bf2e420ca86dae9f7539bb 100644 (file)
@@ -243,8 +243,9 @@ bool MonmapMonitor::preprocess_command(MonOpRequestRef op)
 
   if (prefix == "mon stat") {
     mon->monmap->print_summary(ss);
-    ss << ", election epoch " << mon->get_epoch() << ", quorum " << mon->get_quorum()
-       << " " << mon->get_quorum_names();
+    ss << ", election epoch " << mon->get_epoch() << ", leader "
+       << mon->get_leader() << " " << mon->get_leader_name()
+       << ", quorum " << mon->get_quorum() << " " << mon->get_quorum_names();
     rdata.append(ss);
     ss.str("");
     r = 0;