a Ö>ïh–ã@s4ddlZddlmZmZmZGdd„deeeƒZdS)éN)ÚPluginÚ RedHatPluginÚ UbuntuPluginc@s0eZdZdZdZdZdZdZdd„Zdd „Z d S) ÚCephMDSzCEPH mdsZceph_mds)ZstorageZvirtÚ containerZceph)zceph-(.*-)?fs.*)z/var/lib/ceph/mds/*ú/var/lib/ceph/*/mds.*z%/var/snap/microceph/common/data/mds/*csú| d¡}|jj d¡}|rJ|r.| dg¡n | dg¡| gd¢¡nH| ddi¡|sj| dg¡n | d g¡| gd ¢¡| gd ¢¡gd ¢‰z| d ¡dd}WntyÆd}Yn0|rÐdnd}|j ‡fdd„|  |¡Dƒ|ddS)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.*.logZ 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/rz/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 dumpzcounter schemaz damage lsz dump loadsz dump tree /Zdump_blocked_opsZdump_historic_opsZdump_historic_ops_by_durationZ dump_mempoolsZdump_ops_in_flightz get subtreesZobjecter_requestsÚopsz perf dumpzperf histogram dumpzperf histogram schemaz perf schemaz session lsÚstatusÚversionz ceph-mds*réz/var/snap/microceph/current/runz /var/run/cephcs&g|]}ˆD]}d|›d|›‘q qS)z ceph daemon ú ©)Ú.0ÚiÚc©Zcmdsrú?/usr/lib/python3.9/site-packages/sos/report/plugins/ceph_mds.pyÚ jsÿz!CephMDS.setup..)r) Z get_optionZpolicyZpackage_managerZ pkg_by_nameZ add_copy_specZadd_forbidden_pathZ add_file_tagsZget_all_containers_by_regexÚ ExceptionZadd_cmd_outputÚ get_socks)Úselfrr ZcnameÚ directoryrrrÚsetups@ ÿÿÿ    ÿþýz CephMDS.setupcCsLg}t |¡D]8\}}}|D](}| d¡rd|vr| | ||¡¡qq|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.asokZmds)ÚosÚwalkÚendswithÚappendZ path_join)rrZ ceph_socketsZrdirÚ_ÚfilesÚfilerrrrps zCephMDS.get_socksN) Ú__name__Ú __module__Ú __qualname__Z short_descZ plugin_nameZprofilesZ containersr rrrrrrr sZr)rZsos.report.pluginsrrrrrrrrÚ s