linux日志切割工具 logrotate

Logrotate是基于CRON来运行的,其脚本是/etc/cron.daily/logrotate,日志轮转是系统自动完成的

centos logrotate 配置文件位置

```conf
#主配置文件
/etc/logrotate.conf
#配置相关子系统,用于隔离配置,解决个别日志文件过大(Haproxy、Nginx...)
/etc/logrotate.d/
```

/etc/logrotate.d/下创建文件haproxy添加如下内容:

```conf
/var/log/haproxy/haproxy.log {  
#文件绝对路径,nginx日志亦同上
daily
#指定转储周期为每天
rotate 15
#保留15天的日志
missingok
#如果日志文件丢失,不进行显示错误
notifempty
#当日志文件为空时,不进行转储
dateext
#加上日志格式
compress
#通过gzip压缩转储后的日志
rotate 1                    
#只保留一个日志
sharedscripts
#转储完成后运行脚本,postrotate-endscript间为脚本内容,脚本效果为重启rsyslogd服务。
postrotate
    systemctl restart  rsyslog.service
endscript
}
```