CentOS下Nginx配置Web访问日志并结合Shell脚本定时切(2)

#!/bin/bash
LOGPATH=/data/wwwlogs/mytest_log/access_nginx.log //nginx的日志路径
BAKPATH=/data/wwwlogs/bak  //要备份的路径
bak=$BAKPATH/$(date -d yesterday +%Y%m%d%H%M).mytest.access.log  //定义了的bak变量
echo $bak  //执行输出一下

[root@localhost crontab]# chmod 777 nginx_log.sh  //赋权限

[root@localhost crontab]# ./nginx_log.sh  //执行脚本
/data/wwwlogs/bak/201801101205.mytest.access.log //输出的格式

完整脚本如下

#!/bin/bash
#设置日志文件存放目录
LOGPATH=/data/wwwlogs/mytest_log/access_nginx.log
BAKPATH=/data/wwwlogs/bak
 #备分文件名称
bak=$BAKPATH/$(date -d yesterday +%Y%m%d%H%M).mytest.access.log
#echo $bak
 #重命名日志文件
mv $LOGPATH $bak
touch $LOGPATH
 #向nginx主进程发信号重新打开日志,确保nginx.pid路径正确
 #[root@localhost wwwlogs]# find / -name nginx.pid
 #/var/run/nginx.pid
kill -USR1 `cat  /var/run/nginx.pid`

然后创建定时器

关于定时器详细的讲解在 https://www.linuxidc.com/Linux/2019-03/157851.htm

01 00 * * * /data/crontab/nginx_log.sh  # 每天0时1分(建议在02-04点之间,系统负载小) 

查看一下/data/wwwlogs/bak就会有日志文件了

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/739801f96e94beb3873fb3dd7f31dca4.html