2010년 11월 24일 수요일

[web]무료 웹로그 분석툴 webalizer (웹분석 개념정리 포함)

무료 웹로그 분석툴 webalizer 를 적용하면서 정리한 내용입니다. 무료툴이다보니 기업환경에 적용하기에는 어려울 것 같고 부하가 많은 특정 시스템을 분석하고자 할 때 도움이 될 것 같습니다. 이미 인터넷에 설치 및 사용법에 대해 많이 올라와 있습니다. 대신 각 용어에 대해 정리해 놓은 곳이 없어서 대신 정리해서 올립니다.

■ 공식사이트
http://www.mrunix.net/webalizer/

■ 설치방법
http://blog.naver.com/rlaaudtnr8?Redirect=Log&logNo=50005506151 (windows 기준)http://blog.naver.com/battledocho?Redirect=Log&logNo=50094533781 (Linux 기준)

■ 화면 snapshot
http://webzero.tistory.com/18

■ 웹로그 분석 결과 관련 개념정리
출처 : ftp://ftp.mrunix.net/pub/webalizer/README


1. Hits
서버에 요청된 request 총 건수를 Hits이라고 한다. reqeust 는 html, 그래픽 이미지, 오디오파일, CGI 스크립트 등 모든 형태가 될 수 있다. 서버 로그 (access_log) 의 각 라인은 하나의 hit 으로 계산된다. 이 숫자는 특정 기간동안 서버에 요청된 request 의 총 수를 뜻한다.

2. Files
어떤 request 는 서버가 client 에 뭔가 다시 보내주기를 바란다. 이와 같은 파일에는 html 페이지나 그래픽 이미지가 될 수 있다. Hits 과 Files 과의 관계는 '들어오는 요청(incoming requests)' 와 '나가는 response(outgoing response)' 로 생각할 수 있다.

3. Pages
Page 란 HTML 문서를 만드는 것이라 볼 수 있다. 즉, 그래픽 이미지, 오디오클립 등은 Page에 포함되지 않는다. 이 수는 Page 의 숫자를 의미하며 페이지 내의 다른 자원은 포함하지 않는다. Page 란 것은 서버에 따라 다른데 기본적으로는 '.htm', '.html' 혹은 '.cgi' 등이며 많은 사이트에서는 '.phtml', '.php3', '.pl' 등을 포함하기도 한다. 어떤 사람들은 이 수를 '순수한' hits로 생각하기도 하며, 다른 프로그램에서는 이를 'pageview'로 표시하기도 한다.

4. Sites
서버에 요청하는 각각의 reqeust 는 특정 'site'로부터 발생되며, 이는 특정한 이름이나 IP 주소로 나타난다. 'site' 수는 얼마나 많은 각각의 IP 주소가 특정기간동안 서버로 request 를 보냈는지 나타낸다. 이것은 각각의 다른 사용자 (실제 사용자)를 나타낸 것은 아니며 단지 로그와 HTTP 프로토콜을 이용해서 이를 판단하는 것은 불가능하다.

5. Visits
특정 IP 주소에서 서버로 request 를 보내면 그 주소에서 이 전 request 로부터의 시간 총양이 계산된다. 만일 시간차가 이미 설정된 'visit timeout' 값 (default는 30분)보다 크게 되면 총값은 증가하게 된다. 만일 사용자가 오후 1시에 사이트를 방문하고 다시 3시에 방문하게 되면 값이 2로 등록된다.

6. Kbytes
Kbytes 값은 KB 형태로 특정 기간동안 서버에서 보내준 데이터의 양이다. 이 값은 로그에서 바로 추출한 것으로 웹서버에서 만든 로드에서 정확한 값을 나타낸다. 일반적으로 이 값은 서버의 outgoing traffic의 정확한 총 양을 나타낸다.

7. Top Entry and Exit Pages
Top Entry 와 Exit 테이블을 통해 사용자들이 사이트를 들어가기 위해 어떤 URL 을 사용하고 어떤 페이지를 마지막으로 보는지 추측할 수 있다. HTTP 프로토콜과 로그 rotation에 대한 제약 때문에 이 값은 실제 값에 대한 대략의 추측만을 할 수 있지만 사용자들이 어디로 들어와서 나가는지 전체적인 트렌드를 파악할 수 있다.

2008년 8월 5일 화요일

[migration]기존시스템 환경 분석

시스템 마이그레이션을 위해 기존 시스템 환경 분석에 대해 알아보고자 한다.

당연한 말이지만 마이그레이션을 위해서는 기존 시스템 환경 분석이 필수적이다. 안타깝게도 종종 기존 환경 분석이 미흡하여 마이그레이션 프로젝트 도중 분석에서 누락된 패키지를 발견했다던지 마이그레이션 추가 대상 서버를 발견하는 일이 발생한다. 일정을 조정하여 해결되는 문제라면 큰 문제가 아니겠지만 계약 사항과 관련된 이슈가 나타나면 일이 어려워진다.

1. OS 환경

2. Web Application Server 종류, 버전
유지보수 계약 여부도 함께 확인해야 한다.

3. Web Server 사용 여부, 버전, 탑재 모듈
어플리케이션 서버 뿐만 아니라 content 가 많거나 개발 시기가 달라 웹서버만 사용할 경우 별도의 웹서버(대부분은 아파치이지만)을 별도 설치하여 사용하는 경우가 있다. 이럴 경우 웹서버 사용 자체는 문제가 되지 않지만 어떤 모듈을 사용하는지 파악해야 하며 업그레이드할 경우 문제가 발생하지 않는지 고려해야 한다.

4. JDK 버전

5. 웹어플리케이션 종류, Encoding 정보
DB Encoding 정보와 시스템 개발시 적용되었던 encoding 정보, 운영시 (Runtime)시 적용되었던 encoding 정보 등으로 나뉜다.

6. 3'rd Party Package 종류

단독 엔진으로 구성되는 경우(검색엔진, 업무용 패키지)와 라이브러리로 기존 프로세스에 add-on 되는 경우가 있다. 라이브러리로 적용되는 경우도 자바 라이브러리로 구성되어 프로그램에서 바로 사용하는 경우가 있고 이기종 언어로 되어 있어 자바 프로그램의 경우 JNI 등을 이용하여 호출하는 경우가 있다. 이럴 경우 재컴파일을 위해 라이브러리 패키지의 OS bit 정보도 필요하다.

7. 3'rd Party Package 유지보수 계약 여부