nginx日志切割与备份

脚本内容如下:
  
  
  
  
  1. #!/bin/bash 
  2. ##crontab every 3 hour execute a time to backup log file in /backup/log_backup/## 
  3. path=/usr/local/nginx/logs/ 
  4. datename=`date +%y-%m-%d-%H` 
  5. datename1=`date +%y-%m-%d` 
  6. datename2=`date +%y-%m-%d --date='3 days ago'
  7. cd /usr/local/nginx/logs/ 
  8. for logname in `ls *.log` ; do 
  9. mv "$logname" "$datename"."$logname" 
  10. gzip -f -9 "$datename"."$logname" 
  11. mkdir /backup/log_backup/"$datename1" 
  12. mv "$datename"."$logname".gz /backup/log_backup/"$datename1"
  13. done 
  14. kill -USR1 `cat /usr/local/nginx/logs/nginx.pid` 
  15. rm -rf /backup/log_backup/$datename2
 
定时任务:
 
  
  
  
  
  1. 01  */3 * * * root /opt/backup_log.sh 
这个脚本是收集nginx所产生的access日志,与定时任务配合,每隔三个小时进行日志截取,存放到另个磁盘下,并只保留最近三天的日志记录

你可能感兴趣的:(nginx,access日志切割)