[MAPSERVER-USERS] FastCGI and trouble writing to the MS_ERRORFILE

Frank Warmerdam warmerdam at pobox.com
Wed Sep 10 14:35:50 EDT 2008


Daniel Morissette wrote:
> Pål Kristensen wrote:
>>
>> The strange thing is that if I stop the apache service, then suddenly the
>> fastCGI mapserv.exe writes a lot to the logfile before it close down.
>>
>> Is there a way to get mapserv.exe to write to the log file when 
>> initiated in
>> fastCGI mode?
>>
> 
> 
> Maybe a fflush() on the msDebug() output at the end of each FastCGI 
> request would help? For a test, please try adding one in the msDebug() 
> function in mapdebug.c and see if that helps:
> 
> --- mapdebug.c  (revision 7902)
> +++ mapdebug.c  (working copy)
> @@ -361,6 +361,7 @@
>          va_start(args, pszFormat);
>          msIO_vfprintf(debuginfo->fp, pszFormat, args);
>          va_end(args);
> +        fflush(debuginfo->fp);
>      }
>  #ifdef _WIN32
>      else if (debuginfo->debug_mode == MS_DEBUGMODE_WINDOWSDEBUG)
> 
> 
> If that helps then please file a ticket and assign to me (Trac id 
> dmorissette). The final solution will NOT be to call fflush() all the 
> time as in the above gtest, but to create a new msDebugFlush() function 
> that is called once at the end of each FastCGI request

Daniel / Pål,

It might also be necessary to modify the debug output code to always
try and seek to the end of file before writing.  If several long running
fastcgi processes have the same log file open and are writing to it, we
could have an issues of overwriting each others output.

Best regards,
-- 
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up   | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush    | Geospatial Programmer for Rent



More information about the mapserver-users mailing list