'분석'에 해당되는 글 2건

  1. 분석과 설계에 대한 생각
  2. 우분투 아파치 서버로그 분석 (awstats)

분석과 설계는 어떤 개발을 하든지 중요합니다.

요 근래 저희 팀의 문제와도 연결되어 있어 더욱 그러하게 생각합니다.


저만 느낀건 아니죠 !!!?




생각해 보세요~ 나에게 주어진 재료는 한정되어 있어요.


이 재료를 통해 하늘을 나는 비행기를 만들어야 해요


아무 생각 없이 우선 만들고 보자라는 식으로 재료를 사용하며 만들면 비행기는 제대로 날 수 있을까요?


재료 또한 한정되어 있어 만들고 고치고, 만들고 고치고 반복 하다보면


금새 재료가 동날 것이에요



주어진 재료를 생각해서 미리 머리속에서 시뮬레이션 하고, 


어떻게 만들지 미리 생각해야 되요. 분석과 설계의 첫 단추라 할수 있어요


그 다음 단추는 머릿속에서만 시뮬레이션 했던것을 더욱 명확하게 하기위해


문서등으로 형식화 하구요..


뿌옇게 모호했던 부분이 드러나게 되고 좀더 체계적으로 바뀌어가게 되요.


그 다음엔 형식화 한대로 만들면 되구요~





물론 100% 형식화 한대로 만들어 지지는 않을거에요. 


만들다 보면 또 다른 문제가 발생할 수 있죠.


그래도 이런 과정 없이 앞에서 얘기 했던 것처럼 뚝딱뚝딱 만들어 버린다면


비행기는 비행기인데 날개가 없는 괴물이 되어 버릴수 있어요.


조금씩 다듬으면서 형식과 실체를 일치화 시켜나가는 것이에요~


가장 중요하면서 가장 힘든 부분이기도 해요


마치 장거리 달리기를 하는 것처럼 힘들기도 한 것 같아요


아무래도 이런 힘듦 때문에 분석과 설계를 싫어하는 것이 아닌가 생각도 들구요


그리고 이겨낸다면 파아란 하늘 창공을 높이 가르는 비행기는 만들어질 것이에요



여러분은 어떤 비행기를 만들고 싶은가요 ?



'일상생활' 카테고리의 다른 글

석촌동 백제고분 유적지 답사  (0) 2012.05.13

서버(Server)를 아파치로 구축했다면 내 서버에

  • 몇명이 접속 했는지,
  • 어떤 페이지가 가장 호출되었는지,
  • 어느 국가에서 접속했는지,
  • 어떤 IP에서 접근했는지,
  • 머무른 시간은 어떠한지,
  • 어떤 파일을 다운로드 받았는지 등

수 많은 정보를 서버로그를 통해 다음과 같이 분석할 수 있습니다.


우분투환경에서 아파치 서버로그는 awstats를 이용하여 분석합니다.


1. awstats 패키지 설치
  • 다음 명령어로 awstats를 설치합니다.
  • geo 라이브러리는 방문자를 나라별로 분류해서 볼 수 있게 하기위해 설치합니다.
$ sudo apt-get install awstats libgeoip1 libgeoip-dev libgeo-ip-perl

2. awstats 환경 설정
$ sudo vim /etc/awstats/awstats.conf
  • 122번째줄 : LogFormat=4 를 LogFormat=1 로 변경. ubuntu apache 기본값이 1번입니다.
  • 153번째줄 : SiteDomain=”” 를 SiteDomain=”mydomain.com” 로 변경. 작업중인 파일명을 참고하여 변경하세요.
  • 168번째줄 : HostAliases=”localhost 127.0.0.1” 를 HostAliases=mydomain.com localhost 127.0.0.1” 로 변경. 현재 설정파일과 동일하게 취급할 도메인을 띄어쓰기를 구분자로 하여 적어줍니다.
  • 188번째줄 : DNSLookup=1 을 DNSLookup=0 으로 변경. dnslookup 은 부하가 많이 걸리므로 꺼두는게 좋습니다.
  • 905번째줄 : Lang=”auto” 를 Lang=”ko” 로 변경. 강제로 한국어를 지정합니다. awstats에는 한글UI를 지원합니다.
  • 1305번째줄 : LoadPlugin=”hashfiles” 를 LoadPlugin=”geoip GEOIP_STANDARD /usr/share/GeoIP/GeoIP.dat” 로 변경. 방문자를 나라별로 분류해서 볼 수 있습니다.

3. awstats 보안 설정
# awstats.도메인명.conf 를 자동으로 불러옴
$ sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.windwing.co.kr.conf

# 보안을 위해서 기본샘플파일인 awstats.conf 파일명을 awstats.conf_ 로 변경
$ sudo mv /etc/awstats/awstats.conf /etc/awstats/awstats.conf_

4. 아파치 환경 설정
  • 아파치 환경설정 파일을 읽어옵니다.
$ sudo vim /etc/apache2/sites-enabled/000-default
  • 환경설정 파일에서 VirtualHost 태그 안에 awstats 설정 추가합니다.
<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www

    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>


    ## -- awstats 설정 ##
    Alias /awstatsclasses "/usr/share/awstats/lib/"
    Alias /awstats-icon/ "/usr/share/awstats/icon/"
    Alias /awstatscss "/usr/share/doc/awstats/examples/css"

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ...
</VirtualHost>
  • 아파치 서버 재시작
$ sudo /etc/init.d/apache2 restart

5. 로그정보 업데이트
  • 시스템에서 주기적으로 업데이트 하기위해 crontab 설정합니다. (반드시 sudo를 붙여 관리자 crontab에 등록)
sudo crontab -e
  • 다음과같이 crontab에 awstats 업데이트 구문을 등록합니다. (30분 주기)
# awstats
00,30 * * * * /usr/lib/cgi-bin/awstats.pl -config=mydomain.com -update > /dev/null

6. 결과 확인



references


'개발이야기 > Linux' 카테고리의 다른 글

Ubuntu 이클립스 실행오류 해결  (4) 2012.09.26
Ubuntu 12.04에서 java 설치  (0) 2012.09.12
ptrace 설명 및 사용법  (0) 2012.07.19