【问题说明】 系统日志需保存180天
【配置日志文件】 1、使用logrotate配置策略 vim /etc/logrotate.conf #查看策略
配置文件解释: 第三行weekly 指定所有的日志文件每周转储一次。 第五行 rotate 4 指定转储文件的保留 4份。 第九行create 指定 logrotate 自动建立新的日志文件,新的日志文件具有和
原来的文件一样的权限。 第11行 #compress 指定不压缩转储文件,如果需要压缩,去掉注释就可以了。 如果想保存180天,需要根据需要进行配置
size 1000M #总大小不超过1000M /var/log/*.log { #对所有日志有效 maxsize 100M #单个日志最大大小不超过100M hourly #日志文件每周转储一次 missingok #日志轮训期间错误会被忽略 rotate 8 #转储文件的保留 4份 compress #压缩 notifempty #如果是空文件的话,不转储 nocreate #不建立新的日志文件 }
如果想保存180天,需要更改配置如下:
例如: # see "man logrotate" for details # rotate log files weekly weekly
# keep 4 weeks worth of backlogs rotate 4
# create new (empty) log files after rotating old ones create
# use date as a suffix of the rotated file #dateext
# uncomment this if you want your log files compressed #compress
# packages drop log rotation information into this directory include /etc/logrotate.d
# system-specific logs may be also be configured here. size 1000M /var/log/messages { maxsize 100M monthly missingok rotate 6 compress notifempty create } 这里的文件意思就是messages日志按照每个月一次转储,保存6个副本,每次转储进行会创建一个新的压缩文件,超过6个月的文件新的文件会进行轮转覆盖掉最旧的文件。 这种方式就可以实现日志保存180天 配置原则: 1、必须根据实际情况对日志进行设置,比如日志大小,针对不同的日志文件会有不同的大小限制,建议单个文件不要超过1G,如果保留应用日志建议保存在足够大的空间比如数据盘,应用日志一半会比较大,以上日志主要针对系统层面。 2、用户根据自己的需要进行配置需要日志,不是所有日志都需要保存180天,有针对性的配置即可(这个需要跟客户确认清楚) 2、使用include 选项覆盖缺省配置 cd /etc/logrotate.d/ ls -lrt #查看日志配置文件
这里以rsyslog 来举例 vim rsyslog
这个配置和之前的一样,需要针对需要保存的日志进行参数配置,配置方式同上,格式如图即可
注意事项:1、尽管花括号的开头可以和其他文本放在同一行上,但是结尾的花括号必须单独成行。
验证方案:
修改日志文件时间,可验证日志是否能保留180天
|