nginx 로그 관리 스 크 립 트

이 스 크 립 트 는 nginx 로그 파일 을 날짜 별로 자동 으로 자 르 고 한 달 전의 로 그 를 삭제 합 니 다.
먼저 스 크 립 트 올 리 기:
#!/bin/bash
cd /var/log/nginx/
mv  sendsadmin.access.log sendsadmin.access.$(date +%Y%m%d).log
mv  api.sends.cc.access.log api.sends.cc.access.$(date +%Y%m%d).log
mv  blog.sends.cc.access.log blog.sends.cc.access.$(date +%Y%m%d).log
mv  error.log error.$(date +%Y%m%d).log
sudo kill -USR1 `cat  /usr/local/web/nginx636/logs/nginx.pid`

find /var/log/nginx/ -name "sendsadmin.access.*" -type f -ctime +30 -exec rm {} \; > /dev/null 2>&1
find /var/log/nginx/ -name "api.sends.cc.access.*" -type f -ctime +30 -exec rm {} \; > /dev/null 2>&1
find /var/log/nginx/ -name "blog.sends.cc.access.*" -type f -ctime +30 -exec rm {} \; > /dev/null 2>&1
find /var/log/nginx/ -name "error.*" -type f -ctime +30 -exec rm {} \; > /dev/null 2>&1

주석:
mv  sendsadmin.access.log sendsadmin.access.$(date +%Y%m%d).log
#     sendsadmin.access.log   sendsadmin.access.(    ).log
sudo kill -USR1 `cat  /usr/local/web/nginx636/logs/nginx.pid`
#nginx      
find /var/log/nginx/ -name "sendsadmin.access.*" -type f -ctime +30 -exec rm {} \; > /dev/null 2>&1
#find --   
#/var/log/nginx/ --       
#-name "sendsadmin.access.*" -type f --   "sendsadmin.access."     
#-ctime +30 --       30    
#-exec rm {} \; --      rm  
#> /dev/null 2>&1 --      

로 컬 에 스 크 립 트 를 저장 하고 crontab 에 스 크 립 트 를 추가 하여 매일 23: 59 에 실행 합 니 다.
sudo vi /etc/crontab
    :
59 23   * * *   root    /bin/bash /usr/local/web/nginx636/conf/cutlogs.sh

좋은 웹페이지 즐겨찾기