File: //usr/lib/python3/dist-packages/sos/report/plugins/__pycache__/ceph_common.cpython-312.pyc
�
([QhS � �F � d dl Z d dlmZ d dlmZmZmZ G d� deee� Zy)� N)�gethostname)�Plugin�RedHatPlugin�UbuntuPluginc �` � e Zd ZdZdZdZdZ e� ZdZ dde� �de� �d e� �d
dfZ
dZd
� Zd� Z
y)�
CephCommonzCEPH common�ceph_common)�storage�virt� container�ceph)zceph-(.*-)?(mon|rgw|osd).*)r
zceph-mdszceph-common�
libcephfs1zceph-fs-commonzcalamari-serverzceph-nfs@pacemakerz ceph-mds@z ceph-mon@z ceph-mgr@zceph-radosgw@*z
ceph-osd@*)�/etc/ceph/ceph.confz/var/snap/microceph/*c
� � | j d� }| j j j d� }|se| j ddd�� |s| j g d�� n| j g d�� | j g d�� | j
g d �� �n(|s| j d
dg� n| j dd
g� | j dd�� g d�}| j |D �cg c] }d|� ��� c}d�� d}| j d|� d�d�� d}| j |dd�� | j |� d�|� d�|� d�g� ddd�ddd�d d!d�d"d#d�d$d%d�d&d'd�d(d)d�d*d+d�g}|D ]Q }t j |j d,� � } |j d-� }
| j d.| � �d/|
� �d�� �S | j d0g� y c c}w )1N�all_logs� microceph� ceph_conf�ceph_log)z.*/ceph.confz/var/log/ceph(.*)?/ceph.log.*)z/var/log/calamari/*.logz/var/log/ceph/**/ceph.logz/var/log/ceph/cephadm.log)z/var/log/calamariz/var/log/ceph/**/ceph.log*z/var/log/ceph/cephadm.log*)z /var/log/ceph/**/ceph.audit.log*z
/etc/ceph/z/etc/calamari/z/var/lib/ceph/tmp/)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(/var/snap/microceph/common/logs/ceph.logz./var/snap/microceph/common/logs/ceph.audit.logz)/var/snap/microceph/common/logs/ceph.log*z//var/snap/microceph/common/logs/ceph.audit.log*zsnap info microceph)�subdir) zclient config listzcluster config listzcluster listz disk listz
log get-level�statusz pool listzremote listzreplication list rbdz
microceph z,/var/snap/microceph/common/state/cluster.crtzopenssl x509 -in z -noout -datesz)/var/snap/microceph/common/state/database�ls_microceph_dqlite_dir)�suggest_filenamer z
/info.yamlz
/cluster.yamlz/../daemon.yamlz/SELECT * FROM sqlite_master WHERE type="table";�schema)�query�suggested_file_suffixzgSELECT * FROM config WHERE NOT ( key LIKE "%keyring%" OR key LIKE "%ca_cert%" OR key LIKE "%ca_key%" );�configzSELECT * FROM services;�servicesz5SELECT id, name, expiry_date FROM core_token_records;�
token_recordszvSELECT id, name, address, schema_internal, schema_external, heartbeat, role, api_extensions FROM core_cluster_members;�core_cluster_memberszSELECT * FROM disks;�diskszSELECT * FROM client_config;�
client_configzSELECT * FROM remote;�remoter r zmicroceph cluster sql �microceph_cluster_sql_zceph -v)�
get_option�policy�package_manager�pkg_by_name�
add_file_tags�
add_copy_spec�add_forbidden_path�add_cmd_output�add_dir_listing�json�dumps�get)�selfr �
microceph_pkg�cmds�cmd�
dqlite_crt�db_path�queries�query_entryr �file_suffixs �@/usr/lib/python3/dist-packages/sos/report/plugins/ceph_common.py�setupzCephCommon.setup. s� � ��?�?�:�.�����3�3�?�?��L�
����� +�1;� �
�
��"�"� $� � �"�"� $� �
��� �
�
�#�#� %�
� ��"�"�>�D�$� �
�"�"�?�E�$� �
��� 5�k��J�
�D�
���t� D��:�c�U�!3� D�'2�
�
4� H�J����#�J�<�~�>�"�
�
�
B�G�
� � ��!:�"�
!�
�
����i�z�*��i�}�-��i��/� �
� L�-5� �3�
.6�� 7�-7��3� .=��5� .D�
� 4�-4��
<�-<��
5�-5��W/�G�b '�
���
�
�;�?�?�7�#;�<��)�o�o�.E�F���#�#�,�U�G�4�'=�k�]�%K�&� $� �
�
����
� ��e !Es �-Gc �Z � dg}ddj |� � d�}| j d|d� y )Nzrgw keystone admin passwordz(^(�|z
)\s*=\s*)(.*)r z\1*********)�join�do_path_regex_sub)r0 �protect_keys�regexs r9 �postproczCephCommon.postproc� s9 � �)�
�� �s�x�x��-�.�m�<�����4�e�^�L� N)�__name__�
__module__�__qualname__�
short_desc�plugin_name�profiles�
containersr �
ceph_hostname�packagesr �filesr: rA � rB r9 r r
sh � ��J��K�7�H�0�J��M�M��H� �
�M�?�#�
�M�?�#�
�M�?�#���
�H�
'�E�X�tMrB r )r- �socketr �sos.report.pluginsr r r r rM rB r9 �<module>rP s'