apollo89 요즘 읽고 있는 책
프로그래머의 길,멘토에게 묻다
데이브 후버,애디웨일 오시나이 공저/강중빈 역
프로그래머 그 다음 이야기
임백준 등저
대규모 서비스를 지탱하는 기술
이토 나오야,다나카 신지 공저
존 맥아더의 성경,이렇게 믿어라
존 맥아더 저
아이디어맨 Idea man
안진환 역/폴 앨런 저
예스24 | 애드온2
많은 관리자들이 로그분석및 사이트 통계를 위한
많은 분석툴이 있읍니다.
물론 그러한 툴을 이용한 방법으로 사이트및 시스템을
쳬계적이고 효율적으로 분석있습니다.
그런데 APACHE LOG 파일을 보면
access_log 파일과 error_log파일이 있읍니다.
이중에서 acess_log파일을 가지고
간단한 카운터를 하는 방법을 적고자 합니다.
물론 한곳에서 접속한것은 1회로 적용됩니다.

cat > count.sh

#!/bin/sh
cut -d- -f1-2 /usr/local/apache/logs/access_log
| sort -u | wc -l

^D
chmod 700 count.sh
mv count.sh /usr/sbin

이렇게 하면 됩니다.
설명드리자면
cut -d- -f1-2 /usr/local/apache/logs/access_log
로그파일(access_log)에서 -을 기준으로 문자열을 잘라냅니다
그 다음 sort -u을 이용하여 반복적인 ip를 1로 만듭니다.
wc -l 은 라인을 기준으로 카운트 합니다.

정리하면 cut 으로 필요없는 문자열을 제거하고
sort 을 이용하여 반복적은 ip을 1로 통일하고
wc -l 을 이용하여 카운트를 합니다.

물론 상황에 따라서

여러가지 응용할수 있을거라 생각합니다.
사이트를 관리하면서 규칙적으로 하는것이 로그파일 쳐다보기 이니까요
좀 더 나은 팁이 있으신 분들은 수정해 주시길 바랍니다.
이상 허접이었습니다.

출처 : http://blog.naver.com/zsup1343?Redirect=Log&logNo=60003541930 (새 창으로 열기)
Trackback URL : http://apollo89.com/blog/trackback/142
openclose