웹로그 분석기 Webalizer
Webalizer
Webalizer는 웹로그 분석기이다.
그렇다면 웹로그는 무엇인가?
웹로그는 웹서버가 만든 기록이다.
무엇에 대해 기록해 놓은걸까?
웹서버에 접속한 사람들이 요청한 데이터와 그에 대한 응답같은 것들이다.
웹로그는 어떤 특정형태의 규칙을 가지며 저장된다.
그렇기에 Webalizer는 그 규칙을 이용해서 유용한 정보를 찾아내 분석할 수 있다.
Webalizer는 실시간으로 정보를 업데이트하는 것이아니라 사용자가 실행해야만 정보를 업데이트하게 된다.
불편하게 왜 실행해야만 작동을 하는 것일까?
그 이유는 아주 간단하다. log를 분석하는데 많은 시스템자원이 필요하기 때문이다.
간단히 말해 서버가 부담스러워한다.
로그는 작게는 수십메가에서 수기가(분할하지 않을 경우)에 이른다.
이런 경우 한번 분석하는데는 많은 시간과 자원이 소요된다.
그렇기 때문에 일반적으로 하루에 한번 사람들의 접속이 거의 없는 시간에 분석을 시킨다.
설치
요즘 리눅스 패키지에는 Webalizer가 같이 배포되는 경우가 많다.
따라서 이미 설치된 경우는 이단계를 넘어가도록 하자.
Redhat 계열의 리눅스 시스템이라면 다음과 같은 방법으로 설치유무를 확인할 수 있다.
# rpm -qi webalizer
설치되어 있지 않다면 설치할 소스를 다운받아오자.
http://webalizer.org에서 최신버전을 다운받을 수 있다.
ftp://ftp.mrunix.net/pub/webalizer/webalizer-2.01-10-src.tgz
(위는 2003년 7월 현재 가장 최신버전이다.)
파일을 다운받아 /usr/local/src 디렉토리에 저장을 한다.
설치는 root 권한으로 하여야 한다.
# cd /usr/local/src
# tar xvzf webalizer-2.01-10-src.tgz
# cd webalizer-2.01-10
이제 configure를 해보자. 기본적으로 언어설정만 해주면 된다.
지원되는 언어는 lang 디렉토리에 존재한다.
만약 이 디렉토리에 korean 파일이 없다면 위 사이트에서 language 파일을 얻을 수 있다.
설치는 아주 간단하게 되어버렸다.
설치에 많은줄을 할애하였지만 실제로 설치부분은 위의 세줄밖에 되지 않는다.
환경 설정
Webalizer가 에러없이 잘 설치되었다면 설정파일을 수정해주어야만 사용이 가능하다.
설정파일은 /etc/webalizer.conf 이다. 한번 찾아보시라~~~~. 분명히 없을것이다! :-)
그러나 우리에겐 /etc/webalizer.conf.sample 이 있다.
이 파일은 설치시에 생긴 파일이다. 이걸 보고 설정을 하라고 친절하게 sample을 만들어주었다.
그럼 파일을 한번 열어보자.
# cp /etc/webalizer.conf.sample /etc/webalizer.conf
# vi /etc/webalizer.conf
열었더니 참으로 심오한 말들이 많이 있는거 같다.
도대체 어느 부분의 주석을 풀어줘야 하는지 어딜 고쳐야 하는지 감도 안잡힌다.
걱정마시라~.
그래서 이런 문서가 있는 것 아니겠는가? :-)
설정파일중 수정할 부분
1. 분석할 로그 파일의 위치
웹서버의 로그파일 위치를 적어주면 된다. 기본적으로는 아래의 위치에 로그가 쌓인다.
LogFile /var/log/httpd/access_log
위 경로에 로그가 없으면 어떻게 해야할까?
만약에 아파치 웹서버를 이용하고 있다면 웹서버의 설정파일을 통해 위치를 알아낼 수 있다.
아파치 설치 디렉토리의 conf/http.conf 파일에 CustomLog 부분에 적혀있다.
2. 분석 결과를 저장할 디렉토리
OutputDir /var/www/html/usage
/var/www/html 은 웹페이지가 존재하는 디렉토리이다.
따라서 http://ezphp.net/usage 와 같은 방법으로 접근 가능하다.
3. 로그 히스토리 파일 지정
로그 분석한 날짜와 시간을 기록해 둔다.
HistoryName webalizer.hist
4. 분석이 안된 최근 로그만 분석한다.
Incremental yes
5. 이미 분석한 로그의 정보를 저장
IncrementalName webalizer.current
6. 보고서에 나타날 제목
ReportTitle 사용량 통계:
7. 사이트 명
HostName ezphp.net
이제 /etc/webalizer.conf 파일의 설정이 모두 끝났다.
REFERER 정보를 보고 싶다면 아파치 설정 파일을 수정해야만 한다.
Referer 정보란?
현재 페이지를 접속하기 이전에 있었던 페이지를 말한다.
즉 야후 검색을 통해 ezphp.net 에 접속을 하였다면 Referer는 야후의 페이지 정보를 가진다.
# vi /usr/local/apache/conf/httpd.conf
위의 디렉토리는 설치방법과 버전에 따라 다르다.
위에 없을 경우 다음과 같은 방법으로 찾아보길 바란다.
# find / | grep httpd.conf
파일을 찾아서 편집기로 열었다면 CustomLog를 검색해서 찾아가 보자.
vi 편집기를 사용한다면 /CustomLog 를 통해서 찾을 수 있다.
CustomLog /var/log/httpd/access_log common
일반적으로 위와 같이 되어 있을 것이다. 아래와 같이 수정한다.
CustomLog /var/log/httpd/access_log combined
아파치 설정 파일을 수정하였으니 아파치 서버를 재시작해야한다.
# apachectl restart
또는
#/etc/init.d/httpd restart
이제 모든 설정이 끝나고 로그 분석을 시키는 일만 남았다.
버추얼 호스팅을 하는 경우
버추얼 호스팅 도메인에 해당하는 webalizer.conf 파일을 생성해 주면 된다.
각도메인별 LogFile,OutputDir,HostName 이 세항목만 수정하여 새 파일로 저장한다.
예를들면 webalizer-www.ezphp.net.conf , webalizer-docs.ezphp.net.conf
Webalizer 실행
# /usr/local/bin/webalizer -c /etc/webalizer.conf
또는
# /usr/bin/webalizer -c /etc/webalizer.conf
위와 같은 방법으로 Webalizer를 실행 할 수 있다.
webalizer 파일의 위치는 위의 설치방법을 통해 했을 경우이고 일반적으로 /usr/bin 디렉토리에 존재한다.
바람이 강하게 부는 것은
널 강하게 하기 위해서야. 바람이 불지 않았다면
넌 뿌리가 약해 어쩌면 금방 쓰러지고 말았을지도 몰라.
그런데 바람이 강하게 자꾸 불어오니까
넌 쓰러지지 않으려고 깊게깊게 뿌리를 내린거야.
그게 다 바람이 널 위해서 한 일이야.
사실 우린 바람에게 감사해야 돼.
- 정호승의 《스무살을 위한 사랑의 동화》 중에서-
* 인생의 길에 바람은 무시로 불어옵니다.
고통과 번민의 바람 앞에 흔들리지 않는 사람은 없습니다.
바람에 흔들리는 동안은 힘들었지만, 견디고 나서
돌이켜 보니 그 힘든 고통의 시간이 나를
살리고 키워낸 은인이었습니다.
오다 노부나가는 매일 아침 4시경에 일어나
가장 빠른 말을 타고 달리는 것이 일상의 시작이었다.
그는 항상 똑같은 곳까지 갔다가 돌아왔다.
왕복 40리(약 16km)를 말을 타고 달리면서,
가는 길에는 전략을 짜고 돌아오는 길에는 결단을 내렸다.
어지러운 전란 속에서도 늘 날카로운 예지와 결단을
보이면서 결국 패권을 쥘 수 있었던 것은
바로 이 아침의 사색 덕분이었다.
이 말 위에서의 시간이야말로 노부나가를
가장 노부나가답게 만든 시간이었다.
- 사이쇼 히로시의《아침형 인간》중에서 -
* 말을 타기는 어려운 세상입니다.
대신 아침 달리기를 하거나 등산을 하면 됩니다.
그것마저 어렵다면 아침 산책을 시작해 보세요.
아침을 내것으로 만들어야 그날 하루도
온전히 내것이 됩니다.
한번쯤 돌아보십시오.
연초에, 새옷을 입듯이 가슴에 지녔던 꿈들을
얼마만큼 이루었는지, 그 꿈을 또 얼마만큼 간직하고
있는지, 애초에 계획했던 꿈을 시작도 못했다고 해서
난감해 하고 속상해 하는 사람이 있을지도 모르겠습니다.
그런 사람들은 "지금부터라도..." 하며 마음을
다지십시오. 아직 늦지 않았습니다.
- 이정하의 《돌아가고 싶은 날들의 풍경》 중에서 -
* 설도 지나고, 어느덧 새해 첫 달의
마지막 월요일입니다. 혹시라도 흐트러졌을지 모르는
새해 결심을 다시한번 추스려 볼 때입니다.
다시 시작할 때가 가장 빠를 때입니다.
아직도 늦지 않았습니다.
안경줄을 배꼽까지 내려뜨린 할아버지가
옆자리의 진주 목걸이를 한 할머니에게 나이를 묻는다.
예순둘이라고 하자 할아버지는 감탄한다.
\"좋은 나이요. 나는 예순일곱인데 내가
당신 나이라면 못할 게 없을 거요.\"
- 은희경의 <서른살의 강> \'연미와 유미\' 중에서 -
* 22살때 난 무엇을 시작하기에는
이미 늦었다고 생각했습니다. 지금 나는 32살이고,
10년전 그때로 돌아간다면 정말 못할 게 없을 것 같습니다.
이제 나는 무엇을 하고 싶은데 나이 때문에 망설여진다면
10년, 아니 딱 5년 후 내 나이와 그때 가질 생각들을
먼저 헤아려 보기로 했습니다. 뭐든지
시작할 때가 가장 빠릅니다.
앤드류는 하루에 12시간씩 일하지만
저녁식사는 가족이나 친구들과 함께 한다.
자신의 일을 좋아한다는 자체가 엄청난 에너지의 원천이
되지만, 휴식을 취하는 시간과 친한 사람들과의 만남도
소중히 여긴다. 주말에는 한가하게 시간을
보내고 정기적으로 여행을 즐긴다.
- 줄리 모건스턴의 《능력있는 사람의 시간관리》중에서 -
* 속도의 시대입니다. 빨라야 살아남습니다.
경쟁의 시대입니다. 남보다 더 열심히 일하지 않으면
낙오자가 됩니다. 그러나 속도와 경쟁만이 능사는 아닙니다.
휴식을 모르면 위기가 옵니다. 틈틈히 휴식의 시간을
만들어 낼 줄 알아야 어느날 갑자기 멈춰서는
위기의 순간을 막을 수 있습니다.
10년이 넘도록 매일 똑같은
옷만 입는다고 친구에게 핀잔을 들었다.
"난 새옷보다 입던 옷이 더 좋아."
"그래도 가끔씩은 새로운 옷도 입어 줘야지, 계속
같은 옷만 입으면 지겹잖아?"
"재윤아, 너랑 나랑 몇 년 친구냐?"
"응...그러니까 초등학교...벌써 24년이 됐네."
"맞다. 사람이나 헌옷이나 지겨울 때가 종종 있는 거야.
하지만 \'지겹다\'는 건 \'변함이 없다\'는 거 아닐까?"
- 심승현의 《파페포포 투게더》중에서 -
* 변함이 없다는 것, 늘 새로운 모습으로
변화하는 것보다 더 어렵습니다. 믿음과 의지, 그리고
한결같은 마음이어야 가능합니다. 변함이 없어야 함께
성장할 수 있고, 변함이 없어야 서로 바로잡아 줄 수 있고,
변함이 없어야 평생 친구가 될 수 있습니다. 저에게도
언제나 편안함으로 남아있는 오랜 헌옷같은
친구가 있어 행복합니다.