
Analyzujeme logy II - webalizer
V minulej časti sme sa začali venovať širšej
problematike analýzy logových súborov, kde sme začali hovoriť
o analýze logov web serverov prostredníctvom nástroja awstats.
Dnes budeme v tejto téme pokračovať a predstavíme si druhý
najpopulárnejší nástroj pre túto činnosť a to webalizer.
Webalizer rovnako ako awstats
je nástroj pre vyhodnotenie jednotlivých požiadaviek na
webserver v časovom rade z pohľadu vecného, objemového a
časového. Pre vizualizáciu sa na rozdiel od
awstats používa grafická knižnica
GD , nakoľko výsledné grafy sú generované natívne
a nie formou vkladanej predpripravenej grafiky. Domovská
stránka tohto projektu vo veľmi pokročilom a prepracovanom
štádiu je k dispozícii na http://www.mrunix.net/webalizer ktorý patrí
skutočne k jedným z najrýchlejších.
1. Predpríprava a inštalácia
Pre úspešnú kompiláciu je potrebné mať v systéme k
dispozícii grafický engine GD a príslušné gdlib knižnice čo je
na väčšine systémov bežnou záležitosťou, v prípade ich
neexistencie je potreba previesť ich inštaláciu s podporou
.png. Zdrojový kód webalizeru je k dispozícii na ftp://ftp.mrunix.net/pub/webalizer/webalizer-2.01-09.src.tgz
v súčasnosti vo verzii 2.01 build 09, takže po stiahnutí sa
môžeme pustiť k dekomprimácii. tar xzvf webalizer-2.01-09.src.tgz
cd webalizer-2.01.-09
Pred kompiláciou samotnou je potreba rozhodnúť sa či
použijeme niektorý z podporovaných jazykov použitím parametra
--with-language , alebo či budeme podporovať
resolvovanie IP adries z logov za pomoci parametra
--enable-dns . Následne prevedieme kompiláciu a
inštaláciu: ./configure --with-language=slovak --enable-dns
make
make install
Výsledkom inštalácie je binárka webalizer
umiestnená typicky v adresári /usr/local/bin/ so
symlinkom s názvom webasolver a predpripravená
štruktúra konfiguračného súboru s názvom
webalizer.conf.sample umiestnená v adresári
/etc/.
2. Konfigurácia
Implicitné umiestnenie konfiguračných súborov sa
predpokladá v adresári /etc . Už pri tvorbe názvov
súborov treba myslieť na použitie webalizera s viacerými
virtualhostami, takže názvy konfiguračných súborov budeme
odvodzovať priamo od názvu hostu, napríklad
webalizer.conf.www.mojweb.sk a rovnakým spôsobom
budeme pristupovať pri tvorbe názvov dočasných archívov a
podobne. Priblížme si teda základné voľby konfigurácie pre
beh: LogFile /home/httpd/www.mojweb.sk-80/logs/access_log
LogType clf
Prvým krokom je určenie umiestnenia logového súboru
webservera a jeho typovú špecifikáciu, v našom a vo väčšine
prípadov to bude log typu combined , čomu
zodpovedá voľba clf OutputDir /home/httpd/www.mojweb.sk-80/html/stat
HistoryName mojweb.hist
Incremental yes
IncrementalName webalizer.mojweb
HostName mojweb.sk
HTMLExtension htm
Nasleduje špecifikácia cieľového adresára, v ktorom bude
generovaná celková štruktúra s príslušným indexom.
HistoryName a IncrementalName slúži
na špecifikáciu dátových súborov pre cachovanie dát z
predchádzajúcich spracovaní pre možnosť práce v inkrementálnom
móde, ktorý je vhodné na systémoch kde nerotujeme príslušné
logy používať. Následne označíme príslušné
HostName a implicitnú príponu pre html
dokumenty. PageType htm*
PageType cgi
PageType phtml
PageType php3
PageType php
PageType pl
DNSCache dns_cache.db
DNSChildren 0
UseHTTPS no
Nezabudneme vyšpecifikovať všetky prípony dokumentov a
povoliť alebo zakázať používanie DNS resolvovania a zapnúť
podporu pre vyhodnocovanie SSL prístupov.
HTMLPre <!DOCTYPE HTML PUBLIC "-//W3C//DTD \
HTML 4.0 Transitional//EN">
HTMLHead <META http-equiv="Content-Type" content=\
"text/html" charset=iso-8859-2>
HTMLPost <BR CLEAR="all">
HTMLTail <IMG SRC="msfree.png" ALT="100% Micro$oft\
free!" >
HTMLEnd </BODY></HTML>
Následne je vhodné špecifikovať príslušné hlavičky z
ktorých je vhodné nezabudnúť na nastavenie si príslušnej
špecifikácie kódovej stránky pri použití podpory svojho jazyka
pre správne zobrazovanie diakritiky. GroupURL /cgi-bin/* CGI Scripts
GroupURL /icons/* Icons
GroupURL /images/* Images
Nasledujú definície jednotlivých skupín pre prehľadné
členenie vo výsledku analýzy, kde si môžeme jednotlivé
dokumenty rozdeliť v závislosti od názvu súborov do pracovných
skupín. K dispozícii sú ešte ďalšie voľby, ktoré určujú ktoré
časti analýzy sa majú vykonávať a ktoré nie s príslušným
určením počtu zobrazovaných prvkov celkovej agregácie, pre ich
jednoznačné pomenovania priamo definujúce ktorú časť výstupu
ovplyvňujú ich nebudeme musieť rozoberať, každý intuitívne
bude vedieť, k čomu príslušné voľby patia.
3. Vykonanie analýzy
Základná myšlienka spočíva v implementácii spracovania do
cronu vo forme cyklickej úlohy, či už v hodinovom
alebo dennom intervale, čo závisí na celkovej vyťažení
výpočtového výkonu servera samotného a požiadavkách užívateľa
na aktuálnosť výsledku analýzy. V každom prípade pri použití
inkrementálneho spôsobu generovania pri vypnutom resolvovaní
je možné vykonávať spracovanie aj v hodinových
intervaloch.
Spracovanie dávky sa zadáva s príslušnou špecifikáciu
konfigurácie pri zákaze výpisu diagnostických informácií
vyplývajúcich zo spracovania, ktorú sme si v predchádzajúcom
kroku pripravili príkazom: webalizer -q -c /etc/ webalizer.conf.www.mojweb.sk
V prípade resolvovania je navyše potrebné špecifikovať
názov DNS cache súboru s maximálnym počtom jednotlivých DNS
procesov nasledovne: webalizer -q -c /etc/ webalizer.conf.www.mojweb.sk \
-D /var/cache/dnscache -N 10
Ostatné parametre, ktorých nie je málo sa venujú nastaveniu
jednotlivých parametrov v prípade nepoužívania konfiguračného
súboru, čo však nie je z pohľadu ich celkového počtu
efektívne, preto je vhodnejšie zostať pri používaní
konfigurácií.
4. Výstup
Teraz si zhruba priblížime výstup analýzy samotnej. Titulná
strana pozostáva z dvoch častí. Prvou je grafický sumár
prístupov za posledných 12 mesiacov s agregátnymi mesačnými
hodnotami ako napríklad:
Nasleduje vyhodnotenie údajov z tohto časového obdobia
priemermi a agregáciou s príslušnými linkami na jednotlivé
mesačné analýzy s celkovým sumárom.
Mesačné štatistiky zvoleného mesiaca na úvod prinášajú
informáciu sumárne za mesiac, jednotlivé priemery a maximálne
hodnoty za kratšie časové úseky s finálnym vyhodnotením
jednotlivých návratových kódov.
Nasleduje grafické stvárnenie mesačného priebehu z pohľadu
jednotlivých súborov a ich hitov, prehľad jednotlivých
samostatných návštev a objem prenesených dát.
Súčasťou je samozrejme aj graf rozloženia v časovom
prehľade v rozsahu jednotlivých hodín dňa, ktorý nám prináša
základnú informáciu o globále skupiny návštevníkov.
Z ďalších popri tabuľkovom stvárnení už graficky
znázornených údajov je k dispozícii tabuľka
najnavštevovanejších URL z hľadiska počtu zo stránky
štandardne vo vyhotovení prvých 30, čo je však možné
príslušným parametrom jednoducho zmeniť:
Rovnaké vyhodnotenie je k dispozícii aj z hľadiska
vytvoreného trafficu s vyhodnotením celkovej agregátnej
hodnoty vo zvolenom časovom období.
A nakoniec vyhodnotenie návštevnosti podľa jednotlivých
štátov v závislosti na resolvovaní IP adries. V prípade, že
chceme mať túto štatistiku k dispozícii je potrebné buď
vykonávať resolvovanie webalizerom samotným,
alebo pri tvorbe logov web serverom čisto pre informatívny
charakter vykonávať ich resolvovanie priamo pri ich tvorbe
pokiaľ to objem celkového trafficu povoľuje.
5. ZáverTýmto sme si priblížili druhý najpoužívanejší
balík na komplexnú analýzu logových súborov webserverov, v
ďalšej časti sa budeme venovať analýze logových súborov
proxyserverov.
Další části seriálu:
|