]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mdsmap: show individual mds states in summary
authorSage Weil <sage@newdream.net>
Thu, 3 Jun 2010 20:48:10 +0000 (13:48 -0700)
committerSage Weil <sage@newdream.net>
Thu, 3 Jun 2010 20:48:10 +0000 (13:48 -0700)
src/mds/MDSMap.cc

index 68f6bd39b66100449cad666ad9e1762f68e4f98e..bf211cf51636f684ae989c2df8290962cece2ce7 100644 (file)
@@ -113,18 +113,27 @@ void MDSMap::print(ostream& out)
 
 void MDSMap::print_summary(ostream& out) 
 {
+  map<int,string> by_rank;
   map<string,int> by_state;
+
   for (map<uint64_t,mds_info_t>::iterator p = mds_info.begin();
        p != mds_info.end();
        p++) {
     string s = ceph_mds_state_name(p->second.state);
     if (p->second.laggy())
       s += "(laggy or crashed)";
-    by_state[s]++;
+
+    if (p->second.rank >= 0)
+      by_rank[p->second.rank] = s;
+    else
+      by_state[s]++;
   }
 
   out << "e" << get_epoch() << ": " << up.size() << "/" << in.size() << "/" << max_mds << " up";
 
+  if (by_rank.size())
+    out << " " << by_rank;
+
   for (map<string,int>::reverse_iterator p = by_state.rbegin(); p != by_state.rend(); p++)
     out << ", " << p->second << " " << p->first;