o id@s`ddlmZmZmZmZmZmZmZGdddeeZGdddeeZ GdddeeeZ dS) )Plugin RedHatPlugin UbuntuPlugin SoSPredicate CosPlugin PluginOpt DebianPluginc@sPeZdZdZdZdZeddddeddd ded dd dgZd d ZddZ dS)DockerzDocker containersdocker) containerallFz0collect for all containers, even terminated ones)defaultdesclogsz)collect stdout/stderr logs for containerssizez!collect image sizes for docker pscCs|ddg|gd|jdd|d|t|dgdgd}|D] }|d |q)|jd d d |jd dd |jddd |dr[|jddd|jddd|d}|ddkrdd|dddD}|D] }|d|qwdd|j d|dd D}|j dd!}|j dd!}|D]} |jd"| d#d$|d%r|jd&| d#d$q|D]} | \} } d'| vr| n| } |jd"| d(d)d*q|D] }|jd+|d,d$qdS)-Nz/etc/docker/daemon.jsonz/var/lib/docker/repositories-*) HTTP_PROXY HTTPS_PROXYNO_PROXY ALL_PROXYDOCKER_BUILD_PROXYDOCKER_RUN_PROXYr )unitszls -alhR /etc/docker)services)zevents --since 24h --until 1spszstats --no-streamversionz volume lsz docker %sz docker info docker_info)tagsz docker images docker_imagesz docker ps -adocker_list_containersrz docker ps -asd)priorityzdocker system dfzdocker network lsstatusrcSsg|]}|dqS))split).0nr&;/usr/lib/python3/dist-packages/sos/report/plugins/docker.py Msz Docker.setup..outputr"zdocker network inspect %scSsg|]}|dqS)rr&)r$cr&r&r'r(Qsr )runtimeget_all)r+zdocker inspect %s containers)subdirrzdocker logs -t %snoneimagesdocker_image_inspect)r.rzdocker volume inspect %svolumes) add_copy_spec add_env_var add_journaladd_cmd_outputset_cmd_predicater get_optioncollect_cmd_output splitlinesget_containersget_container_imagesget_container_volumes)selfsubcmdssubcmdnetsr%netr-r0r2r imgnameimg_idinspvolr&r&r'setupsn           z Docker.setupcCsd}|d|ddS)Nz=(?P(pass|key|secret|PASS|KEY|SECRET).*?)=(?P.*?)"z *inspect*z\g=********")do_cmd_output_sub)r> env_regexpr&r&r'postprocis zDocker.postprocN) __name__ __module__ __qualname__ short_desc plugin_nameprofilesr option_listrHrKr&r&r&r'r s  Jr c eZdZdZfddZZS) RedHatDocker)r z docker-latestz docker-io docker-engine docker-ce docker-eec tt||ddgdS)Nz!/etc/udev/rules.d/80-docker.rulesz/etc/containers/)superrTrHr3r> __class__r&r'rHs  zRedHatDocker.setuprLrMrNpackagesrH __classcell__r&r&r[r'rT{srTcrS) UbuntuDocker)z docker.iorUrVrWcrX)Nz/etc/default/dockerz//run/docker/libcontainerd/containerd/events.log)rYr`rHr3rZr[r&r'rHs  zUbuntuDocker.setupr]r&r&r[r'r`sr`N) sos.report.pluginsrrrrrrrr rTr`r&r&r&r's$ k