a >h @s:ddlmZmZmZmZmZmZGdddeeeeZdS))Plugin RedHatPlugin UbuntuPlugin SoSPredicate PluginOpt CosPluginc@sTeZdZdZdZdZdZdZedddd ed dd d gZ d d Z ddZ ddZ dS)CRIOzCRI-O containerscrio) container)zcri-o cri-tools)r allFz0collect for all containers, even terminated ones)defaultZdesclogsz)collect stdout/stderr logs for containersc Cs |gd|dg|jddd|t|dgdgd}|d d |Dd }|d rp|d }d}d}||}||}||}||D]:}|jd|dd|dr|jd|ddddq|D]} |jd| ddq|D]} |jd| ddqdS)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-*z crio configz/etc/cniT) recursiver )packages)infoimagespodsZpszps -azps -vaZstatsversioncSsg|]}d|qS)zcrictl ).0srr;/usr/lib/python3.9/site-packages/sos/report/plugins/crio.py >zCRIO.setup..zcrictl ps --quietr z -azcrictl images --quietzcrictl pods --quietzcrictl inspect containers)subdirrzcrictl logs -t zcontainers/logsdZ crictl_logs)rprioritytagszcrictl inspecti rzcrictl inspectp r) add_copy_specZadd_cmd_outputZadd_dir_listingZset_cmd_predicaterZ get_option_get_crio_list_get_crio_goroutine_stacks) selfZsubcmdsZps_cmdZimg_cmdZpod_cmdrrrr ZimageZpodrrrsetups<          z CRIO.setupcCsTg}||}|ddkrP|dD]}||q&|rPd|dvrP|d|S)NstatusroutputZ deprecated)Zexec_cmd splitlinesappendpop)r#cmdretresultZentrrrr![s    zCRIO._get_crio_listcCs|dr|ddS)Nz^/usr/bin/crio$z/tmp/crio-goroutine-stacks*.log)Zsignal_process_usr1r )r#rrrr"fs zCRIO._get_crio_goroutine_stacksN) __name__ __module__ __qualname__Z short_descZ plugin_nameZprofilesrZservicesrZ option_listr$r!r"rrrrrs= rN)Zsos.report.pluginsrrrrrrrrrrr s