Counter
Home

Applicazioni

Programmi

About Me

Download
Ricerca interna
Treni
.Org ?

Valid HTML 4.01!
Valid CSS!

PreWebalizer : preprocessore per Webalizer
 
Le informazioni contenute in questa pagina fanno riferimento alla versione WIN32 del mitico programma Webalizer.

La versione interessata e' disponibile all'indirizzo http://www.medasys-lille.com/webalizer/, mentre all'indirizzo http://www.webalizer.org potete trovare la versione originale.

Chi ha provato ad utilizzare intensamente questo programma avra' certamente notato che se si attiva la risoluzione dei nomi host il tempo di esecuzione aumenta spaventosamente fino a renderlo inutilizzabile nel caso di siti con traffico elevato.

Considerando che il tempo medio di risoluzione di un host e' di circa 5 secondi se il sito ha qualche milione di hits ogni giorno, 200/300 MByte di log e quindi 10000/20000 host unici, ci si rende subito conto che occorre qualche decine di ore prima di poter generare le statistiche di accesso. Se poi si devono elaborare i file di log di qualche centinaio di siti web la risoluzione dei nomi host e' improponibile.

Nella versione WIN32 anche se si imposta nel file di configurazione il numero di processi (DNSChildren) al valore massimo (100) il risultato non cambia in quanto tale versione e', imposto a livello di codice sorgente, a Thread unico.

Per come e' strutturato il codice sorgente di Webalizer non e' possibile apportare delle modifiche senza stravolgere il programma originale. Infatti la risoluzione del nome host avviene durante la lettura della singola riga di log. La soluzione dovrebbe procedere alla risoluzione dei nomi host solo dopo aver letto tutte le righe di log attivando il numero di Thread specificato nel file di configurazione.

Tuttavia, questa soluzione comporta la modifica del codice sorgente con successiva ricompilazione ogni volta che viene rilasciata una nuova versione.

Esiste una soluzione più semplice ed indolore. Webalizer memorizza i nomi di host gia' risolti in un file di testo denominato, in genere, dns_cache.db. La soluzione consiste quindi nel far pre-processare il file di log di interesse da un programma capace di generare il file di cache. In questo modo l'esecuzione di Webalizer sullo stesso file di log non ha bisogno di interrogare il DNS dato che i nomi host sono già risolti.

Questo programma e' appunto PreWebalizer

Utilizzo

PreWebalizer non richiede alcuna installazione, basta lanciarlo da riga di comando specificando due parametri che sono:

  • Il file di configurazione da utilizzare e che sara' poi utilizzato da Webalizer
  • Il file di log da processare

Esempio:

D:\WEB\STATS-CMD\PreWebalizer sample.conf ex020331.log

PreWebalizer utilizza i parametri specificati nel file di configurazione per generare il file di cache. Anche se il numero di processi consigliato da Webalizer e compreso tra 5 e 20 PreWebalizer e' in grado di attivare fino a 128 Thread. Di seguito riporto una tabella con i tempi impiegati a seconda del numero di Thread specificati. Il test e' stato effettuato su un server collegato direttamente al DNS con una rete a 100Mbit/sec.

Parametri di input
  Test 1 Test 2 Test 3
Config file Sample.conf Sample.conf Sample.conf
Input file ex020330.log ex020416.log ex020419.log
File Size 5,9 MByte 106,4 MByte 267.5 MByte
Input lines 31.777 562.466 1.396.854
DNS Cache file dns_cache.db dns_cache.db dns_cache.db
DNS TTL Valid 30 30 30
DNS TTL Error  7 7 7
Total Hosts 285 3.920 11.895
Cached Hosts 0 0 0
Added Hosts 285 3.920 11.895
Resolved Hosts 200 2.674 8.180
Risultati
DNS Children Elapsed Time(sec) Elapsed Time(sec) Elapsed Time(sec)
1 436 6.053 18087
2 211 3.023 9028
4 107 1.511 4508
8 55 750 2221
16 29 385 1144
32 22 206 592
64 22 118 353
128 22 73 201

 

PreWebalizer.jpg

 

Download

Per ottenere una copia del programma è necessario registrarsi. A seguito della registrazione riceverete all'indirizzo email specificato un codice che vi permetterà di scaricare tutti i programmi messi a disposizione

Se avete gia' ricevuto il codice potete effettuare il download al seguente Link: Download

 

Versione corrente 0.4.0.36 - 10/09/2003

Utenti Collegati:1

By: Carlo Paolo Sallustio   15.02.2008