Nginx日志按日期切割记录

nginx admin 396℃ 0评论

说明:假设你的nginx日志文件路径是 :/var/log/nginx/access.log


一、创建配置文件 nginx

$ vim /etc/logrotate.d/nginx
 
/var/log/nginx/access.log {      //注意:具体请以自己的nginx日志为准,也可以采用匹配的方式 【/var/log/nginx/*.log】
    daily                   //每天切割 有:daily,weekly,monthly可选
    dateext                 //%Y%m%d作为后缀
    missingok               //日志不存在,分析下一个
    rotate 2                //保留两个备份
    compress                //转储之后压缩.tar.gz
    notifempty              //空文件不转储
    create 0660 root root    //新日志文件模式
    sharedscripts           //整个日志组运行一次的脚本
    postrotate
            [ -f /var/run/nginx.pid ] && kill -USR1 `cat /var/run/nginx.pid`
                //重启nginx,重新加载日志文件,防止不写
    endscript
}


二、手动调用测试:


$ logrotate -vf /etc/logrotate.d/nginx

三、配置说明:

1.  compress                        通过gzip压缩转储以后的日志
2.  nocompress                      不压缩
3.  copytruncate                    用于还在打开中的日志文件,把当前日志备份并截断
4.  nocopytruncate                  备份日志文件但是不截断
5.  create mode owner group         转储文件,使用指定的文件模式创建新的日志文件
6.  nocreate                        不建立新的日志文件
7.  delaycompress 和 compress        一起使用时,转储的日志文件到下一次转储时才压缩
8.  nodelaycompress                 覆盖 delaycompress 选项,转储同时压缩。
9.  errors address                   专储时的错误信息发送到指定的Email 地址
10. ifempty                         即使是空文件也转储,这个是 logrotate 的缺省选项。
11. notifempty                      如果是空文件的话,不转储
12. mail address                    把转储的日志文件发送到指定的E-mail 地址
13. nomail                          转储时不发送日志文件
14. olddir directory                转储后的日志文件放入指定的目录,必须和当前日志文件在同一个文件系统
15. noolddir                        转储后的日志文件和当前日志文件放在同一个目录下
16. prerotate/endscript             在转储以前需要执行的命令可以放入这个对,这两个关键字必须单独成行
17. postrotate/endscript            在转储以后需要执行的命令可以放入这个对,这两个关键字必须单独成行
18. daily                           指定转储周期为每天
19. weekly                          指定转储周期为每周
20. monthly                         指定转储周期为每月
21. rotate count                    指定日志文件删除之前转储的次数,0 指没有备份,5 指保留5 个备份
22. tabootext [+] list 让logrotate   不转储指定扩展名的文件,缺省的扩展名是:.rpm-orig, .rpmsave, v, 和 ~ 
23. size size                       当日志文件到达指定的大小时才转储,bytes(缺省)及KB(sizek)或MB(sizem)



加载中...