I'm trying to implement a FireBug logger using a plugin but I'm
getting some odd results. Here's a very simplified version to
illustrate the problem:
class Debug extends Zend_Controller_Plugin_Abstract
{
public function dispatchLoopStartup(Zend_Controller_Request_Abstract
$request)
{
$debugger = new Zend_Log(new Zend_Log_Writer_Firebug());
$debugger->log('Debug Step 1.', Zend_Log::INFO);
}
public function dispatchLoopShutdown()
{
$debugger = new Zend_Log(new Zend_Log_Writer_Firebug());
$debugger->log('Debug Step 2.', Zend_Log::INFO);
$this->_getMoreInfo();
$this->_getEvenMoreInfo();
}
private function _getMoreInfo()
{
$debugger = new Zend_Log(new Zend_Log_Writer_Firebug());
$debugger->log('More Info.', Zend_Log::INFO);
}
private function _getEvenMoreInfo()
{
$debugger = new Zend_Log(new Zend_Log_Writer_Firebug());
$debugger->log('Even More Info.', Zend_Log::INFO);
}
}
I usually use a class member instead of re-initializing the logger
each time but this is for the purpose of demonstration. If I register
this plugin with the front controller, everything works as expected. I
get 4 log messages in FireBug. If I comment out line 6, i.e.
"$debugger->log('Debug Step 1.', Zend_Log::INFO);", I don't get any
messages in FireBug. Does anyone know why this is happening?
Thanks.
PS I'm using Zend Framework 1.7.1.