
    -_g                     :    d dl Z d dlmZmZmZ  G d deee      Zy)    N)PluginRedHatPluginUbuntuPluginc                   ,    e Zd ZdZdZdZdZdZd Zd Z	y)	CephMDSzCEPH mdsceph_mds)storagevirt	containerceph)zceph-(.*-)?fs.*)z/var/lib/ceph/mds/*/var/lib/ceph/*/mds.*z%/var/snap/microceph/common/data/mds/*c                    | j                  d      }| j                  j                  j                  d      }|r;|r| j	                  dg       n| j	                  dg       | j                  g d       n`| j                  ddi       |s| j	                  dg       n| j	                  d	g       | j	                  g d
       | j                  g d       g d}	 | j                  d      d   d   }|rdnd}| j                  | j                  |      D cg c]  }|D ]
  }d| d|   c}}|       y # t        $ r d }Y Sw xY wc c}}w )Nall_logs	microcephz//var/snap/microceph/common/logs/*ceph-mds*.log*z./var/snap/microceph/common/logs/*ceph-mds*.log)z'/var/snap/microceph/common/**/*keyring*z(/var/snap/microceph/current/**/*keyring*z"/var/snap/microceph/common/state/*z/var/log/ceph/ceph-mds.*.logceph_mds_logz/var/log/ceph/ceph-mds*.logz/var/log/ceph/ceph-mds*.log*)z/var/lib/ceph/bootstrap-mds/z/var/lib/ceph/mds/r   z/run/ceph/ceph-mds*)z/etc/ceph/*keyring*z/var/lib/ceph/*keyring*z/var/lib/ceph/*/*keyring*z/var/lib/ceph/*/*/*keyring*z/var/lib/ceph/osdz/var/lib/ceph/monz/var/lib/ceph/tmp/*mnt*z/etc/ceph/*bindpass*)zcache statusz	client lszconfig diffzconfig showzcounter dumpzcounter schemaz	damage lsz
dump loadszdump tree /dump_blocked_opsdump_historic_opsdump_historic_ops_by_durationdump_mempoolsdump_ops_in_flightzget subtreesobjecter_requestsopsz	perf dumpzperf histogram dumpzperf histogram schemazperf schemaz
session lsstatusversionz	ceph-mds*r      z/var/snap/microceph/current/runz/var/run/cephzceph daemon  )r   )
get_optionpolicypackage_managerpkg_by_nameadd_copy_specadd_forbidden_pathadd_file_tagsget_all_containers_by_regex	Exceptionadd_cmd_output	get_socks)selfr   r   cmdscname	directoryics           =/usr/lib/python3/dist-packages/sos/report/plugins/ceph_mds.pysetupzCephMDS.setup   s   ??:.KK//;;KH	""E$  ""D$  ## %  .   ""$A#CD""$B#DE    ## % 
8	44[A!DQGE :C5  	 	NN9%5'(/35*+ 1#Qqc"5"5  	 	
  	E	5s   D6 E
6EEc                     g }t        j                  |      D ]E  \  }}}|D ]:  }|j                  d      sd|v s|j                  | j	                  ||             < G |S )z
        Find any available admin sockets under /var/run/ceph (or subdirs for
        later versions of Ceph) which can be used for ceph daemon commands
        z.asokmds)oswalkendswithappend	path_join)r(   r+   ceph_socketsrdir_filesfiles          r.   r'   zCephMDS.get_socksp   sm    
  ggi0 	DND!U D==)etm ''tT(BCD	D     N)
__name__
__module____qualname__
short_descplugin_nameprofiles
containersr:   r/   r'    r<   r.   r   r      s)    JK7H%J6EX
t
r<   r   )r2   sos.report.pluginsr   r   r   r   rD   r<   r.   <module>rF      s"    
 A AmflL mr<   