On Tue, Oct 29, 2013 at 5:30 AM, Jan Kaluža <jkal...@redhat.com> wrote:
> On 10/25/2013 03:37 PM, Jeff Trawick wrote: > >> I'm hoping to get back to this discussion "soon." I also have a 2.4.x >> patch I've played with that is roughly in sync with trunk (though syslog >> logging support isn't a provider in the 2.4.x version). >> > > Does your patch fix stderr logging? I wanted to write proof of concept > logger as described by Rüdiger below, but I didn't manage to find a time > for it recently :(. If you have working solution for that, I wouldn't waste > my time :). > > No, I just have a backport to 2.4.x with accommodation for syslog. > Thanks, > Jan Kaluza > > >> On Thu, Oct 17, 2013 at 8:33 AM, Plüm, Rüdiger, Vodafone Group >> <ruediger.pl...@vodafone.com >> <mailto:ruediger.pluem@**vodafone.com<ruediger.pl...@vodafone.com>>> >> wrote: >> >> >> >> > -----Original Message----- >> > From: Jan Kaluža >> > Sent: Donnerstag, 17. Oktober 2013 13:21 >> > To: dev@httpd.apache.org <mailto: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 >> >> >> >> >> -- >> Born in Roswell... married an alien... >> http://emptyhammock.com/ >> > > -- Born in Roswell... married an alien... http://emptyhammock.com/