HEX
Server: Apache
System: Linux insrv.serversdaddy.com 5.14.0-362.24.2.el9_3.x86_64 #1 SMP PREEMPT_DYNAMIC Sat Mar 30 14:11:54 EDT 2024 x86_64
User: jsaha (1066)
PHP: 8.3.6
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //usr/lib/python3.9/site-packages/sos/report/plugins/__pycache__/ovn_central.cpython-39.pyc
a

^��c"�@sjddlmZmZmZmZddlZddlZddlZGdd�de�ZGdd�dee�Z	Gdd�deee�Z
dS)	�)�Plugin�RedHatPlugin�DebianPlugin�UbuntuPluginNc@s@eZdZdZdZdZdZdd�Zgfdd�Zd	d
�Z	dd�Z
d
S)�
OVNCentralz
OVN NorthdZovn_central)ZnetworkZvirt)zovn-dbs-bundle.*Zovn_cluster_north_db_servercCs�tj�|j|j�}|jr�|jd|j|jd�}|ddksFd|dvrX|�d|j�n>t�	|j�}|d�
d�D]"}|�|�rrtj�|j|�Sqr|S)Nzls %s)�	container�statusr�
�outputz?Could not retrieve ovn_controller socket path from container %s)�os�path�join�ovn_controller_sock_path�ovn_controller_sock_regex�_container_name�exec_cmd�
_log_error�re�compile�split�match)�selfZ_sfile�res�pattern�filename�r�B/usr/lib/python3.9/site-packages/sos/report/plugins/ovn_central.py�_find_ovn_controller_socks(
����

�
z$OVNCentral._find_ovn_controller_sockc
sp|jrzd|}|j|dd|jd�}|ddkrB|�d|j�dSzt�|d�}Wn"tyv|�d|�YdS0n�ztt|�|�d	��P}zt�|�}Wn0ty�|�d|�YWd�WdS0Wd�n1s�0YWn:t	�y(}z |�d
||f�WYd}~dSd}~00z�fdd�t
�|d
�D�WSt�yj|�d|�Yn0dS)Nzcat %sT)�timeout�
foregroundrrrz3Could not retrieve DB schema file from container %sr
zCannot parse JSON file %s�rz$Could not open DB schema file %s: %scsg|]}|�vr|�qSrr)�.0�table��skiprr�
<listcomp>Ms�z5OVNCentral.get_tables_from_schema.<locals>.<listcomp>�tablesz DB schema %s has no 'tables' key)
rrr�json�loads�	Exception�open�	path_join�load�IOError�dict�keys�AttributeError)rrr$�cmdrZdb�f�exrr#r�get_tables_from_schema1sF
��
�8
��
z!OVNCentral.get_tables_from_schemacCs(|sdS|D]}|�d||f�qdS)Nz
%s list %s)�append)rr&�cmdsZovn_cmdr"rrr�add_database_outputRszOVNCentral.add_database_outputc
	Cs|�|jd�r$|�|jd�|_n|�|jd�|_tj�d�}dD]B}|�|�d|�|�d|�|�d|�g�|rF|�|�||��qF|�	d�r�|�d	�n
|�d
�|�
�}|jd�|j
�d�|j�d
d�|�gd|jdd�gd�}gd�}dD]$}|�|�|d��}|�||d�q�|}dD]*}|�|�|d�dg�}	|�|	|d��q&||7}tt|��}|j|d|jd�|�d�tj�d�}
dD]`}dD]<}|�||�}tj�|��r�|�|�|jd|dd ��q�|
�r�|�|�|
|���q�|jd!d"�dS)#N�rZ
OVS_RUNDIR)zovnnb_db.pidzovnsb_db.pidzovn-northd.pid�/var/lib/openvswitch/ovnz/usr/local/var/run/openvswitchz/run/openvswitch/Zall_logsz
/var/log/ovn/z/var/log/ovn/*.logz.ovs-appctl -t {} cluster/status OVN_Northboundz.ovs-appctl -t {} cluster/status OVN_Southboundzovn-appctl -t ovn-northd statusz"ovn-appctl -t {} connection-statusT�)rrr)zovn-nbctl --no-leader-only showz"ovn-nbctl --no-leader-only get-sslz)ovn-nbctl --no-leader-only get-connection)zovn-sbctl --no-leader-only showz%ovn-sbctl --no-leader-only lflow-listz"ovn-sbctl --no-leader-only get-sslz)ovn-sbctl --no-leader-only get-connection)z/usr/share/openvswitchz/usr/share/ovnzovn-nb.ovsschemazovn-nbctl --no-leader-onlyzovn-sb.ovsschemaZLogical_Flowzovn-sbctl --no-leader-only)rrz/etc/sysconfig/ovn-northdZ	OVS_DBDIR)zovnnb_db.dbzovnsb_db.db)r9z/usr/local/etc/openvswitchz/etc/openvswitchz/var/lib/openvswitchz/var/lib/ovn/etcz/var/lib/ovnz
ls -lan %s)rz
ovn-northd)Zunits)Zcontainer_exists�
containersZget_container_by_namerr�environ�getZ
add_copy_specr+Z
get_optionrZadd_cmd_output�format�ovn_nbdb_sock_path�ovn_sbdb_sock_pathr4r7�list�setr�existsZadd_journal)
rZ
ovs_rundirZpidfilerZ
nbctl_cmdsZ
sbctl_cmdsrZ	nb_tablesr6Z	sb_tablesZ	ovs_dbdirZdbfileZ
dbfilepathrrr�setupXs���


�

����	�������

�
zOVNCentral.setupN)�__name__�
__module__�__qualname__Z
short_descZplugin_nameZprofilesr;rr4r7rDrrrrrs!rc@s eZdZdZdZdZdZdZdS)�RedHatOVNCentral)zopenvswitch-ovn-centralz
ovn.*-centralz!/var/run/openvswitch/ovnnb_db.ctlz!/var/run/openvswitch/ovnsb_db.ctlz/var/run/openvswitch�ovn-controller.*.ctlN�rErFrGZpackagesr?r@rrrrrrrH�s
rHc@s eZdZdZdZdZdZdZdS)�DebianOVNCentral)zovn-centralz/var/run/ovn/ovnnb_db.ctlz/var/run/ovn/ovnsb_db.ctlz/var/run/ovnrINrJrrrrrK�s
rK)Zsos.report.pluginsrrrrr'rrrrHrKrrrr�<module>s)