
    -_g                     @    d dl mZmZmZmZmZmZ  G d deeee      Zy)    )PluginRedHatPluginUbuntuPluginSoSPredicate	PluginOpt	CosPluginc                   ^    e Zd ZdZdZdZdZdZ eddd	       ed
dd	      gZ	d Z
d Zd Zy)CRIOzCRI-O containerscrio)	container)zcri-o	cri-tools)r   allFz0collect for all containers, even terminated ones)defaultdesclogsz)collect stdout/stderr logs for containersc                    | j                  g d       | j                  g d       | j                  dg       | j                  dd       | j	                  t        | dg             g d	}| j                  |D cg c]  }d
| 	 c}       d}| j                  d      r| d}d}d}| j                  |      }| j                  |      }| j                  |      }| j                          |D ]B  }	| j                  d|	 d       | j                  d      s+| j                  d|	 ddd       D |D ]  }
| j                  d|
 d        |D ]  }| j                  d| d        y c c}w )N)z/etc/containersz/etc/crictl.yamlz/etc/crio/crio.confz/etc/crio/seccomp.jsonz/etc/crio/crio.conf.d/z!/etc/systemd/system/cri-o.servicez/etc/sysconfig/crio-*)
HTTP_PROXYHTTPS_PROXYNO_PROXY	ALL_PROXYzcrio configz/etc/cniT)	recursiver   )packages)infoimagespodspszps -azps -vstatsversionzcrictl zcrictl ps --quietr   z -azcrictl images --quietzcrictl pods --quietzcrictl inspect 
containers)subdirr   zcrictl logs -t zcontainers/logsd   crictl_logs)r    prioritytagszcrictl inspecti r   zcrictl inspectp r   )	add_copy_specadd_env_varadd_cmd_outputadd_dir_listingset_cmd_predicater   
get_option_get_crio_list_get_crio_goroutine_stacks)selfsubcmdssps_cmdimg_cmdpod_cmdr   r   r   r   imagepods               9/usr/lib/python3/dist-packages/sos/report/plugins/crio.pysetupz
CRIO.setup   s    
 	 	 
 	 	
 	 	Z48 	|DK=IJ	
 	G<qwqc]<=$??5!xs^F)'((0
$$W-""7+'')# 	8I/) ='3   5v&##oi[$A+<s)6 $ 8		8  	ME"25' :8L	M  	IC"23% 8H	I5 =s   <E0c                     g }| j                  |      }|d   dk(  rC|d   j                         D ]  }|j                  |        |rd|d   v r|j                  d       |S )Nstatusr   output
deprecated)exec_cmd
splitlinesappendpop)r-   cmdretresultents        r5   r+   zCRIO._get_crio_listb   sj    s#(q h'224  

3  |s1v-

    c                     | j                  d      }|d   dk7  ry |d   j                         }| j                  d|z         }|d   dk(  r| j                  d       y y )Nz
pidof crior8   r   r9   zkill -USR1 z/tmp/crio-goroutine-stacks*.log)r;   stripr%   )r-   rA   pids      r5   r,   zCRIO._get_crio_goroutine_stacksm   sg    |,(q X$$&}s23(q @A !rC   N)__name__
__module____qualname__
short_descplugin_nameprofilesr   servicesr   option_listr6   r+   r,    rC   r5   r
   r
      sW    #JKH%HH 	%I	K&%B	DKBIH	BrC   r
   N)sos.report.pluginsr   r   r   r   r   r   r
   rO   rC   r5   <module>rQ      s'   D DeB6<y eBrC   