아파치 쿼리 로그 흘긋? 보는 GlanceQry v 0.4 키워드 로그 파싱 용-ILE/LNAG-C/C++2008. 5. 15. 19:35
1. 아파치 쿼리 로그 랭킹 보는 GlanceQry v 0.4
아파치 로그를 시스템 명령(uniq,sort,cat)를 이용하여 시간별(초단위가능),쿼리등수,전체 쿼리를 분석해내는 프로그램
2. 환경
- 아파치 로그 시간 포멧이 CLF(common log format) 타입 이어야 한다.
- 로그 파일에 쿼리 스트링을 URL 인코딩 할것
- 로그가 \xb5\xf0\xc0\xda\xc0\xce 방식 경우 \x => %로변경 할것
- 시스템 명령어를 사용하기 때문에 uniq,sort,cat 명령어들이 되는지 본다.
- 리눅스에서 테스트한 프로그램
3. 설치 방법
- GlanceQry.tar를 푼다
가. 디렉토리 구성
* src 소스 디렉토리
- GlanceQry.h // 헤더 파일
- GlanceQry.c // 메인 소스
- Makefile // make 파일
* GlanceQry // 바이너리
* config.GlanceQry // 환경 파일(설정방법은 파일안에 설명해 두었음)
* README // 본 문서
나. 참고 사항
* access_glance.log //테스트용 아파치 로그
* GetQryStat.sh //테스트용
4. 구동 방법
그냥 ./GlanceQry Usage: ./GlanceQry <config_file> <apache_log_file> <begin_date_time> <end_date_time> <result_file>
인자 설명
* <config_file> // 설정파일
* <apache_log_file> // 아파치 로그 파일
* <begin_date_time> // 아파치 로그에서 시작 시간 범위를 찾을 날짜와 시간 (초까지) ex) 20060625000000
* <end_date_time> // 아파치 로그에서 끝 시간 범위를 찾을 날짜와 시간 (초까지) ex) 20060625235959
* <result_file> // 결과 파일
실행 중 에러 발생 경우는 대부분이 아파치 로그위치와 결과 파일위치등 경로 문제 경우가 많다.
5. 샘플 데이터
- GetQryStat.sh
access_glance.log 샘플 데이터를 분석하여 result_glance.kwd 파일을 만든다.
result_glance.kwd 포멧은
등수 쿼리수 쿼리
==============================================================
1 66 개롱역에서 잠실역까지 중국집
2 11 스카이라이프
3 11 감사원
4 10 이대 미용실
~~~~
~~~
~~~~~
1244 1 가곡 꽃
1245 1 ㄹㅇㄴㄹㅇㄴ
TotCnt: 1452
===============================================================
마지막 줄 전체 쿼리수
참고) 아직 큰데이터를 테스트 해보지 못해서 -.-;; 메모리 부족 현상이 발생 할 수 있을것 같음
'용-ILE > LNAG-C/C++' 카테고리의 다른 글
[gcc] 문자열 추출 파싱 (0) | 2008.05.15 |
---|---|
[gcc] 바이너리 서치 인접 최소값 , 최대값 이진 탐색 (0) | 2008.05.15 |
[gcc] 선택 정렬 (0) | 2008.05.15 |
gcc 컴파일 에러 조치 invalid storage class (0) | 2008.05.15 |
[gcc] 시스템 명령 결과 데이터 사용 popen() (0) | 2008.05.15 |