nginx定时备份日志

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/black_little_/article/details/82900903

nginx定时备份日志

思路 用shell脚本加linux定时任务来备份日志

  1. 首先在进入nginx 目录
cd /usr/local/nginx/
  1. 创建一个logdata目录以后的脚本和备份的日志都放在这里
mkdir /logdata
  1. 进入logdata目录编辑创建创建一个runlog.shshell脚本
cd /logdata/

vim runlog.sh
  1. 内容如下
#!/bin/bash     #标准开头

LOGPATH=/usr/local/nginx/logs/logname.access.log      #声明变量 LOGPATH 赋值地址

BPASEPATH=/logdata/$(date -d yesterday +%Y%m)         #声明变量 BPASEPATH 赋值目录

mkdir -p $BPASEPATH                                   #便于管理每个月创建一个目录

bak= $BPASEPATH/$(date -d yesterday +%Y%m%d).logname.access.log     #声明变量 bak  赋值要修改后的日志


mv $LOGPATH $bak     #将日志复制过去

touch $LOGPATH       #在创建一个新的日志

kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
  1. 保存退出后创建一个定时任务
crontab -e 
  1. 内容如下 //每日凌晨00点执行一次 sh /logdata/runlog.sh 这个命令
 * 0 * * * sh /data/runlog.sh      

用法 分 时 日 月 周 命令

  1. 保存退出就好了
  2. 当然为了保险先测试一下
 */1 * * * * sh /data/runlog.sh       //先每分钟执行一次没问题了在改回去

猜你喜欢

转载自blog.csdn.net/black_little_/article/details/82900903