
    ~ g                     ,    S SK JrJr   " S S\\5      rg)    )PluginIndependentPluginc                   0    \ rS rSrSrSrSrSrS rS r	Sr
g	)
LibvirtClient   z%client for libvirt virtualization APIvirsh)systemvirt)zlibvirt-clientzlibvirt-clientsc           	         U R                  SS/5        Sn/ SQnU H  nU R                  U SU 3SS9  M     U R                  U S3S	SS
9  U R                  U S3SS9nUS   S:X  ae  US   R                  5        HN  nU R                  SU 35      nUS   S:X  d  M"  US   R                  5       S   nU R                  SU 3SU 3S9  MP     S H  nU R	                  U SU S3US;   a  SOS-  SS9n	U	S   S:X  d  M/  U	S   R                  5       n
 U
S   R                  5       R                  S5      n[        S U
SS  5       H.  nUR                  5       U   nU R                  U SU SU 3SS9  M0     M     U R                  U S3SS9nUS   S:X  a^  US   R                  5       SS  n[        S U5       H7  nUR                  5       S   nS H  nU R                  U SU SU 3SS9  M     M9     U R                  U S3SS9nUS   S:X  a0  US   R                  5        H  nU R                  U S U 3SS9  M     g g ! [         a     GM  f = f)!Nz/root/.cache/virt-manager/*.logz/root/.virt-manager/*.logzvirsh -r)domcapabilitiescapabilitiesnodeinfozfreecell --allznode-memory-tuneversionzpool-capabilities
nodecpumapzmaxvcpus kvmsysinfoznodedev-list --tree T)
foregroundz list --allvirsh_list_all)tagsr   z1 list --all --name --state-running --state-pausedstatusr   outputz	pgrep -f ztaskset -ac -p taskset_)suggest_filename)netnwfilterpoolz-list %s)r   r   z--all Namec                     U $ N xs    :/usr/lib/python3/dist-packages/sos/report/plugins/virsh.py<lambda>%LibvirtClient.setup.<locals>.<lambda>M   s    !       z	-dumpxml c                     U $ r    r!   r"   s    r$   r%   r&   W   s    1r'      )dumpxmldominfo
domblklistz nodedev-listz nodedev-dumpxml )	add_copy_specadd_cmd_outputexec_cmd
splitlinescollect_cmd_outputsplitindex	Exceptionfilter)selfcmdsubcmdssubcmdvmsvmpidpkk_listk_linesposjnamedomains_outputdomains_linesdomainoptnodedev_outputs                      r$   setupLibvirtClient.setup   s   -'
 	
 
 F3%q 1dC  	se;/!1d 	 	D mmse $- -9=  ?x=A(m..0mmit$45x=A% H00215A'')!-+3B4 ( : 1 -A,,uAaS-A01_0D FMJL.N8< - >F h1$ *557!!***,226:C  WQR[9A779S>D''3%q9TF(C37 ( 9 : -& #k':tL(#q(*84??A!"EM m<*?C''3%qQvh(?37 ( 9 @ = #m'<N(#q(&x0;;=##e,TF3# $  > )' ! s   "I
IIc                 F    SnSS/nU H  nU R                  X1S5        M     g )Nz"(\s*passwd\s*=\s*\")([^\"]*)(\".*)z"/root/\.cache/virt-manager/.*\.logz/root/\.virt-manager/.*\.logz
\1******\3)do_path_regex_sub)r7   	match_expvirsh_path_expspath_exps       r$   postprocLibvirtClient.postproce   s2    9	1+
 (H ""8F (r'   r!   N)__name__
__module____qualname____firstlineno__
short_descplugin_nameprofilespackagesrJ   rQ   __static_attributes__r!   r'   r$   r   r      s#    8JK!H5HN`Gr'   r   N)sos.report.pluginsr   r   r   r!   r'   r$   <module>r]      s    9gGF- gGr'   