You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4php-dev@logging.apache.org by "Christian Grobmeier (JIRA)" <ji...@apache.org> on 2011/05/20 09:46:47 UTC

[jira] [Updated] (LOG4PHP-130) LoggerAppenderFile creates empty log files

     [ https://issues.apache.org/jira/browse/LOG4PHP-130?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christian Grobmeier updated LOG4PHP-130:
----------------------------------------

    Fix Version/s:     (was: 2.1)
                   2.2

> LoggerAppenderFile creates empty log files
> ------------------------------------------
>
>                 Key: LOG4PHP-130
>                 URL: https://issues.apache.org/jira/browse/LOG4PHP-130
>             Project: Log4php
>          Issue Type: Bug
>          Components: Code
>    Affects Versions: 2.0
>         Environment: -
>            Reporter: igor nadj
>            Priority: Minor
>             Fix For: 2.2
>
>
> My configuration uses LoggerAppenderDailyFile with a date pattern which includes seconds, the intent is to create a new log file for each error. The issue I've come across is that at each request it opens the file, then closes it (writing out the footer) without actually logging any error messages. My solution is to move the file-creation code to the time when the first log event is handled.
> My pseudo-patch submission: 
> In LoggerAppenderFile.php
> Change 
> public function activateOptions(){ ... }
> to a stub
> public function activateOptions(){ }
> moving the contents of activateOptions to a new function
> protected function open(){
>  if($this->fp) return;
>  <code from activateOptions here>
> }
> where the new function is called at the start of append()
> public function append(LoggerLoggingEvent $event) {
>  if(!$this->fp) $this->open();
>  <rest of function>
> }

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira