05 nginx 정시 퀘 스 트 로그 절단 완료
1915 단어 nginx
:nginx
(1) data
[root@localhost nginx]# mkdir /data
(2) shell
[root@localhost data]# vi runlog.sh
(3) shell
#로그 파일 을 잘라 야 할 경로
LOGPATH=/usr/local/nginx/logs/access.log
#월 별로 디 렉 터 리 만 들 기
BASEPATH=/data/$(date -d yesterday +%y%m)
mkdir -p $BASEPATH
#현재 로그 파일 을 현재 날짜 의 일 수 를 수정 합 니 다.
bak=$BASEPATH/$(date -d yesterday +%y%m%d%H%M).hgj123.com.log
mv $LOGPATH $bak
#로그 파일 다시 만 들 기
touch $LOGPATH
#nginx 신 호 량 재 실행 로그 다시 읽 기 [따옴표 조심!]
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
(3) 집행
sh runlog.sh
(4) 정시 퀘 스 트
crontab -e
#코드 를 작성 하 다
*/1 * * * * sh data/runlog.sh
/*주의 점
01 00 * * * /xxx/path/b.sh 매일 0 시 1 분 (02 - 04 시 사이 에 시스템 부하 가 적 음 을 권장 합 니 다)
*/
---------------------------------------------------------------------------------------------------------
새 셸 스 크 립 트 이름 은 runlog. sh 입 니 다.
\ # 셸 스 크 립 트 정의
#!/bin/bash
\ # 루트 디 렉 터 리 에 있 는 로그 파일 가 져 오기
LOGPATH=/usr/local/nginx/logs/z.com.access.log
\ # 현재 날 짜 를 가 져 오고 폴 더 를 바 꿉 니 다.
BASEPATH=/usr/local/nginx/data/$(date -d yesterday +%Y%m)
mkdir -p $BASEPATH
\ # 현재 달의 폴 더 에 로 그 를 저장 합 니 다.
bak=$BASEPATH/$(date -d yesterday +%d%H%M).z.com.access.log
mv $LOGPATH $bak
\ # 새 로그 파일 을 다시 만 듭 니 다.
touch $LOGPATH
\ # nginx 에 신 호 를 다시 보 내 고 로그 파일 을 다시 읽 습 니 다.
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
-------------------------
crontab 타이머 작성
*/1 * * * * sh /usr/local/nginx/data/runlog.sh
시간 대별 해 월 주
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.