Hm

I think I know the problem. Its because you first need to configure
the appenders and then the loggers. Otherwise the references are not
set. This is also true for property files in general in log4php. First
appenders, then loggers.

In your case - I am not sure if there is a workaround for this because
you configuration is mixed. You probably can try it out with putting
the rootLogger defintion on the bottom of your property file or
assigning the appender before calling configure(). i am not sure if it
helps.

There is already an issue in Jira which addresses this

Christian


2010/4/14 Miquel Canes <miquel.ca...@cast-info.es>:
> Hello,
> It doesn't work.
>
> Logger::configure(dirname(__FILE__) . '/../log4php.properties');
>
> $logger = Logger::getRootLogger();
>
> $appender = new LoggerAppenderFile("programmatically");
> $layout = new LoggerLayoutPattern("[%p] %t %c - %m%n");
>
> $appender->setLayout($layout);
> $appender->setFileName("programmatically.log");
> $appender->setAppend(true);
> $appender->setThreshold("ALL");
> $logger->addAppender($appender);
>
> echo $logger->isInfoEnabled() . "\n";
>
> $allappenders = $logger->getAllAppenders();
> foreach ($allappenders as $nappender){
>        echo $nappender->getName()."\n";
> }
>
> $logger->info("info text");
>
> With this code it write:
> 1
> stdout
> R
> programmatically
>
>
> I'm using a config file too and the file appender defined on it works.
>
> log4php.properties content:
>
> #R - Default Log file appender.
> log4php.rootLogger=all, stdout, R
>
> log4php.appender.stdout=LoggerAppenderConsole
> log4php.appender.stdout.layout=LoggerLayoutPattern
>
> # Pattern to output the caller's file name and line number.
> #log4php.appender.stdout.layout.ConversionPattern=[%p] %t %c - %m%n
>
> log4php.appender.R=LoggerAppenderRollingFile
> log4php.appender.R.File=testrollingappender.log
>
> log4php.appender.R.MaxFileSize=100KB
> # Keep one backup file
> log4php.appender.R.MaxBackupIndex=1
>
> log4php.appender.R.layout=LoggerLayoutPattern
> log4php.appender.R.layout.ConversionPattern=[%p] %t %c - %m%n
>
>
> Maybe, a programmatically appender cannot be added if a configure file is 
> used?
> But it does not make any sense.
>
> Thanks,
> Miquel
>
>
> On Wednesday 14 April 2010 16:23:59 Christian Grobmeier wrote:
>> Hello,
>>
>> whats returned if you do:
>>
>> echo $logger->isInfoEnabled();
>>
>> My guess is that info level is not enabled for the root logger
>>
>> Also you might need to set a threshhold for your appender:
>> $appender->setThreshold($threshhold);
>>
>> which is in fact a LoggerLevel. If you use ALL, you outputing all
>>
>> Pls let me know if that worked for you
>>
>> Christian
>>
>> 2010/4/13 Miquel Canes <miquel.ca...@cast-info.es>:
>> > Hello,
>> >
>> > I'm trying to add a file appender programmatically.
>> >
>> > I'm using this piece of code
>> >
>> > $logger = Logger::getRootLogger();
>> >
>> > $appender = new LoggerAppenderFile("programmatically");
>> > $layout = new LoggerLayoutPattern("[%p] %t %c - %m%n");
>> >
>> > $appender->setLayout($layout);
>> > $appender->setFileName("programmatically.log");
>> > $appender->setAppend(true);
>> > $logger->addAppender($appender);
>> >
>> > $allappenders = $logger->getAllAppenders();
>> > foreach ($allappenders as $nappender){
>> >        echo $nappender->getName()."\n";
>> > }
>> >
>> > $logger->info("info text");
>> >
>> >
>> >
>> > It show the new appender when he print all the appenders but it doesn't
>> > create the new log file.
>> >
>> > How can I add a new file appender to the logger?
>> >
>> > Thanks,
>> > Miquel
>> >
>> > *Advertencia legal: en virtud de lo establecido en la Ley Orgánica
>> > 15/1999 de Protección de Datos de Carácter Personal, le informamos de
>> > que los datos personales que pueda facilitarnos se incorporaran a un
>> > fichero automatizado titularidad de CAST INFO, S.A. con la finalidad de
>> > gestionar la relación negocial que nos vincula. Podrá revocar su
>> > consentimiento al tratamiento de los datos, así como ejercer sus
>> > derechos de acceso, rectificación, cancelación u oposición dirigiéndose
>> > por escrito a CAST INFO domiciliada en C/ Tuset 23, 1º -- 08006
>> > Barcelona, o a la dirección de correo electrónico l...@cast-info.es.
>> >
>> > Este mensaje y los ficheros anexos que pueda contener son confidenciales,
>> > pueden contener información sometida a secreto profesional y se dirige
>> > exclusivamente a su destinatario. Si ha recibido este mensaje por error
>> > o tiene conocimiento del mismo por cualquier motivo, le rogamos que nos
>> > lo comunique inmediatamente por este mismo medio y se abstenga de
>> > utilizarlo, reproducirlo, alterarlo, archivarlo o comunicarlo a
>> > terceros. El emisor no se responsabiliza de posibles perjuicios
>> > derivados de la captura, incorporaciones de virus o cualesquiera otras
>> > manipulaciones efectuadas por terceros.
>> >
>> > Antes de imprimir este e-mail piense bien si es necesario hacerlo.
>>
>> *Advertencia legal: en virtud de lo establecido en la Ley Org�nica 15/1999
>> de Protecci�n de Datos de Car�cter Personal, le informamos de que los
>> datos personales que pueda facilitarnos se incorporaran a un fichero
>> automatizado titularidad de CAST INFO, S.A. con la finalidad de gestionar
>> la relaci�n negocial que nos vincula. Podr� revocar su consentimiento al
>> tratamiento de los datos, as� como ejercer sus derechos de acceso,
>> rectificaci�n, cancelaci�n u oposici�n dirigi�ndose por escrito a CAST
>> INFO domiciliada en C/ Tuset 23, 1� -- 08006 Barcelona, o a la direcci�n
>> de correo electr�nico l...@cast-info.es.
>>
>> Este mensaje y los ficheros anexos que pueda contener son confidenciales,
>> pueden contener informaci�n sometida a secreto profesional y se dirige
>> exclusivamente a su destinatario. Si ha recibido este mensaje por error o
>> tiene conocimiento del mismo por cualquier motivo, le rogamos que nos lo
>> comunique inmediatamente por este mismo medio y se abstenga de utilizarlo,
>> reproducirlo, alterarlo, archivarlo o comunicarlo a terceros. El emisor no
>> se responsabiliza de posibles perjuicios derivados de la captura,
>> incorporaciones de virus o cualesquiera otras manipulaciones efectuadas
>> por terceros.
>>
>> Antes de imprimir este e-mail piense bien si es necesario hacerlo.
>

Reply via email to