Apache-ParseLog reviews

RSS | Module Info

Apache-ParseLog (1.02) *

The module didn't have the ability to do some key things I needed it to (use a very complex httpd.conf, or otherwise be able to directly specify the location of a custom log file; be able to parse only the tail end of the log file rather than the whole two year's worth).

I won't complain about free code, but as Peter mentioned, the author didn't seem to be very familiar with using all the features that Perl provides (customlogDefined()+customlog() is a poignant example... both functions could be replaced with a simple hash lookup).

Though here's a workaround for parsing a combined log from an arbitrary path if you poke inside $self:

$parselog->{customlog}{location}{combined} = '/path/to/the.log';
$parselog->{customlog}{nickname} = [qw[ combined ]];

For alternatives, see:
- Logfile::Access
- www.oreilly.com/catalog/perlwsmng/cha...
- the Regexp::Log:: set of modules
- HTTPD::Log::Filter
- AWStats' awstats.pl (search for "Start Update process"... the code isn't very modular though)
- www.fourmilab.ch/fourmilog/archives/2...

Apache-ParseLog (1.02) *

The documentation is extensive but unfortunately is missing some very important details like for example how to handle CustomLog's if you dont want to use the "parse a httpd.conf" interface.

The code quality probally speaks for it self. The config methods declaration of a list of variables and then using a set of variables named not quite the same is a minor issue. The getCustomLog method is recommended reading, quite a WTF.