1、登錄系統(tǒng),執(zhí)行 echo "kylin debug 20211116" >> /var/log/messages命令
2、執(zhí)行命令 logrotate -v /etc/logrotate.conf 進行日志分割
3、執(zhí)行g(shù)rep "kylin debug 20211116" /var/log/messages* 命令,messages日志中無記錄,messages-20211116 日志中存在記錄
4、執(zhí)行 reboot 命令
5、登錄系統(tǒng),執(zhí)行 grep "kylin debug 20211116" /var/log/messages* 命令,發(fā)現(xiàn)messages和messages-20211116文件中都存在echo "kylin debug 20211116" 的日志記錄
該問題原因為rsyslog的狀態(tài)記錄文件StateFile被配置在/run目錄下,每次系統(tǒng)重啟后重新生成,rsyslog無法獲取之前日志記錄狀態(tài)從而引發(fā)日志重復(fù)記錄。解決該問題需要將StateFile配置在非臨時文件系統(tǒng)的路徑中,如rsyslog默認工作路徑/var/lib/rsyslog,解決日志重復(fù)記錄的問題。
升級rsyslog軟件包至rsyslog-8.1907.0-5.p02.ky10以上版本
# yum update rsyslog
重新加載服務(wù)配置文件
# systemctl daemon-reload
確認服務(wù)狀態(tài)正常
# systemctl status rsyslog