Introduction
Every ISP needs a log file analysis program. One of the best is the
Webalizer, an open source product originally written in Perl
and rewritten in C soon thereafter. It can parse both Common Log Format and
Combined Log Format files at a blistering pace. One benchmark states
that On a 200Mhz pentium machine, over 10,000 records can be processed
in one second, with a 40 Megabyte file taking roughly 15 seconds (over
150,000 records). When one of my consulting clients approached me
looking for an open source log file analysis program to replace their
proprietary one, Webalizer was my top recommendation.
Webalizer, an open source product originally written in Perl
and rewritten in C soon thereafter. It can parse both Common Log Format and
Combined Log Format files at a blistering pace. One benchmark states
that On a 200Mhz pentium machine, over 10,000 records can be processed
in one second, with a 40 Megabyte file taking roughly 15 seconds (over
150,000 records). When one of my consulting clients approached me
looking for an open source log file analysis program to replace their
proprietary one, Webalizer was my top recommendation.
Getting Started:
Installing webalizer can be a daunting task because one quickly runs
into dependency problems. Webalizer requires the gd graphics library
which in turn relies upon the jpeg, png, and zlib compression libraries.
Further complicating the installation is that most of these libraries
eschew the standard ./configure, make, make install syntax that is
typical for most open source installations. I will, therefore, take a
few moments to sketch out the installation process.
into dependency problems. Webalizer requires the gd graphics library
which in turn relies upon the jpeg, png, and zlib compression libraries.
Further complicating the installation is that most of these libraries
eschew the standard ./configure, make, make install syntax that is
typical for most open source installations. I will, therefore, take a
few moments to sketch out the installation process.
It is recommended that every one of these libraries be downloaded and
extracted into a common directory from which each can be built and
installed. It is particularly important for the png and zlib libraries
to be extracted in the same top level directory prior to building and
installing them. The order of installation is important.
extracted into a common directory from which each can be built and
installed. It is particularly important for the png and zlib libraries
to be extracted in the same top level directory prior to building and
installing them. The order of installation is important.
First, download the jpeg library from http://www.ijg.org/, unzip and untar the
files and cd into the jpeg-6b directory.
files and cd into the jpeg-6b directory.
./configure make make install cd ..
Second, download zlib from http://www.info-zip.org/pub/infozip/zlib/.
gunzip zlib*.tar.gz tar -xvpf zlib-1.1.3.tar mv zlib-1.1.3 zlib cd zlib ./configure make make test make install cd ..
Third, download libpng from http://www.libpng.org/.
gunzip libpng*.tar.gz tar -xvpf libpng-1.0.10.tar mv libpng-1.0.10 libpng cd libpng
The png library has a number of makefiles in the scripts directory that
are specific to different architectures. In my case:
are specific to different architectures. In my case:
cp scripts/makefile.linux makefile make make test make install cd ..
You may, optionally, choose to download and install freetype fonts. It
is often difficult, however, to connect to the main sourceforge
site, but a list of mirrors can be found at: http://www.freetype.org/download.html.
is often difficult, however, to connect to the main sourceforge
site, but a list of mirrors can be found at: http://www.freetype.org/download.html.