HEX
Server: Apache
System: Linux 185.122.168.184.host.secureserver.net 5.14.0-570.60.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Nov 5 05:00:59 EST 2025 x86_64
User: barbeatleanalyti (1024)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //lib/python3.9/site-packages/sos/report/plugins/__pycache__/ebpf.cpython-39.pyc
a

\��hq�@s2ddlZddlmZmZmZGdd�dee�ZdS)�N)�Plugin�IndependentPlugin�	PluginOptc@sFeZdZdZdZdZdZeddedd�gZ	d	d
�Z
dd�Zd
d�ZdS)�Ebpfz	eBPF toolZebpf)�systemZkernel�network)Zbpftool�
namespacesNz0Number of namespaces to collect, 0 for unlimited)�defaultZval_typeZdescc
Csxg}zt�|�}Wn8tyJ}z |�d|���|WYd}~Sd}~00t|�D]\}}d|vrT|�|d�qT|S)z! Collect the list of program IDs z"Couldn't parse bpftool prog list: N�id��json�loads�	ExceptionZ	_log_info�	enumerate�append)�selfZ	prog_json�outZ	prog_data�err�_�item�r�;/usr/lib/python3.9/site-packages/sos/report/plugins/ebpf.py�get_bpftool_prog_idsszEbpf.get_bpftool_prog_idsc
Csxg}zt�|�}Wn8tyJ}z |�d|���|WYd}~Sd}~00t|�D]\}}d|vrT|�|d�qT|S)z Collect the list of mapIDs z"Could not parse bpftool map list: Nr
r)rZmap_jsonrZmap_datarrrrrr�get_bpftool_map_ids&szEbpf.get_bpftool_map_idsc
Cs�|�d�}|�|d�D]$}dD]}|�d|�d|���q q|�d�}|�|d�D]}|�d|���qV|�gd��d	}|�d
�}|j|d�D]}||d}	|�|	d
�q�dS)Nzbpftool -j prog list�output)ZxlatedZjitedzbpftool prog dump z id zbpftool -j map listzbpftool map dump id )zbpftool prog listzbpftool map listzbpftool cgroup tree�bpftool net listzbpftool struct_ops dumpzip netns exec r)Zns_max� r)Zcollect_cmd_outputrZadd_cmd_outputrZ
get_optionZget_network_namespaces)
rZprogsZprog_idZdumpcmd�mapsZmap_idZ
cmd_prefixZnsps�	namespaceZ
ns_cmd_prefixrrr�setup3s
�

z
Ebpf.setup)
�__name__�
__module__�__qualname__Z
short_descZplugin_nameZprofilesZcommandsr�intZoption_listrrrrrrrr
s��

r)rZsos.report.pluginsrrrrrrrr�<module>	s