Memasang Awstats di tomcat5.5 di Ubuntu 8.04

Awstats adalah salah satu tools yang powerfull untuk mengetahui statistik dari website kita , untuk memasangnya pun sangat mudah terutama untuk web server seperti apache dengan didukung oleh dokumentasi . Namun ini sepertinya tidak berlaku  untuk tomcat, oleh karena itu saya merasa perlu untuk menulisakannya setidaknya ini yang saya terapkan dan terbukti running.

Sebelum dimulai ada beberapa hal yang perlu disiapkan :

Untuk installasi Perl, java, dan tomcat karena saya menggunakan menggunakan ubuntu sangat mudah untuk installasi, cukup menggunakan aptitude

apt-get install perl sun-java6-jdk tomcat5.5

Sedang untuk awstat karena default aptitude dari awstats adalah untuk apache, sehingga saya download manual

wget http://prdownloads.sourceforge.net/awstats/awstats-6.95.tar.gz

Awstats adalah tools yang dibuat dari script perl, itulah mengapa kita harus menginstall Perl seperti yang sudah saya sebutkan sebelumnya.

Setelah Semua siap kita masuk ke konfigurasi :

Secara default tomcat tidak mendukung program CGI untuk berjalan didalamnya oleh karena itu kita harus melakukan sedikit perubahan pada konfigurasi tomcat sebagai berikut,

vim /etc/tomcat5.5/web.xml

carilah baris yang kurang lebih seperti ini

 <servlet>
    <servlet-name>cgi</servlet-name>
    <servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
    <init-param>
       <param-name>debug</param-name>
       <param-value>0</param-value>
    </init-param>
    <init-param>
       <param-name>cgiPathPrefix</param-name>
       <param-value>WEB-INF/cgi</param-value>
    </init-param>
    <load-on-startup>5</load-on-startup>
 </servlet>

secara default ini di-disable, kita perlu untuk meng-enable nya.

kemudian cari juga baris sebagai berikut,

<servlet-mapping>
    <servlet-name>cgi</servlet-name>
    <url-pattern>/cgi-bin/*</url-pattern>
 </servlet-mapping>

baris ini juga harus di-enable. Selain itu juga kita perlu merubah nama library perl di bawah direktori server

mv /usr/share/tomcat5.5/server/lib/servlets-cgi.renametojar /usr/share/tomcat5.5/server/lib/servlets-cgi.jar

mv /usr/share/tomcat5.5/server/lib/servlets-ssi.renametojar /usr/share/tomcat5.5/server/lib/servlets-ssi.jar

kemudian restart tomcat

/etc/init.d/tomcat5.5 restart

Tomcat telah siap untuk menjalankan program CGI .

Awstats yang telah kita download sebelumnya kita extract

unzip awstats-6.95.zip

kemudian masuk ke direktori awstats

cd awstats-6.95

kemudian copy kan direktori icon di dalam wwwroot ke dalam context path dari web kita, dalam hal ini saya sebut sebagai webku

cp -r wwwroot/icon /usr/share/tomcat5.5/webapps/webku/.

copy kan juga direktori cgi-bin ke direktori WEB-INF dibawah webku

cp -r wwwroot/cgi-bin /usr/share/tomcat5.5/webapps/webku/WEB-INF/.

rename direktori cgi-bin menjadi cgi, ini dikarenakan diawal konfigurasi CGI kita diset cgi

mv /usr/share/tomcat5.5/webapps/webku/WEB-INF/cgi-bin /usr/share/tomcat5.5/webapps/webku/WEB-INF/cgi

selanjutnya kita atur konfigurasi awstats :
masuk ke direktori cgi,

cd /usr/share/tomcat5.5/webapps/webku/WEB-INF/cgi

ubah awstats.pl menjadi awstats.cgi supaya dapat dijalankan oleh tomcat

mv awstats.pl awstats.cgi

kemudian buat awstats.www.domainku.com.conf dari duplikasi file awstats.model.conf

cp awstats.model.conf awstats.www.domainku.com.conf

ubah konfigurasi didalamnya sesuai dengan kebutuhan, tapi minimal ada 7 hal yang harus diatur,

LogFile="/var/log/tomcat5.5/domainku_access_log.%YYYY-24-%MM-24-%DD-24.txt"

LogType=W

LogFormat=1

LogSeparator=" "

SiteDomain="www.domaiku.com" [diisi ip atau Domain kita]

HostAliases="domainku.com www.domainku.com"

AllowToUpdateStatsFromBrowser=0

“LogFile” mengarah pada log dari domainku.com, karena awstats membaca log acces dari website kita, maka kita juga perlu meng-enable log acces di konfigurasi tomcat

buka kembali file server.xml di direktori tomcat

vim /etc/tomcat5.5/server.xml

kemudian cari baris seperti berikut,

<Host name="domainku" appBase="webku"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>

ubah menjadi,

<Host name="domainku.com" appBase="webku"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">

<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs"  prefix="domainku_access_log." suffix=".log"
pattern="combined" resolveHosts="false"/>

</Host>

selanjutnya restart tomcat.

Buka alamat http://domainku.com/cgi-bin/awstats.cgi?config=www.domainku.com dibrowser