利用logrotate对nginx日志进行切分

1、脚本如下:

/gdsfapps/flgw/logs/nginx/*.log{
missingok
dateext
notifempty
daily
rotate 7
sharedscripts
postrotate
if [ -f /usr/local/nginx/logs/nginx.pid ]; then
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
fi
endscript
}

2、脚本说明:

/gdsfapps/flgw/logs/nginx/这个是nginx日志所在目录。/usr/local/nginx/logs/nginx.pid。这个是pid文件所在的绝对路径位置,其他配置项这里就不做说明了。

然后用crontab -e命令。将0 0 * * * /usr/sbin/logrotate -vf /etc/logrotate.d/nginx写入到定时任务

切分之后就可以在日志目录看到如下所示的效果图:

另外也可以通过下面这个脚本来对Nginx日志进行切分,脚本如下:

#! /bin/bash
## 假设nginx的日志存放路径为/data/logs/
d=`date -d "-1 day" +%Y%m%d` #定义日期格式
logdir="/data/logs" #日志所在目录
nginx_pid="/usr/local/nginx/logs/nginx.pid" #pid所在目录
cd $logdir
for log in `ls *.log`
do
   mv $log $log-$d
done
find /data/logs/ -type f -mtime +7 -exec rm -f {} \; #删除7天之前产生的日志
/bin/kill -HUP `cat $nginx_pid`

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JAIR_FOREVER

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值