>> Edit article
이름
제목
패스워드
제목 : 웹 로그 분석 프로그램 webalizer 활용예 : 아파치 로그 분석 해 보기 최종 수정일 : 2000-10-13 글 버젼 : 0.3 글 쓴이 : 김형숙 원문 인용시 이 글 전체를 가져 가세요. -1. 이전에 작성한 것은 webalizer 1.30.X 버젼이었습니다. 지금은 webalizer 2.01.x 버젼으로 수정 한 것입니다. 이곳이 사용된곳을 제가 관리하는 사이트 입니다. http://rrsquad.pe.kr/usage/ (2.01.x 버젼으로 분석되는곳) http://rrsquad.pe.kr/usage_old/ (1.30.x 버젼으로 분석되엇던 곳) Webalizer는 웹로그를 분석해서 웹페이지 형식으로 보여 주는툴 입니다. 0. 목차 1. 소프트웨어 요구 사항 2. 프로그램 설치 하기 3. Webalizer설정 4. 실행해 보기 5. cron 으로 매일 돌려 보기 6. logrotate와 같이 쓰기 7. 후기 1. 소프트 웨어 요구사항 * zlib (http://www.cdrom.com/pub/infozip/zlib) 현재 버젼 1.13 * libpng (http://www.libpng.org/pub/png/pngcode.html) 현재 버젼 1.0.8 * Jpeg-6b (ftp://ftp.uu.net/graphics/jpeg/) 현재 버젼 * gd liberay (http://http://www.boutell.com/gd) 현재 버젼 1.8.3 ( 1.7 버젼 이상이필요하다) * webalizer (http://www.mrunix.net/webalizer) 2. 프로그램 설치 하기 2.1 zlib 자세한 정보는 INSTALL 파일 참조 [root@rrsquad zlib-1.1.3]# ./configure --prefix=/usr/local [root@rrsquad zlib-1.1.3]# make all [root@rrsquad zlib-1.1.3]# make install 2.2 libpng 자신의 시스템에 맞는 make 파일을 복사 해서 사용 [root@rrsquad libpng-1.0.8]# cp ./script/makefile.linux ./Makefile 환경메 맞게 Makefile 편집 [root@rrsquad libpng-1.0.8]# vi Makefile --------------------vi Makefile-------------------- ... # Where the zlib library and include files are located ZLIBLIB=/usr/local/lib ZLIBINC=/usr/local/include #ZLIBLIB=../zlib #ZLIBINC=../zlib ... ---------------------------------------------------- [root@rrsquad libpng-1.0.8]# make all [root@rrsquad libpng-1.0.8]# make install 2.3 jpeg-6b 설치 [root@rrsquad jpeg-6b]# vi Makefile [root@rrsquad jpeg-6b]# make all [root@rrsquad jpeg-6b]# make install 2.4 gd liberay [root@rrsquad gd-1.8.3]# vi Makefile [root@rrsquad gd-1.8.3]# make all [root@rrsquad gd-1.8.3]# make install 2.3 Webalizer 컴파일 하기 소스를 받아서 컴파일 하면 한글 지원을 할수 있었습니다. [root@rrsquad webalizer]# ./configure --prefix=/usr/local/webalizer --with-language=korean [root@rrsquad webalizer]# make all [root@rrsquad webalizer]# make install 설치 에러가 나면 직접 카피를 한다. 위의 configure 에서 prefix=/usr/local/webalizer 이기에 이 디렉토리가 미리 존재 해야 합니다. /usr/local/webalizer /usr/local/webalizer/bin /usr/local/webalizer/man /usr/local/webalizer/man/man1 이렇게 디렉토리를 만들어 주고서 make install 을 합니다. 그러면.. 어느 파일이 어디로 카피되는지 알수 있습니다. 버젼 1.30에서는 webalizer.conf.sample파일이 /etc/ 디렉토리에 카피 되었는데 2.01 에서는 카피 되지 않는것 같습니다. sample.conf 라는 파일이 설정 파일 이더군여. 이 파일을 /etc/webalizer.conf 라는 파일로 카피하여야 합니다. 3. Webalizer설정 /etc/webalizer.conf 로 복사해서 편집을 합니다. --------------------vi /etc/webalizer.conf ------------------------- #LogFile /var/lib/httpd/logs/access_log LogFile /usr/local/apache/logs/access_log #로그분석할 로그 파일 #LogType clf LogType clf #로그 타입 버젼 1.30 web이라는 로그 타입이었는데 2.01에서는 clf 로 되었네여. #OutputDir /var/lib/httpd/htdocs/usage OutputDir /usr/local/apache/htdocs/usage #로그분석후 분석 페이지 출력 디렉토리 #HistoryName webalizer.hist HistoryName webalizer.hist #로그히스토리 파일 #Incremental no Incremental yes #이 설정이 중요한데 이전의 모든 분석 결과를 나름대로 #저장해 놓았다가 분석이후의 로그만 분석 하도록 설정 #IncrementalName webalizer.curren IncrementalName webalizer.curren #로그분석의 최근 파일 -- 위의 Incremental yes 의 경우 해당 #HostName localhost HostName Myhome.home #웹 사이트 이름 PageType php3 #분석되어질 페이지 type 에 php3 추가 PageType php #분석되어질 페이지 type 에 php 추가 .... ----------------------------------------------------------------------- 4. 실행해 보기 [root@rrsquad bin]# .webalizer Webalizer V2.01-05 (Linux 2.2.5-22) Korean 대상 로그 파일: /usr/local/apache/logs/-access_log (clf) 출력 디렉토리: /usr/local/apache/htdocs/usage 호스트명: 'rrsquad.pe.kr' 기존 히스토리 정보 해석: webalizer.hist 기존 통계 정보 해석: webalizer.current 통계 정보 저장 [10/14/2000 10:33:44] 리포트 생성: October 2000 리포트 출력 히스토리 정보 저장 320 레코드 동작시간 0.55 초 5. cron 으로 매일 돌려 보기 필요할때마다 로그분석을 하여도 되지만.. cron을 이용해서 매일 분석 하게끔 하여 줄수 있습니다. 이 부분은 리눅스 초심자들이 궁금해 할까 적습니다. 5.1 레드햇 리눅스의 경우 /etc/cron.daily 디렉토리에 아래와 같은 파일을 생성 하면 webalizer 라는 파일을 생성 하시고 그 내용은 !/bin/sh /usr/local/webalizer/bin/webalizer 당근 이 파일은 실행 가능으로 되어야 겠죠. [root@rrsquad cron.daily]# chmod a+x webalizer 5.2 솔라리스의경우 /var/spool/cron/crontabs/root 30 15 * * * /usr/local/webalizer/bin/webalizer 추가 kill -HUP cronpid <==초보을 위해서 cronpid는 ps -ef | grep cron 하면 알수 있어요 6. logrotate와 같이 쓰기 logrotate는 레드햇리눅스에서 로그를 일정 시간마다 압축 보관 관리를 해주는 유틸입니다. 이 logroate는 솔라리스로 포팅하기위해서는 logrotate를 사용한 아파치로그 관리를 보기바랍니다. 그래서 아파치 로그를 이 logrotate가 먼저 cron에서 실행이되면 로그 분석이후의로그가 사라져 버린다. 그렇기에 logrotate를 실행하기 이전에 webalizer가 실행되게끔 해야 합니다. 레드햇 리눅스의 경우 cron은 파일의 이름으로 소팅해서 실행하는것으로 보이는데(?? 정확치 않음) 그래서 단순히 webalizer의 이름을 logrotate보다 알파벳이 낮은 이름으로 하면됩니다. k_webalizer 라고 이름을 바꾸면 좋은 예일것 같네요. 솔라리스의 경우는 crontab 에서 시간을 지정할수 있기에 한 30분 가량의 여유를 두고 실행하는 것이 좋을것 같다. 그렇지만 그 30분간의 로그는 역시 사라진다. 7. 후기 1.30 버젼과 2.01 버젼에서의 중요한 차이는 gif 그래픽 포맷을 지원하지 않고 png 포맷을 지원한다는 것이다. gif 포맷에 대한 라이센스 정책 변경으로 인해서 png 포맷을 사용하는것 같다. 그리고 예전의 1.30 버젼대의 webalizer.current 파일이 2.01 버젼대의 webalizer가 해석할수 없는 업그레이드의 문제점이 있다. 그래서 어쩔수 없이 이전에 작성된 로그분석 디렉토리를 usage_old 로 바꾸고 새로운 usage 디렉토리를 만들어서 로그 분석을 하고 있다. 예전의 분석 결과를 업그레이드 하는 방법에 대해서는 문서를 더 보아야 할것 같다.--저의 닉은 oz 라고 해여.
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved