본문 바로가기
Server&OS/Window

[본문스크랩] 윈도우용 AWSTATS 로그 분석툴 설치 및 구축하기

by 백룡화검 2010. 4. 24.

출처 : http://www.mcpworld.com/expert/beauysy/con08.asp

 

AWSTATS 설치 및 구축하기

AWSTATS는 무료이면서 매우 강력한 로그 관리 프로그램이다.
이번 강좌는 이를 설치하고 활용하는 방법을 알려주겠다.

필자의 환경 :

System :
   Compaq SP 650,
        Pentium3 Xeon 866 Dual
        RDRAM 128 X 4
        U160 SCSI HDD 18 , 9, 2X2

OS :
   Windows2000
   Awstats 6.4(최신버전)
   Perl 5.8.4 build810

준비하기

먼저 독자의 해당 시스템에 perl 이 설치되어 있어야 한다.
그리고 IIS 로그 기록에 대한 설정을 변경해야 한다.
Perl 설치는 생략하고, IIS 로그 설정만 다루겠다.

IIS 서버 로그 형식 설정

IIS에 로그를 다음과 같은 정보가 기록되도록 설정을 한다.
개별 site에 해도 되지만 전체 site에 적용한다면, IIS 관리콘솔 root에서 마우스 오른쪽 버튼을 누르고, 등록정보를 누른다.

##########0*

위와 같은 그림이 나오면 ‘마스터 속성’을 선택하고 ‘편집’ 버튼을 누른다.

##########1*

그러면 site에 등록정보에 대한 기본 틀인 화면이 나온다. 아래 ‘활성 로그 형식’을 ‘W3C 확장 로그 파일 형식’으로 선택하고, 등록정보를 누른다.

##########2*

위와 같은 ‘확장 로깅 등록정보’가 나오면 ‘확장 속성’ 탭을 선택하고 아래의 정보를 바탕으로 설정을 한다.

date
time
c-ip
cs-username
cs-method
cs-uri-stem
cs-uri-query
sc-status
sc-bytes
cs-version
cs(User-Agent)
cs(Referer)

설정을 다 했으면, ‘확인’을 누르고 모든 창을 닫는다.
설정된 로그 형식이 적용 되게 하기 위해, IIS서비스를 중지하고, 로그파일이 있는 곳에 가서 작업 시점 날짜의 로그의 이름을 바꾸고 IIS를 시작 시킨다. 그러면 작업 시점의 날짜를 기준으로 파일이름이 생성되면서 새로운 형식의 로그 파일이 생성된다. 로그파일을 열고 아래와 같은지 확인한다.

#Software: Microsoft Internet Information Services 5.0
#Version: 1.0
#Date: 2005-09-22 07:45:45
#Fields: date time c-ip cs-username cs-method cs-uri-stem cs-uri-query sc-status sc-bytes cs-version cs(User-Agent) cs(Referer)
2005-09-22 07:45:45 127.0.0.1 - GET /iisstart.asp - 302 0 HTTP/1.1 Mozilla/4.0+(compatible;+MSIE+5.01;+Windows+NT+5.0) -

Awstats 설치하기

Awstats는 awstats.sourceforge.com 에서 다운 받을 수 있다. Zip 형식의 배포 버전을 다운 받아서 압축을 풀면 아래와 같은 폴더 구조를 가진다.

##########3*

여기서 사용할 것은 wwwroot 폴더만 사용하게 된다.
awstats\wwwroot\cgi-bin 밑에 awstats.model.conf 라는 예제 환경 파일이 있다. 이 파일을 자신의 환경에 맞게 설정해야 한다.
먼저 awstat_configure.pl 파일을 awstats.[site_name].conf 등과 같이 설정할 site를 알 수 있게 이름을 변경한다.
반드시 awstat + . +[name] +.conf 로 변경해야 한다. [name]은 파일 갱신시 구분되는 것이므로 잘 기억하기 바란다.
노트패드로 열면 포맷 형식이 틀려 한 줄로 나오니, 텍스트 편집기를 이용하여 열기 바란다. 그러면 dos format으로 열겠느냐? 라고 물어볼 때 Yes를 누른다.

##########4*

설정 파일의 내용이 길게… 나온다. 그중에서 아래 3개의 항목만 바꾼다. 두 번째 항목은 똑같이 쓰기 바란다. (포멧 형식을 지정하였으므로, IIS6.0에서도 사용 가능하다.)

LogFile="C:\WINNT\system32\LogFiles\W3SVC1\ex%YY-24%MM-24%DD-24.log"
LogFormat="%time2 %host %logname %method %url %query %code %bytesd %other %ua %referer"
SiteDomain="zigzeg.co.kr"

Awstat log 분석하기

설치 및 설정이 끝났으므로 이제 한 번 실행해서 로그파일을 html파일로 바꿔보자.
명령 형식은 다음과 같다.

→ perl awstats.pl ?config=[name] ?update

위와 같은 형식으로 실행을 하면 아래와 같은 성공적인 진행 과정이 보이고 변환이 완료된다.

주의 : 오늘 설정해서 오늘 변환은 안 된다. 변환은 어제의 로그 자료를 가지고 하기 때문이다.
이 로그 변환기는 실시간이 아니다. 이미 지난, 기록된 데이터를 변환하기에 오늘 설정하면, 내일, 밤 12시 가 넘어서 실행해 보기 바란다. TEST를 위해 생성된 로그파일을 어제 날짜로 복사해서 하면 TEST를 할 수 있다.

##########5*

그리고 실행이 되면 환경 파일이 있는 곳에 변화된 파일에 대한 새로운 파일이 하나 생성된다.

##########6*

그림에서 보듯이 awstats.092005.exchange.txt가 생겼다. 열어 보면, 알아 볼 수는 있지만, 잘 모를 것이다.
이제 웹에서 보자.
웹에서 보는 방법은 고정 html 파일로 보는 방법과, perl을 이용해서 asp 사용자와 대화하면서 볼 수 있는 두 가지 방법이 있다.
여기서는 후자를 설명하겠다. (전자는 사용하다 보면 매우 불편하다.)
일단 IIS에서 site를 만들던, virtual directory를 만들던 IIS가 이를 처리하게 해야 한다.
경로는 “awstats\wwwroot” 가 기본 경로이다.
여기서는 site를 만들겠다.
log.zigzeg.co.kr 이라는 경로로 사용하겠다.
IIS 설정은 생략하겠다.
URL을 다음과 같이 입력한다. (독자의 환경에 따라 다를 수 있다.)

→ http://log.zigzeg.co.kr/cgi-bin/awstats.pl?config=exchange
&nbps; http://FQDN/cgi-bin/awstats.pl?config=[sitename] 을 입력하면 된다.

그럼 변화된 로그가 보기 좋게 나올 것이다.

##########7*

필자가 위에서 정적이 있고 유동 페이지 생성이 가능하다고 했고, 현재보여지는 것은 유동적이라고 했다.
윗쪽 가운데를 보면 년 월을 선택하는데 정적은 이게 없다. 달이 지나면 기존 것이 지원진다. 그러므로 자료의 저장이 안되고 그에 따르는 아래 그림처럼 다달이 나오는 통계가 없다.

##########8*

이 그림은 필자가 운영중인 site의 9개월간 통계이다. 이전 강좌에서 3월경에 이 강좌를 준비 했으나 개인적인 사정으로 6개월 이상 늦어져서 이와 같이 양이 많은 통계가 만들어(?) 졌다.
플러그인을 추가하여 화면크기 통계라든가 IP별 지역을 낼 수 있으나, 화면 크기는 스크립트를 초기 화면에 넣어야 하고, 간혹가다 사용자 PC에서 PDF 보기 프로그램이 작동하는 오류와 초기화면 로딩에 지연이 생기고, 지역이라봤자 국내에 국한된 곳이 대부분이기 때문에 추가하지 않았다.
텍스트 편집기에서


TOP

TEL. 02.1234.5678 / 경기 성남시 분당구 판교역로