[
https://issues.apache.org/jira/browse/LOG4PHP-71?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12746061#action_12746061
]
Christian Grobmeier commented on LOG4PHP-71:
--------------------------------------------
I wrote a benchmark to test whats is the best option for nonblocking writes.
See:
http://blog.grobmeier.de/2009/08/21/performance-ofnonblocking-write-to-files-via-php.html
Solution is to use flock to unlock the file after writing, and flock to lock it
again before. Opeining/Closing the file is very bad for performance.
I will create a patch for this and include it in the trunk (or somebody else
does :-))
Thanks for bringing this up!
> Using LoggerAppenderFile logging to the log file in one Apache session blocks
> every other Apache session that tries to write to the file until the original
> request has been processed
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LOG4PHP-71
> URL: https://issues.apache.org/jira/browse/LOG4PHP-71
> Project: Log4php
> Issue Type: Bug
> Components: Code
> Affects Versions: 2.0
> Environment: MAMP, LAMP, WAMP
> Reporter: Chris Williams
> Fix For: 2.0
>
>
> Note: We probably have an older version of log4php than what's currently
> available.
> We were experiencing problems in our application where one session is waiting
> on another session. This effectively single threads our Apache requests for
> different clients. We narrowed this down to our use of log4php.
> The code below will open a file for writing but will not close it until the
> request has been handled:
> $logger = LoggerManager::getLogger('logger');
> $logger->debug($message);
> We added the following call and are no longer experiencing the file blocking
> since it looks like this call closes the file:
> LoggerManager::shutdown();
> Is this the expected behavior? Should the log file be kept open between usage?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.