Webalizer

Allikas: Kuutõrvaja

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).