logrotate: linux上的日志工作, 可进行阶段/轮询/压缩/删除的动作
apt -y install logrotate #在Ubuntu18.04中是默认预装软件, 安装nginx后, /etc/logrotate.d/目录下会自动创建nginx的日志轮转配置文件
与大多数linux中软件相同, 主配置文件为/etc/logrotate.conf
个性化配置文件放在/etc/logrotate.d/
目录下, 使用include导入
weekly # 运行间隔, 这里是每周运行
su root syslog
rotate 4 # 日志轮转的次数
create # 自动创建新的日志文件
#compress # 压缩轮转的日志文件
include /etc/logrotate.d # 配置文件导入
名称 | 作用 |
---|---|
weekly/daily/monthly | 间隔时间 |
compress/nocrompress | 是否gzip压缩 |
copytruncate/nocopytruncate | 是否先拷贝在清空 是=有可能丢失(由于拷贝和清空的时间差) |
create mode owner group | 日志文件的属性, 例: create 0640 www-data adm |
nocreate | 不建立新的日志文件 |
delaycompress/nodelaycompress | 转存的日志文件到下一次再压缩 |
missingok | 如果日志丢失, 不保存继续滚动下一个日志 |
errors address | 转存时错误信息发送到的email |
ifempty/noifempty | 日志文件为空也轮转, 默认选是 |
mail address/ nomail | 转存的日志文件发送至指定邮箱 |
olddir directory/noolddir | 转存后日志的目录/不另放目录 |
sharedscripts | 运行postrotate脚本, 作用是所有日志都轮转后统一执行一次脚本, 没配则每个日志轮转后执行 |
prerotate | 转存前执行的命令 |
postrotate | 转存后执行的指令 |
dateext | 以日期命名文件 |
dateformate %Y %m %d %s | 日期格式 |
rotate count | 轮转的次数 |
size | 日志文件大小阈值 例: size=5 size=100k size 100M |