Creating Web Statistic Analyzer in Tomcat


Original tutorial: http://www.nuxora.com/2007/07/10/awstats-on-tomcat/

Please give credit to Him.

Saya akan menjelaskan bagaimana cara untuk membuat sebuah Web Statistic Analyzer pada Tomcat 5/6 khususnya untuk Operating System berbasis Windows. (Pada tutorial ini saya menggunakan OS Windows XP)

Requirement:
1. Perl 5.2 or Above (Pada tutorial ini saya akan menggunakan Strawberry Perl untuk Windows)
2. Tomcat 5 or above (Pada tutorial ini saya akan menggunakan Tomcat 6)
3. awstats.war –> original war file sudah tidak aktif, anda bisa mendownloadnya disini

Langsung saja saya coba menerangkan langkah2 yang harus dilakukan:
A. Installation
1. Install Strawberry Perl pada OS anda, atau anda bisa menggunakan installasi lain untuk Perl.

B. Tomcat Setting
Pada tahapan ini saya anggap configurasi pada Tomcat anda adalah by default, atau anda tidak pernah melakukan perubahan konfigurasi apapun pada Tomcat server anda.
1. Buka file %Tomcat_Home%/conf/server.xml. Langsung menujun pada beberapa baris paling bawah. Uncomment bagian Valve, lalu modifikasi sedikit menjadi seperti ini:

<Valve className="org.apache.catalina.valves.FastCommonAccessLogValve" directory="logs"
               prefix="access." suffix=".log" pattern="combined" resolveHosts="false"

2. Buka file %Tomcat_Home%/conf/context.xml. Modifikasi dan Tambahkan line berikut:

<Context reloadable="true" privileged="true">
.
.
.
	WatchedResource>WEB-INF/web.xml</WatchedResource>
.
.
.
</Context>

3. Jika anda menggunakan Tomcat 6, anda membutuhkan file servlets-cgi.jar dari library Tomcat 5.

C. Installation awstats

1. Taruh awstats.war pada file webapps Tomcat.

2. Jalankan Tomcat – biarkan sampai awstats di deploy oleh Tomcat

3. Matikan Tomcat, sekarang masuk ke bagian setup awstats

D. Awstats Setting

1. Buka Windows Explorer, lalu masuk ke Directory %Tomcat_Home%/webapps/WEB-INF/cgi-bin, copy file awstats.model.conf ke folder yang sama, lalu rename file copy-an nya menjadi awstats.%nama_aplikasi%.conf. Sebagai contoh awstats.www.tjong.com.conf (NOTE: untuk selanjutnya pada referensi ini, saya akan menggunakan istilah awstats.www.tjong.com.conf sebagai referensi untuk file configurasi anda).

2. Buka file awstats.pl. Rubah baris pertama

dari:

#!usr/bin/perl

menjadi

#!%strawberry_perl_home%/perl/bin/perl

NOTE %strawberry_perl_home% = directory tempat anda menginstall strawberrry perl.

3. Buka file awstats.www.tjong.com.conf, modifikasi beberapa line sebagai berikut:

a. Baris ke-50:

dari:

LogFile="[TomcatInstallDir]/webapps/awstats/WEB-INF/tools/logresolvemerge.pl [TomcatInstallDir]/logs/*.log |"

menjadi:

LogFile="%Tomcat_Home%/logs/access.%YYYY-0-%MM-0-%DD-0.log"

b. Baris ke-146:

dari:

SiteDomain=""

menjadi:

SiteDomain="localhost"

c. Baris ke-232:

dari:

AllowToUpdateStatsFromBrowser=0

menjadi:

AllowToUpdateStatsFromBrowser=1

4. Open Command Prompt. Masuk ke Directory %Tomcat_Home%/webapps/awstats/WEB-INF/cgi-bin jalankan perintah berikut:

perl awstats.pl -config=www.tjong.com -update

D. Running Application
1. Jalankan Tomcat Server anda
2. Pergi ke alamat ini:

http://localhost:8080/awstats/cgi-bin/awstats.pl?config=www.tjong.com

3. Tampilannya kurang lebih akan seperti ini:

4. Click Update Now untuk menggenerate data terbaru

Advertisement

Creating Web Statistic Analyzer


Required Software:

  1. Web Server: Apache Server 2.2 – bisa di download disini
  2. Perl: Strawberry Perl 5.10.1.0 – bisa di download disini
  3. Web Statistik Analyzer: awstats 6.95 – bisa di download disini

Scenario nya, menggunakan Apache Server sebagai web server – nya, 1 website aja dan lokasinya ada di root. Intinya yang akan kita gunakan adalah file access.log nya apache, log file ini sebagai raw datanya. Lokasi peng-install-an apache server pada contoh ditulisan ini, saya bikin default aja di C:\Program Files\ . Untuk strawberry perl lokasi default nya ada di C:\ . Kalau untuk awstats lokasi defaultnya di C:\Program Files\.

Jangan menginstall awstats nya dulu, kalau sudah terlanjur di install – ya udah di uninstall aja lagi :p. Sabar yah nanti akan saya bimbing pelan-pelan. Pertama-tama yang harus anda lakukan adalah menginstall strawberry Perl. Sudah? Kalau sudah selesai kita akan melanjutkan ke step selanjutnya dengan menginstall awstats.

Kita mulai ke tahap selanjutnya. Klik 2 kali setup file awstats – nya. Next – I Agree – Next – Next aja sampai muncul command prompt.

  1. Inputan pertama masukkan path installasi  Apache Server, kalau dicontoh ini berarti berada pada:
    C:\Program Files\Apache Software Foundation\Apache2.2
  2. Inputan kedua masukkan path tempat httpd.conf berada, kalau dicontoh ini berarti:
    C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf
  3. Inputan Ketiga – “Do you want me to build a new AWStats config/profile?” – isi saja dengan y
  4. Inputan Keempat tuliskan nama profile yang akan dibuat: myweb
  5. Pencet Enter to continue.
  6. Pencet Enter lagi untuk finish.

(*) Kita mulai dengan tahap selanjutnya, yaitu untuk memodifikasi configurasi file di profile yang baru saja kita create. Masuk ke path C:\Program Files\AWStats\wwwroot\cgi-bin ini buka file awstats.myweb.conf dengan notepad. Dan rubah baris2 berikut:

1.

 LogFile="/var/log/httpd/mylog.log"
 

menjadi

 LogFile="C:/Program Files/Apache Software Foundation/Apache2.2/logs/access.log"
 

2.

 LogFormat=1
 

menjadi

 LogFormat=4
 

Kita mulai masuk ke tahap selanjutnya, testing configurasi awstats nya sudah benar atau belum. Silahkan ikuti langkah berikut:

  1. Buka Command prompt
  2. Masuk ke direktori C:\Program Files\AWStats\wwwroot\cgi-bin
  3. ketikkan command berikut:
 perl awstats.pl -config=myweb -update
 

Jika dia mengeluarkan hasil seperti berikut ini, maka configurasi anda sudah berhasil:

Create/Update database for config "./awstats.myweb.conf" by AWStats version 6.9
5 (build 1.943)
From data in log file "C:/Program Files/Apache Software Foundation/Apache2.2/log
s/access.log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Phase 2 : Now process new records (Flush history on disk after 20000 hosts)...
Jumped lines in file: 0
Parsed lines in file: 5847
 Found 0 dropped records,
 Found 0 corrupted records,
 Found 0 old records,
 Found 5847 new qualified records.
 

Kita sudah hampir menikmati hasil kerja keras ini, ayo yang semangat. đŸ™‚
Next step, mostly untuk user windows mengalami masalah pada file awstats.pl nya yang tidak bisa mengakses perl. Padahal sewaktu menginstall Strawberry Perl, sudah automatis di-include kan ke dalam System PATH. Dugaan saya karena perbedaan file separator antara windows base dengann unix base.
Untuk menanggulanginya tinggal edit file awstats.pl nya sedikit. Silahkan ikuti langkah berikut ini:

  1. Masuk ke direktori C:\Program Files\AWStats\wwwroot\cgi-bin
  2. Buka file awstats.pl dengan notepad
  3. Ganti first line nya:
 #!/usr/bin/perl
 

menjadi

#!C:\strawberry\perl\bin\perl
 

Akhirnya, setelah perjalanan yang panjang, kita dapat menikmati hasilnya. Buka browser anda, coba masukkan alamat berikut: http://localhost/awstats/awstats.pl?config=myweb

Kalau anda perhatikan pada statistik yang dihasilkan, pada bagian TOP 10 OS dan TOP 10 Browser, datanya masih unknown. Jika anda mau melengkapinya silahkan merubah format log file pada apache anda. Untuk melengkapinya kita bisa menggunakan combined.log. Noted: jika anda menggunakan combined.log sebagai raw datanya, jangan lupa untuk merubah LogFormat nya menjadi tipe 1. Bagi anda yang belum tau bagaimana caranya – silahkan baca referensi nya di tulisan saya yang sebelumnya (click here).

Oopss saya lupa memberitahukan, kalau untuk meng-update data log ke dalam awstats – bagi pengguna OS Windows tidak bisa automatis – tetap harus di-update manual. Cara nya coba liat yang saya beri tanda (*) pada artikel ini. Jika anda sudah mengerti flow nya, coba mengupdate data nya menggunakan scheduler pada windows. Kalau masih bingung bagaimana caranya, silahkan nantikan tulisan saya yang berikutnya. :p