At 09:59 AM 6/18/2003, Juan Rivera wrote: >The current nt_eventlog implementation has the hardcoded "Apache Service" as the >event log application name. This can be problematic if you have multiple instances of >Apache running on the same box. > >To fix this, I made midifications on two files: > >The service.c.patch simply adds the display name used during -k install into the >actual service command line.
This part of the patch isn't acceptable because; >The service command like would be: > >Apache2.exe -k runservice -n "web server 1" this requirement above breaks exiting installed services, which is not good, IMHO. >This is important because the display_name variable will set when the service is >executed. This variable is used by the nt_eventlog.c I believe we can go a little further to assure that is filled in or retrieved as soon as it is needed. Let me look for the underlying bug. >The nt_eventlog.c patch replaces the hard-coded registry path >SYSTEM\\CurrentControlSet\\Services\\EventLog\\Application\\Apache Service > >with > >SYSTEM\\CurrentControlSet\\Services\\EventLog\\Application\\ + display_name > >Now your messages will be loged with the right application name. So you can identify >which service actually generated the error. You must also register the event provider, which I will verify in your patch or code up if it's missing before I commit. I was originally hesitant to waste the additional space to create event loggers for each copy of Apache. You've sold me, and I understand your concern about trying to review an event log of many active instances of Apache. Most of my httpd time has been stuck in ssl issues, I hope now to dig out and get back to your patch and port the Win98/ME support from 1.3 as well. Thanks for all of your efforts, Juan! Bill