idjddlZddlmZmZmZmZGddeZGddeeZGddeeZy) N)Plugin PluginOptIndependentPlugin CosPluginc$eZdZdZdZdZdZdZy)LogsBasez System logslogssystemhardwarestoragec ddg}g}|jd}|jdrut|jdd5}|j D]=}|j ds|t j |jdz }? ddd|D]I}|j|j|s$|j|}||jd|z }K|D];}|j dr|dd}|j|s+|j|=|jgd |jd |jd td Dcgc]#}|j|j|d %c}} | ru|jdrd|j|ddgd|jd|d|jd|d|jdr|jddgyy|jds|jgdy|jgdy#1swYxYwcc}w)N/etc/syslog.conf/etc/rsyslog.confsincerz$IncludeConfigz^\S+\s+(-?\/.*$)\s+-) rrz/etc/rsyslog.dz/var/log/boot.logz/var/log/installerz/var/log/messages*z/var/log/secure*z /var/log/udevz/var/log/dist-upgradezjournalctl --disk-usagezls -alRh /var/log/)z/varz/runz log/journal/zsystemd-journald journal_full journal_alld)rtagsprioritythisjournal_since_boot)bootrrlastjournal_last_bootall_logsz/var/log/journal/*z/run/log/journal/*) z/var/log/syslogz/var/log/syslog.1z/var/log/syslog.2*z/var/log/kern.logz/var/log/kern.log.1z/var/log/kern.log.2*z/var/log/auth.logz/var/log/auth.log.1z/var/log/auth.log.2*)z/var/log/syslog*z/var/log/kern.log*z/var/log/auth.log*) get_option path_existsopen path_join readlines startswithglobsplitdo_regex_find_all path_isfile add_copy_specadd_cmd_outputany is_service add_journal) selfconfsr rconflineconfigipjournals 9/usr/lib/python3/dist-packages/sos/report/plugins/logs.pysetupzLogsBase.setupsf#%89(   / 0dnn%893? <4 NN,r?__doc__rArBrCr<r7rErEis K0Hr<rEc6eZdZedddgZfdZxZS)CosLogslog_daysz"the number of days logs to collect)namedefaultdescctt| |jdr|j dy|jdd}|j d|zy)Nrzjournalctl -o exportrIrJz-%ddays)r)superrHr8r r+r.)r/days __class__s r7r8z CosLogs.setupsQ gt"$ ??: &    6 7??:q1D   9t#3  4r<)r=r>r?r option_listr8 __classcell__)rQs@r7rHrHys#z1; =K 55r<rH) r&sos.report.pluginsrrrrrrErHrCr<r7rUs< NNY vY x 1h 1 1 5h 5r<