httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Plüm, Rüdiger, Vodafone Group <ruediger.pl...@vodafone.com>
Subject RE: error log providers, multiple vhosts, mod_syslog
Date Thu, 17 Oct 2013 12:33:50 GMT


> -----Original Message-----
> From: Jan Kaluža 
> Sent: Donnerstag, 17. Oktober 2013 13:21
> To: dev@httpd.apache.org
> Subject: Re: error log providers, multiple vhosts, mod_syslog
> 
> There's another problem with log providers and vhosts and I think I have
> no idea how to fix it without doing dirty hacks...
> 
> The problem is with ap_open_logs function, which does following:
> 
> 1. Main server log is opened (open_error_log()). If this log uses error
> log provider, s_main->error_log is set to NULL.
> 
> 2. When there is no s_main->error_log, stderr is redirected to /dev/null.

Hmm. This points out another issue when using an error log provider for the main server log:
We lose everything that the server or other programs like CGI-scripts write to the stderr
FD as it
is simply written to /dev/null. Don't we need to have a separate process in this case that
like a piped logger reads from the reading end of the "stderr pipe" and writes it
via ap_server_conf->errorlog_provider->writer to the log?

> 
> 3. Error logs for vhosts are opened (another open_error_log()). If there
> is some problem when opening these logs, any ap_log_error() call is sent
> to /dev/null.

Wouldn't it try to call s->errorlog_provider->writer in line 1196 and Segfault if s->errorlog_provider
is NULL because of some bad "classic" configuration that simply failed?

Regards

Rüdiger

Mime
View raw message