Webalizer
TOORES TEKST
Webalizer on tarkvara mis loodud veebiserveri logide analüüsimiseks ning nende alusel statistika koostamiseks. Webalizer ei toeta eraldi virtuaalseid domeene ja nende kohta statistika genereerimist. Selleks, et iga domeeni kohta oma logi tekitada tuleb kas a) logida iga domeen eraldi faili (mis on tülikas kuna suurte veebimajutus serverite puhul hoitakse nii avatuna palju väikesi faile) või b) tükeldada enne webalizeri kasutamist eraldi skriptiga üldine logi ära jagades iga domeeni info eraldi faili. Medali teiseks küljeks on see, et oma lihtsuses on webalizer robustne töövahend ning suudab töödelda läbi vähese ajaga hiiglasuuri faile.
Väljaarvatud juhul kui Apache teenindab ainult ühte suurt veebisaiti on vaja joonistada igast serverist eraldi graafik. Kui veebe pole palju, näiteks kümmekond siis võib lisada httpd.confi iga virtualhosti juurde eraldi faili logimise. Muidu joonistab webalizer kõigist veebidest kokku ühe hiidsuure rapordi, mis pole tüüpiliselt kõige informatiivsem.
Webalizeri install.. operatsionisüsteemi enda vahenditega.
Meil on veebiserver kus asuvad domeenid elukas.zoo.tartu.ee, kala.zoo.tartu.ee, karu.zoo.tartu.ee, kõikide veebiserverite logi suunatakse kõik kolme faili. Veebiserveris endas on seadistatud igas virtuaalhostis logi eraldi faili järgnevalt
<VirtualHost *:80> ServerName www.zoo.tartu.ee DocumentRoot "/public/zoo/site" CustomLog /var/log/veebilogid/zoo_access_log common </VirtualHost>
Webalizeri enda skript
#!/bin/bash webalizer -p -F clf -c webalizer.conf -n elukas.zoo.tartu.ee -o stat/elukas veebilogid/elukas_access_log webalizer -p -F clf -c webalizer.conf -n kala.zoo.tartu.ee -o stat/kala veebilogid/kala_access_log webalizer -p -F clf -c webalizer.conf -n karu.zoo.tartu.ee -o stat/karu veebilogid/karu_access_log
Selleks, et iga tunni tagant seda skripti käiviataks ning satistikat uuendataks
# run this every day 20 4 * * * /root/weabalizer.sh
Selleks, et roteerida logifaile tuleks sisse lülitada veel konfiguratsioonis ajaloo säilitamine spetsiaaltetes failides webalizer.current ja webalizer.hist graafikute kaustas. Sellejaoks tuleb tekida webalizer.conf ja täiendada kõiki kolme ülal skriptis olevat rida reaga -c webalizer.conf. Faili enda sisusse piisab kui kirjutada rida
Incremental yes
Edasi tuleks paigaldada logrotate pakett ja tekitada järgnev seadistusfail nimega logrotate.conf
/var/log/http/* { prerotate webalizer.sh endscript compress dateext maxage 365 rotate 99 size=+1024k notifempty missingok create 644 root wheel postrotate find /var/log/http/ -mtime +40 -name "*.gz" -ls -exec rm {} \; endscript }
Crontabist tuleks käivitada webalizer.sh asemel rida
logrotate logrotate.conf
Võimalik, et tuleb täpsemalt määratleda logrotate binaari asukoht, see sõltub erinevalt distributsioonist.
Juhul kui veebe on serveris sadu siis iga ühe neist eraldi logimine on pisut tülikas. Tasub logida ühte faili ja see hiljem jupitada paljudeks väiksemateks. Ühtse suure logifaili tükeldamiseks on esimesena vaja muuta common logimist järgnevalt, et esimesel väljal oleks domeeni aadress millele pöörduti.
LogFormat "%h %l %u %t \"%r\" %>s %b" common
http://kuutorvaja.eenet.ee/wiki/Logrotate
http://www.mrunix.net/webalizer/webalizer_help.html
http://kuutorvaja.eenet.ee/wiki/Logi
Alternatiivid
http://awstats.sourceforge.net/ - tundub pisut rohkem infot näitavat, kui webalizer
http://www.jawstats.com/ - tundub olevat JavaScriptiga võimestatud awstats
http://piwik.org/ - pmst Google Analytics, mille saab omale installida (st JS snippetiga külastajate trackimine).