]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/telemetry: add CephFS metadata
authorSage Weil <sage@redhat.com>
Tue, 29 Oct 2019 16:08:42 +0000 (11:08 -0500)
committerJoao Eduardo Luis <joao@suse.com>
Thu, 12 Dec 2019 17:59:57 +0000 (17:59 +0000)
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 7f6aad677b76847514f6f9b893827412dfb35a6b)

 Conflicts:
PendingReleaseNotes
            Dropped due to conflicts down the road
src/pybind/mgr/telemetry/module.py
            Context issues

src/pybind/mgr/telemetry/module.py

index 9fbf3c7ed8ffdfe364359037cdf2e6b946dd1793..e52543d0396ee003c63bcb41814ca25452afcc17 100644 (file)
@@ -43,6 +43,9 @@ REVISION = 2
 #   - added config option changes
 #   - added channels
 #   - added explicit license acknowledgement to the opt-in process
+#
+# Version 3:
+#   - added CephFS metadata (how many MDSs, fs features, how many data pools)
 
 class Module(MgrModule):
     config = dict()
@@ -322,8 +325,31 @@ class Module(MgrModule):
             }
 
             report['fs'] = {
-                'count': len(fs_map['filesystems'])
+                'count': len(fs_map['filesystems']),
+                'feature_flags': fs_map['feature_flags'],
+                'num_standby_mds': len(fs_map['standbys']),
+                'filesystems': [],
             }
+            num_mds = len(fs_map['standbys'])
+            for fsm in fs_map['filesystems']:
+                fs = fsm['mdsmap']
+                report['fs']['filesystems'].append({
+                    'max_mds': fs['max_mds'],
+                    'ever_allowed_features': fs['ever_allowed_features'],
+                    'explicitly_allowed_features': fs['explicitly_allowed_features'],
+                    'num_in': len(fs['in']),
+                    'num_up': len(fs['up']),
+                    'num_standby_replay': len(
+                        [mds for gid, mds in fs['info'].items()
+                         if mds['state'] == 'up:standby-replay']),
+                    'num_mds': len(fs['info']),
+                    'balancer_enabled': len(fs['balancer']) > 0,
+                    'num_data_pools': len(fs['data_pools']),
+                    'standby_count_wanted': fs['standby_count_wanted'],
+                    'approx_ctime': fs['created'][0:7],
+                })
+                num_mds += len(fs['info'])
+            report['fs']['total_num_mds'] = num_mds
 
             report['metadata'] = dict()
             report['metadata']['osd'] = self.gather_osd_metadata(osd_map)