커피닉스, 시스템 엔지니어의 쉼터 커피향이 나는 *NIX
커피닉스
시스템/네트웍/보안을 다루는 곳
* HanIRC의 #coffeenix 방
[ 장비 및 회선 후원 ]
HOME > 시스템 관리 / 서버운영 > 로그(log) / syslog 도움말
검색 : 사이트 WHOIS 웹서버 종류


  원격 로그분석툴 awstats 작성일 : 2007/03/10 11:05
 
  • 글쓴이 : kaien
  • 조회수 : 10873
          [ 이전화면 / 수정 ]   비밀번호 :     인쇄용 화면
      작성 : 2005. 12. 1. kaien
    프로젝트 : 모 사이트

    1. 개요
    A. 현재 웹 서비스 서버에 대한 웹로그 분석이 필요.
    2. 방법
    A. 서비스 서버에서 로그분석은 피하고 x.x.x.x 백업서버에서 각 서버의 로그 파일을 가져와서 분석하게 함.
    B. 분석툴로는 awstats를 사용함. ( http://awstats.sourceforge.net )
    3. 세팅
    A. 환경설정
        # tar xvfz awstats-6.4.tgz
        # mv awstats-6.4 /usr/local/awstats
        # chmod 755 /usr/local/awstats/
        # chown -R root.root /usr/local/awstats/
        # mkdir /etc/awstats
        # mkdir /var/lib/awstats
    B. 인스톨
        # cd /usr/local/awstats/tools
        # ./awstats_configure.pl
    i. 스크립트가 실행되는데 3가지 정도를 물어본다. 모두 'y'라고 하고 도메인을 적으면 awstats.도메인.conf  형식으로 생성된다.
    ii. 설정 파일 변경 ( ex ) http://cacti.xxx.com )
    1. vi /etc/awstats/awastats.xxx.com.conf
    # If there is several log files from load balancing servers :
    # Example: "/pathtotools/logresolvemerge.pl *.log |"
    #
    #LogFile="/var/log/httpd/mylog.log"
    이 부분에 삽입한다.
    LogFilie="/usr/local/apache2/log/cacti.xxx-access-log"
    # Example: "myintranetserver"
    # Example: "www.domain.com"
    # Example: "ftp.domain.com"
    # Example: "domain.com"
    #
    SiteDomain="cacti.xxx.com"
    # Note: Use space between each value.
    # Note: You can use regular expression values writing value with REGEX[value].
    # Note: You can also use @/mypath/myfile if list of aliases are in a file.
    # Example: "www.myserver.com localhost 127.0.0.1 REGEX[mydomain\.(net|org)$]"
    #
    HostAliases="cacti.xxx.com www.cacti.xxx.com 127.0.0.1 localhost"
    C. 아파치 httpd.conf 수정
    i. 기본적으로 www 로 들어갈 것이다. 그래서 현재 아파치에서 cgi-bin 경로를 수정해줘야된다.
        Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/"
        Alias /awstatscss "/usr/local/awstats/wwwroot/css/"
        Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/"
        ScriptAlias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/"
       #
        # This is to permit URL access to scripts/files in AWStats directory.
        #
        <Directory "/usr/local/awstats/wwwroot">
            Options None
            AllowOverride None
            Order allow,deny
            Allow from all
        </Directory>
    ii. Awstats를 아파치 로그포맷중 하나인 combined 를 지원한다. Common 이였던 로그 형태를 아래와 같이 combined 로 수정한다.
    CustomLog logs/monitoring.xxx.com-access_log combined env=!not_log
    D. 다른 웹서버에서 x.x.x.x로 로그 파일을 scp를 이용해서 주기적으로 보낸다.
    i. 172 웹서버 ( ex. Log.sh)
    #!/bin/bash
    scp /usr/local/apache2/logs/xxx-access_log xxx@x.x.x.x:/usr/local/apache2/logs/remote
    scp /usr/local/apache2/logs/dnplaza-access_log xxx@x.x.x.x:/usr/local/apache2/logs/remote
    scp /usr/local/apache2/logs/djplaza-access_log xxx@x.x.x.x:/usr/local/apache2/logs/remote
    scp /usr/local/apache2/logs/hansaem-access_log xxx@x.x.x.x:/usr/local/apache2/logs/remote
    E. Awstats 에서 분석해야 할 로그들을 스크립트로 작성하여 일괄적으로 분석하게끔 한다.
    #!/bin/bash
    /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=cacti.xxx.com
    /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=xxx.com
    /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=xxx.co.kr
    /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=xx.co.kr
    /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=xx.com
    /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=xx.com
    /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=webmail.xxx.com
    F. 실행을 하게 되면 차례대로 리모트로 가져온 로그화일들을 분석하게 된다.
    G. 결과물은 http://cacti.xxx.com/awstats/awstats.pl?config=도메인 식으로 URL 경로가 된다. ( ex ) http://cacti.xxx.com/awstats/awstats.pl?config=xxx.com
    x.x.x.x 모니터링 사이트 monitoring.xxx.com
      커피닉스 카페 최근 글
    [06/16] [질문]SAN 스위치 브로드케이드 dcx8510-4 장비관련입니다.
    [04/22] Re: 영화속에 컴퓨터 이야기 ~스워드피쉬(2001)
    [10/20] Cross Compiler 깔
    [07/14] SSL АО
    [04/26] Re: 도스화면 원격조종 여부
    [04/25] 도스화면 원격조종 여부
    [10/30] Cshell에서 난수 설정
    [10/23] 공항철도주식회사 SE 구인 件
    [01/26] Re: wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
    [01/25] wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
    [01/11] 특정 안드로이드 WebView 버전에서 SSL 문제 (WebView 버그)
    [08/01] DNS forwarder (전달자) 서버를 통해서 쿼리하면 역방향을 받아오질 못합니다.
    [05/16] (주)후이즈 시스템엔지니어 (경력자) 모집
    [02/15] [AWS] Cloudfront edge 확인하기
    [01/20] Mobile Service/eCommerce 기업에서 Server / Java / PHP 개발자 구인
      New!   최근에 등록한 페이지
      KiCad EDA Suite project (Free/Libre/Open-Source EDA Suite) (CAD)
      오픈캐스케이드 캐드 (OpenCASCADE CAD)
      QCad for Windows --- GNU GPL (Free Software)
      The Hello World Collection
      IPMI를 활용한 리눅스 서버관리
      DNS 설정 검사
      nagiosgraph 설치 방법
      Slony-I 설치 방법 (postgresql replication tool)
      Qmail기반의 Anti spam 시스템 구축하기
      clusterssh

    [ 함께하는 사이트 ]




    운영진 : 좋은진호(truefeel), 야수(yasu), 범냉이, sCag
    2003년 8월 4일~