mirror of
https://github.com/Seldaek/monolog.git
synced 2025-08-02 11:20:31 +02:00
Add isHandling, fixes #53
This commit is contained in:
@@ -1,3 +1,10 @@
|
|||||||
|
* 1.0.3 (2012--)
|
||||||
|
|
||||||
|
Changes:
|
||||||
|
|
||||||
|
* Added Monolog\Logger::isHandling() to check if a handler will
|
||||||
|
handle the given log level
|
||||||
|
|
||||||
* 1.0.2 (2011-10-24)
|
* 1.0.2 (2011-10-24)
|
||||||
|
|
||||||
Changes:
|
Changes:
|
||||||
|
@@ -278,6 +278,33 @@ class Logger
|
|||||||
return self::$levels[$level];
|
return self::$levels[$level];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks whether the Logger as a handler that listens on the given level
|
||||||
|
*
|
||||||
|
* @param integer $level
|
||||||
|
* @return Boolean
|
||||||
|
*/
|
||||||
|
public function isHandling($level)
|
||||||
|
{
|
||||||
|
$record = array(
|
||||||
|
'message' => '',
|
||||||
|
'context' => array(),
|
||||||
|
'level' => $level,
|
||||||
|
'level_name' => self::getLevelName($level),
|
||||||
|
'channel' => $this->name,
|
||||||
|
'datetime' => new \DateTime(),
|
||||||
|
'extra' => array(),
|
||||||
|
);
|
||||||
|
|
||||||
|
foreach ($this->handlers as $key => $handler) {
|
||||||
|
if ($handler->isHandling($record)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
// ZF Logger Compat
|
// ZF Logger Compat
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -289,6 +289,32 @@ class LoggerTest extends \PHPUnit_Framework_TestCase
|
|||||||
$logger->debug('test');
|
$logger->debug('test');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @covers Monolog\Logger::isHandling
|
||||||
|
*/
|
||||||
|
public function testIsHandling()
|
||||||
|
{
|
||||||
|
$logger = new Logger(__METHOD__);
|
||||||
|
|
||||||
|
$handler1 = $this->getMock('Monolog\Handler\HandlerInterface');
|
||||||
|
$handler1->expects($this->any())
|
||||||
|
->method('isHandling')
|
||||||
|
->will($this->returnValue(false))
|
||||||
|
;
|
||||||
|
|
||||||
|
$logger->pushHandler($handler1);
|
||||||
|
$this->assertFalse($logger->isHandling(Logger::DEBUG));
|
||||||
|
|
||||||
|
$handler2 = $this->getMock('Monolog\Handler\HandlerInterface');
|
||||||
|
$handler2->expects($this->any())
|
||||||
|
->method('isHandling')
|
||||||
|
->will($this->returnValue(true))
|
||||||
|
;
|
||||||
|
|
||||||
|
$logger->pushHandler($handler2);
|
||||||
|
$this->assertTrue($logger->isHandling(Logger::DEBUG));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @dataProvider logMethodProvider
|
* @dataProvider logMethodProvider
|
||||||
* @covers Monolog\Logger::addDebug
|
* @covers Monolog\Logger::addDebug
|
||||||
|
Reference in New Issue
Block a user