nginx日志切割

使用系统自带的logrorate来切个nginx日志,位于/usr/sbin/logrotate

[root@PayServer haproxy]# cat /etc/logrotate.d/nginx 
/home/nginx/logs/*.log {  #指定切割日志文件路径
        daily
        missingok
        dateext
        rotate 365
        nocompress
        notifempty
        olddir /home/nginx/logs/days/  #指定切割后日志存放的位置
        create 755 root adm
        sharedscripts
        postrotate
                [ -f /home/nginx/logs/nginx.pid ] && kill -USR1 `cat /home/nginx/logs/nginx.pid`
        endscript
}

  • 需要注意的是你们的nginx.pid位置,不一定是在/home/nginx/logs/nginx.pid
 

 

配置说明
daily指定转储周期为每天
weekly指定转储周期为每周
monthly指定转储周期为每月
rotate转储次数,超过将会删除最老的那一个
missingok忽略错误,如“日志文件无法找到”的错误提示
dateext切换后的日志文件会附加上一个短横线和YYYYMMDD格式的日期
compress通过gzip 压缩转储旧的日志
delaycompress当前转储的日志文件到下一次转储时才压缩
notifempty如果日志文件为空,不执行切割
sharedscripts只为整个日志组运行一次的脚本
prerotate/endscript在转储以前需要执行的命令可以放入这个对,这两个关键字必须单独成行
postrotate/endscript在转储以后需要执行的命令可以放入这个对,这两个关键字必须单独成行

执行该命令测试

logrotate -vf /etc/logrotate.d/nginx

reading config file /etc/logrotate.d/nginx
reading config info for /home/nginx/logs/*.log 
olddir is now /home/nginx/logs/days/

Handling 1 logs

rotating pattern: /home/nginx/logs/*.log  forced from command line (365 rotations)
olddir is /home/nginx/logs/days/, empty log files are not rotated, old logs are removed
considering log /home/nginx/logs/access.log
  log does not need rotating
considering log /home/nginx/logs/error.log
  log needs rotating
rotating log /home/nginx/logs/error.log, log->rotateCount is 365
dateext suffix '-20180806'
glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
glob finding old rotated logs failed
renaming /home/nginx/logs/error.log to /home/nginx/logs/days//error.log-20180806
creating new /home/nginx/logs/error.log mode = 0755 uid = 0 gid = 4
running postrotate script

查看生产的日志文件

 

每日0点执行脚本

  • 在终端运行 crontab -e
  • 插入以下语句
0 0 * * * /usr/sbin/logrotate -vf /etc/logrotate.d/nginx

参考链接:http://www.cnblogs.com/snowater/p/8340238.html

转载于:https://www.cnblogs.com/hellojackyleon/p/9431050.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值