Hi,

I am in the process of developing an interface to mod_log_config. It can do 2 
things:

* make CustomLog call perl handlers
* work as a log drain or log file

Log Drain
=========

CustomLog "@perl: My::Handler" "%I%O"

Assuming that My::Handler is defined it will receive 4 parameters here, the 
request object, the input bytes according to mod_logio (the %I format), the 
output bytes according to mod_logio (%O) and a newline string. Other 
information can of course be specified in the format string.

Make it call perl handlers
==========================

CustomLog log/file.log "%r %{My::Fmt}^ ..."

It allocates the ^ format character and then calls My::Fmt with the request 
object as the only parameter. The <> format modifiers can be used to specify 
if the initial request is meant or the final one.

My::Fmt is expected to return a string that is then inserted in place of the 
format specification.


Now, I have found a bug in apache that has been fixed somewhere between 2.2.9 
and 2.2.15. I have also figured out a workaround. But I expect it to lead to 
segfaults when the server is restarted by means of SIGHUP or SIGUSR1 and in 
the old config BufferedLogs were on while in the new one they are off.

The reason for this mail is that I ask for help to figure out which apache 
version has fixed the bug. So, if you have a httpd between 2.2.9 and 2.2.15 
could you please try out the module.

perl Makefile.PL
make test

If the test hangs in starting up the web server and the only lines in t/logs 
error_log look similar to these:

$ cat t/logs/error_log 
V=2002009.
V=2002009.
buggy.

where V=... is the apache version then the bug is present.

If you like you can then go to line 169 in ModLogConfig.xs and change the 
2002009 to your version+1 and retry.

The current state can be downloaded under:

  http://foertsch.name/Apache2-ModLogConfig-0.01.tar.gz


BTW, if you feel urge to comment the idea or the implementation please don't 
hesitate.

Thanks,
Torsten Förtsch

-- 
Need professional modperl support? Hire me! (http://foertsch.name)

Like fantasy? http://kabatinte.net

Reply via email to