File: //lib/python3.9/site-packages/sos/report/plugins/__pycache__/openvswitch.cpython-39.pyc
a
^��ceA � @ sf d dl mZmZmZmZ d dlmZ d dlZG dd� de�ZG dd� dee�Z G dd � d eee�Z
dS )
� )�Plugin�RedHatPlugin�DebianPlugin�UbuntuPlugin)�environNc @ s e Zd ZdZdZdZdd� ZdS )�OpenVSwitchzOpenVSwitch networking�openvswitch)ZnetworkZvirtc ( s� � � d�}ddg}� �d�}|d dko4|d �d�}t� fd d
�dD ��}d}g d
�}t�d�rr|�t�d�� |s�� �� fdd
�|D �� n
� �|� � �g d�� � �� �dd�� �dd�� �dd�g� t�d�}|r� �� �|d�� � � ddd�� � �
g d�� � j
ddd� � j
ddd� � jdd � � jd!d � � jd"d � � jd#d � � jd$d � � jd%d � |�r� �|� � �
g d&�� � jd'd � d(D ]} � �
d)| g� �q�� �d*�}
|
d dk�r|
d �� D ]2}t
�d+|�}|�r�|�d,�}
� �
d-|
g� �q܈ �d.�}|d dk�rx|d �� D ]B}� �
d/||f d0||f d1||f d2||f d3||f g� �q4� �d4�}� �d5�}|d dk�r~|d �� D �]�}� �
d6||f d7||f d8||f d9||f d:||f d;| d<| d=| d>| d?| d@| dA| g� g dB�}dCdDdEdFdGdHdI�}dJ| }� �|�}g }|d �� D ]>}dK|v �rN||�dL�dM |�dN�� }|�dOdP��dQ�}�qN|dPgk�r$|d �r$|d �� }g }|D ]F}dR|v �r�|�dS�dM �dT�}tt|d dU�t|dM dU�dM �}�q�|D ]}||v �r|�|| � �q|D ]V}||v �r(� �
dV||f dW||f dX||f dY||f dZ||f d[||f g� �q(� �d\| �}|d dk�r�|d �� D ]<}� �
d]| d^| d_| d`| g� |�r�� �
da| � �q�|�r*� �db| �} | d dk�r*| d �� D ]}!� �
da|! � �q|�r�� �
dc||f dd||f de||f df||f dg||f g� � �dh||f �}"|"d dk�r�|"d �� dMd � }#|#D ]}$� �
di||$f g� �q�� �dj| �}%|%d dk�r�|%d �� dMd � }&|&D ]�}'� �
dk||'f dl||'f dm|||'f dn|||'f do|||'f dp|||'f dq|||'f dr|||'f ds|||'f dt|||'f g
� �q�q�d S )uN�all_logsz/var/log/openvswitch/z/usr/local/var/log/openvswitch/z8ovs-vsctl -t 5 get Open_vSwitch . other_config:dpdk-init�statusr �outputz"true"c s g | ]}� � |��qS � )Zis_installed)�.0�p��selfr �B/usr/lib/python3.9/site-packages/sos/report/plugins/openvswitch.py�
<listcomp>% � z%OpenVSwitch.setup.<locals>.<listcomp>)z6windgate-fp�nuage-openvswitchz
ovs-appctl)z?/etc/systemd/system/multi-user.target.wants/openvswitch.servicez./etc/sysctl.d/60-6wind-system-auto-reboot.confz/etc/openvswitch/system-id.confz/etc/openvswitch/*.dbz*/etc/ld.so.conf.d/linux-fp-sync-fptun.confz$/etc/NetworkManager/conf.d/fpn0.confz/etc/default/openvswitchz/etc/logrotate.d/openvswitchz/etc/linux-fp-sync.envz/etc/fp-daemons.envz/etc/fp-vdev.iniz/etc/fpm.envz/etc/6WINDGate/fp.configz/etc/6WINDGate/fpnsdk.configz/etc/dms.d/fp-dms.confz/etc/dms.d/fpmd-dms.confz/etc/dms.d/fpsd-dms.confz/etc/fast-path.envz/etc/fps-fp.envZ
OVS_LOGDIRc s g | ]}� � |d ��qS )z*.log)� path_join)r
Zldr r r r C s )z!/run/openvswitch/ovsdb-server.pidz!/run/openvswitch/ovs-vswitchd.pidz&/run/openvswitch/ovs-monitor-ipsec.pidz/usr/local/etc/openvswitchzconf.dbz/etc/openvswitchz/var/lib/openvswitchZ OVS_DBDIRZopenvswitch_daemon_logZopenvswitch_server_log)z%/var/log/openvswitch/ovs-vswitchd.logz%/var/log/openvswitch/ovsdb-server.log)!zls -laZ /run/openvswitchzls -laZ /dev/hugepages/zls -laZ /dev/vfiozls -laZ /var/lib/vhost_socketszdpdk_nic_bind --statuszdpdk-devbind.py --statuszdriverctl list-deviceszdriverctl list-overrideszovs-appctl bond/listzovs-appctl bond/showzovs-appctl lacp/showzovs-appctl lacp/show-statszovs-appctl coverage/showzovs-appctl ovs/route/showzovs-appctl tnl/arp/showzovs-appctl tnl/ports/show -v�ovs-appctl upcall/showz ovs-vsctl -t 5 list Open_vSwitchzovs-vsctl -t 5 list interfacezovs-vsctl -t 5 list bridgezovs-vsctl -t 5 list datapathz#ovs-appctl dpif-netdev/pmd-rxq-showz%ovs-appctl dpif-netdev/pmd-stats-showz$ovs-appctl dpif-netdev/pmd-perf-showzovs-appctl ofproto/list-tunnelsz,ovs-appctl -t ovs-monitor-ipsec tunnels/showz*ovs-appctl -t ovs-monitor-ipsec xfrm/statez-ovs-appctl -t ovs-monitor-ipsec xfrm/policiesz-ovs-dpctl dump-flows --name -m type=offloadedz'ovs-dpctl dump-flows --name -m type=ovsz/ovs-appctl dpif-netdev/subtable-lookup-prio-getz$ovs-appctl dpif-netdev/dpif-impl-getz*ovs-appctl dpif-netdev/miniflow-parser-getz.ovs-vsctl -t 5 get Open_vSwitch . other_configZopenvswitch_other_config)�tagszovs-vsctl -t 5 showZovs_vsctl_showr )Zunitszopenvswitch-nonetworkzovs-vswitchdzovsdb-serverzovs-configurationzopenvswitch-ipsec)zfp-cli fp-vswitch-statszfp-cli dpdk-core-port-mappingzfp-cpu-usagezfp-cli fp-vswitch-maskszfp-cli fp-vswitch-flowsz
fp-shmem-dpvizfp-cli stats non-zerozfp-cli statszfp-cli dpdk-cp-filter-budgetz ovs-appctl vm/port-detailed-showr zfp-cli nfct4z ovs-appctl vm/port-vip-list-showzfp-shmem-ports -szovs-dpctl show -szfpcmd fp-vswitch-flowszfp-cli fp-vswitch-ports percorezfp-cli dpdk-debug-poolzfp-cli dump-sizezfp-cli conf runtimezfp-cli conf compiledzfp-cli ifacezovs-appctl memory/showzvirtual-accelerator)�filterZmangle�rawZnatzfpcmd nf4-rules %szfp-cli fp-vswitch-portsz^([\d]+):[\s]+([^\s]+)� zfp-cli dpdk-cp-filter-budget %szovs-appctl dpctl/dump-dpsz%s dpctl/show -s %sz%s dpctl/dump-flows -m %sz%s dpctl/dump-conntrack -m %sz%s dpctl/ct-stats-show -m %sz%s dpctl/ipf-get-status %szovs-vsctl -t 5 list-brzovs-ofctl -t 5 --versionz'%s bridge/dump-flows --offload-stats %sz%s dpif/show-dp-features %sz%s fdb/show %sz%s fdb/stats-show %sz%s mdb/show %szovs-ofctl dump-flows %szovs-ofctl dump-ports-desc %szovs-ofctl dump-ports %szovs-ofctl queue-get-config %szovs-ofctl queue-stats %szovs-ofctl show %szovs-ofctl dump-groups %s)�
OpenFlow10�
OpenFlow11�
OpenFlow12�
OpenFlow13�
OpenFlow14�
OpenFlow15r r r r r r )� r � � � � zovs-vsctl -t 5 list bridge %sZ protocols�[r! �]�"� z, zOpenFlow versionszOpenFlow versions �:� zovs-ofctl -O %s show %szovs-ofctl -O %s dump-groups %sz#ovs-ofctl -O %s dump-group-stats %szovs-ofctl -O %s dump-flows %szovs-ofctl -O %s dump-tlv-map %sz"ovs-ofctl -O %s dump-ports-desc %szovs-vsctl -t 5 list-ports %szovs-appctl cfm/show %szovs-appctl qos/show %szovs-appctl bond/show %sz"ovs-vsctl get Interface %s optionsz*ovs-appctl netdev-dpdk/get-mempool-info %szovs-vsctl -t 5 list-ifaces %sz%s evpn/vip-list-show %sz$%s bridge/dump-conntracks-summary %sz%%s bridge/acl-table ingress/egress %sz%s bridge/acl-table %sz%s ofproto/show %sz%s vrf/list %sz%s vrf/route-table %szovs-appctl evpn/list %sz%s evpn/mac-table %sz%s evpn/arp-table %sz%s evpn/dump-flows %s %sz%s evpn/dhcp-pool-show %s %sz%s evpn/dhcp-relay-show %s %sz%s evpn/dhcp-static-show %s %sz%s evpn/dhcp-table-show %s %sz#%s evpn/proxy-arp-filter-list %s %sz%s evpn/show %s %sz%s port/dscp-table %s %s)Z
get_optionZcollect_cmd_output�
startswith�anyr �get�appendZ
add_copy_specr Z
add_file_tagsZadd_cmd_outputZadd_journal�
splitlines�re�match�group�find�replace�split�range�intZexec_cmd)(r r Zlog_dirsZdpdk_enabledZ
check_dpdkZcheck_6windZactlZfiles_6windZ ovs_dbdir�tableZ port_list�port�mZ port_nameZdp_list_resultZdpZbr_list_resultZofp_ver_result�brZ
flow_versionsZofp_versionsZovs_list_bridge_cmdZbr_infoZ br_protos�lineZbr_protos_lnZofp_version_rangeZ ver_range�vZprotocolZflowZport_list_resultZiface_list_resultZifaceZvrf_listZvrfsZvrfZ evpn_listZevpnsZevpnr r r �setup s�
����
�
�
�<��
�
�
��
&
�
��
�����
�
�
�
�
������zOpenVSwitch.setupN)�__name__�
__module__�__qualname__Z
short_descZplugin_nameZprofilesr? r r r r r s r c @ s e Zd ZdZdS )�RedHatOpenVSwitch)r zopenvswitch[2-9].*zopenvswitch-dpdkznuage-openvswitch6windgate-fpN�r@ rA rB Zpackagesr r r r rC w s rC c @ s e Zd ZdZdS )�DebianOpenVSwitch)zopenvswitch-switchr NrD r r r r rE ~ s rE )Zsos.report.pluginsr r r r �osr r1 r rC rE r r r r �<module> s g