답변:
당신이 따르는 정보는 모두 로그에 있으므로 AWStats 와 같은 로그 분석기를 봐야 합니다. 다른 옵션은 Google Analytics를 사용하는 것입니다.
로그를 분석하기 위해 다음은 명령 줄에서 로그 파일이 몇 MB의 트래픽을보고하는지 알려주는 대략적인 예입니다.
cat /var/log/apache/access.log | awk '{SUM+=$10}END{print SUM/1024/1024}'
멋진 아파치 로깅 메커니즘과 덜 알려진 % I 및 % O 플래그 를 사용하는 것이 좋습니다 .
형식을 정의하십시오.
LogFormat "% t % a % v % U % q % I % O"IOFormat
기본 httpd.conf 에서 사용하십시오 .
CustomLog /var/log/apache2/all-bw.log IOFormat
값은 아마도 모든 헤더 정보를 설명하지는 않지만 VirtualHost 트래픽에 대한 정확한 아이디어를 갖는 것은 매우 정확합니다.
Perl 스크립트로 로그를 스캔하여 n 분마다 가상 호스트별로 집계하고 (예 : 5)이를 선인장으로 보냅니다.
이 플래그는 mod_logio에 의해 제공되며 아마도 Apache에 내장되어있을 것입니다.
Apache와 함께 awstats를 사용하기로 결정한 경우 즉시 전체 서버에 대한 총 대역폭이 표시됩니다.
가상 호스트별로 대역폭을 보려면 vlogger를 설치하는 것이 좋습니다 .
Vlogger는 실제로 설정 한 각 가상 호스트에 대한 Apache 액세스 로그 정보를 별도의 디렉토리 / 파일에 수집합니다.
예를 들어 Apache 로그 파일이 / var / log / apache2에있는 경우 일반적인 vlogger 설치는 가상 호스트 (예 : vhost1.com vhost2.com)에 대해 다음과 같이 생성합니다.
/var/log/apache2/vhost1.com/access.log
/var/log/apache2/vhost2.com/access.log
Vlogger는 이러한 로그를 교체 할 수있는 옵션을 제공하고 액세스 로그 파일의 이름 지정 템플릿을 변경하는 방법 (예 : 날짜 추가)을 제공하며 Apache보다 많은 로그 파일을 더 잘 처리한다고 주장합니다.
이에 대한 한 가지 단점은 더 이상 집계 된 서버보기가 없다는 것입니다 (로그를 별도로 집계하거나 추가 아파치 설정 또는 다른 방법을 사용해야합니까?).
클라이언트가 자바 스크립트를 통해보고 할 때 서버 대역폭 모니터링에 Google 분석 (또는 자바 스크립트 기반 추적)을 사용하지 않도록주의해야합니다. GA는 크롤러 / 스파이더 / 봇뿐만 아니라 자바 스크립트를 사용 중지 한 사용자에게보고하지 않습니다.
다음은 Xerxes가 제안한 로그 형식을 구문 분석하는 정규식입니다.
\ [([0-9] +) / (\ w +) / ([0-9] {4}) [^ \]] + \] \ s (\ d {1,3}. \ d {1, 3}. \ d {1,3}. \ d {1,3}) \ s ([^ /] +) [^ \ s] + \ s (\ d +) \ s (\ d +)
로그 예 :
[12 / Jan / 2011 : 14 : 25 : 04 +0000] 157.157.12.206 files.hjaltijakobsson.com / 581 669 [12 / Jan / 2011 : 14 : 25 : 04 +0000] 157.157.12.206 files.hjaltijakobsson.com / 624747 [12 / Jan / 2011 : 14 : 25 : 04 +0000] 157.157.12.206 files.hjaltijakobsson.com /icons/blank.gif 687186 [12 / Jan / 2011 : 14 : 25 : 04 +0000] 157.157. 12.206 files.hjaltijakobsson.com /icons/compressed.gif 693188 [12 / Jan / 2011 : 14 : 25 : 04 +0000] 157.157.12.206 files.hjaltijakobsson.com /favicon.ico 592 512
성냥:
하위 패턴 1 (일) : 12
하위 패턴 2 (요약) : 1 월
하위 패턴 3 (년) : 2011
하위 패턴 4 (방문자 호스트) : 157.157.12.206
하위 패턴 5 (가상 호스트) : files.hjaltijakobsson.com
하위 패턴 6 ( 들어오는 바이트) : 581
하위 패턴 7 (나가는 바이트) : 669
건배.
실제로 서버에 여러 개의 호스트가 있고 따라서 여러 site.com.access_log가 있다고 가정하면 허용되는 답변을 약간 조정합니다. 각 호스트를 정렬하고 나열합니다.
for f in *.access_log ; do echo `awk '{SUM+=$10}END{print SUM/1024/1024}' $f` $f ; done | sort -rn | more
gzipped logs 디렉토리 용
for f in *.access_log.*.gz ; do echo `zcat $f|awk '{SUM+=$10}END{print SUM/1024/1024}'` $f `stat -c%z $f`; done | sort -rn | more