Nginx 로그 처리
5 분 마다 방문 횟수 를 집계 하고 ganglia 모니터링 을 추가 하여 웹 을 통 해 보 여 주 는 방법 은 다음 과 같다.
1. 먼저 nginx 의 로 그 는 로그 절단 을 해 야 합 니 다. 스 크 립 트 는 다음 과 같 습 니 다.
cat nginx_log.sh
#!/bin/sh
#2014-06-06 by wu
savepath_log=/home/buddy/logs/
nglogs=/usr/local/nginx/logs/
mkdir -p $savepath_log/$(date +%Y)/$(date +%m)
mv $nglogs/access.log $savepath_log/$(date +%Y)/$(date +%m)/access.log.$(date +%Y%m%d)
mv $nglogs/error.log $savepath_log/$(date +%Y)/$(date +%m)/error.log.$(date +%Y%m%d)
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
crontab 가입, 매일 0 시 실행:
0 0 * * * (sh /root/admin/nginx_log.sh &>/dev/null)
2. 통계 로 그 를 작성 하고 gmetric 를 통 해 ganglia 모니터링 을 추가 합 니 다. 스 크 립 트 는 다음 과 같 습 니 다.
cat ganglia_access_count.sh
#!/bin/sh
#2014-06-18 by wu
#Statistical number of accessing nginx every 5 minutes
# 5
hour=`date -d '-5 minute' +%H`
# 5
minute=`date -d '-5 minute' +%M`
# ,/,:3 , , ,
Num=`awk -F'[ ]|[/]|:' -v hour=$hour -v minute=$minute '$7>=hour && $8>=minute{print}' /usr/local/nginx/logs/access.log | wc -l`
# gmetric ganglia
gmetric -n Nginx_access_counts -v $Num -t uint8 -u num
crontab 에 기록 하고 5 분 마다 실행 합 니 다.
*/5 * * * * (sh /root/admin/ganglia_gmetric/ganglia_access_count.sh &> /dev/null)
효과 전시
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 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에 따라 라이센스가 부여됩니다.