File: //proc/1233/cwd/lib/python3/dist-packages/sos/report/plugins/__pycache__/networking.cpython-310.pyc
o
r�e�/ � @ sZ d dl mZmZmZmZmZmZ G dd� de�ZG dd� dee�ZG dd� deee�Z dS ) � )�Plugin�RedHatPlugin�UbuntuPlugin�DebianPlugin�SoSPredicate� PluginOptc s| e Zd ZdZdZdZdZeddde d�ed d
edd�ed
de dd�edddd�edddd�gZ
dZdZ� fdd�Z
� ZS )�
Networkingz,Network and networking devices configuration�
networking)�network�hardware�systemzwww.example.com�
tracerouteFzcollect a traceroute to %s)�default�desc�namespace_pattern� zFSpecific namespace names or patterns to collect, whitespace delimited.)r �val_typer �
namespacesNz0Number of namespaces to collect, 0 for unlimited�ethtool_namespacesTz;Toggle if ethtool commands should be run for each namespace�
eepromdumpz*Toggle collection of 'ethtool -e' for NICsz-W�acdgiklmPSTc s� t t| ��� | jD ]
}| �d| d| i� q
| �ddd�� | �g d�� | �g d�� | jdd d d
� | jdddd
gd
� | �d� | jd| j dd� | �ddd| j dddddddddddd d!d"d#d$g� | �
d%�r�| �g d&�� | �d'�}|d( d)kr�|d* �� }|D ] }| �d+| � q�d,}t
| d-gd.�}| j||d/d0� d1}t
| g d2�d3d4id5�}| j||d/d0� d6d7� | jD �} | jd8d7� | D �d9d:� | jg d;�d9d:� | �d<�r�d=}
| �d>� | j|
d9d:� | �g d?�� | �d@�r�| jdA| j dBdC� | �dD� dE}| �| �dF�| �dG��}|�r�dHdIdJ�}
dKdIdJ�}| j| t
| |
dL�dM��r2t
| dIgd.�nd }| j| t
| |dL�dM��rGt
| dIgd.�nd }|D ]�}| jdN | }dO| }|| dP }| j|dQ |d |d! |d |d |d |dR |d| j |d |d| j |d gdS|dT� | j|dU g||dSdV� | j|dW g||dSdV� |d1 }| j|||dX� | �dY��r�| j|dZ |d[ |d\ |d] g|d9 dS|d^� �qK| �d_d`dadbdcdddedfd dgdhddidjdk�� d S )lNzethtool -%s .*z ethool_%s�bond�hosts)z/proc/net/bonding/bond.*z
/etc/hosts)z
/proc/net/z/etc/nsswitch.confz/etc/yp.confz/etc/inetd.confz/etc/xinetd.confz
/etc/xinetd.dz
/etc/host*�/etc/resolv.confz
/etc/network*z
/etc/dnsmasq*z!/sys/class/net/*/device/numa_nodez/sys/class/net/*/flagsz/sys/class/net/*/statistics/z
/etc/iproute2)z/proc/net/rpc/use-gss-proxyz/proc/net/rpc/*/channelz/proc/net/rpc/*/flushz
/proc/net/cdpz/sys/net/cdpz/proc/net/eiconz
ip -o addr�ip_addr)�root_symlink�tagszip route show table all�ip_route�iproute_show_table_all�
plotnetcfgznetstat %s -neopa�netstat)r z
nstat -zas�
netstat -sznetstat %s -agnznetworkctl status -azip -6 route show table allzip -d route show cachezip -d -6 route show cachezip -4 rule listzip -6 rule listzip vrf show�
ip -s -d link�
ip -d addresszifenslave -azip mroute showz
ip maddr show�ip -s -s neigh showzip neigh show nud noarpzbiosdevname -dztc -s qdisc showz/sys/class/devlink)zdevlink dev param showzdevlink dev infozdevlink port showzdevlink dev�statusr �outputzdevlink dev eswitch show %szip -s macsec show�macsec)�kmodsT)�pred�changeszss -peaonmi)�tcp_diag�udp_diag� inet_diag� unix_diag�netlink_diag�af_packet_diag�xsk_diagr( �all)r( �requiredc S s g | ]}d | �qS )zethtool -%s� )�.0�optr4 r4 �?/usr/lib/python3/dist-packages/sos/report/plugins/networking.py�
<listcomp>� s z$Networking.setup.<locals>.<listcomp>c S s g | ]}|d �qS )z %(dev)sr4 )r5 �_cmdr4 r4 r7 r8 � s ��ethernet)�devices)�ethtool %(dev)sz ethtool --phy-statistics %(dev)sz!ethtool --show-priv-flags %(dev)szethtool --show-eee %(dev)sztc -s filter show dev %(dev)sz%tc -s filter show dev %(dev)s ingressr zethtool -e %(dev)szwWARNING: collecting an eeprom dump is known to cause certain NIC drivers (e.g. bnx2x/tg3) to interrupt device operation)zbridge -s -s -d link showzbridge -s -s -d -t fdb showzbridge -s -s -d -t mdb showzbridge -d vlan showr
z/bin/traceroute -n %s�d ��priorityzip netnszip netns exec r r ziptables -V� nf_tables)�cmdr&