mirror of
https://github.com/Seldaek/monolog.git
synced 2025-08-01 19:00:20 +02:00
Fix bug when messages contain colons
This commit is contained in:
@@ -117,7 +117,7 @@ class DeduplicationHandler extends BufferHandler
|
|||||||
$line = $record['level_name'] . ':' . $record['message'];
|
$line = $record['level_name'] . ':' . $record['message'];
|
||||||
|
|
||||||
for ($i = count($store) - 1; $i >= 0; $i--) {
|
for ($i = count($store) - 1; $i >= 0; $i--) {
|
||||||
list($timestamp, $level, $message) = explode(':', $store[$i]);
|
list($timestamp, $level, $message) = explode(':', $store[$i], 3);
|
||||||
|
|
||||||
if ($level === $record['level_name'] && $message === $record['message'] && $timestamp > $timestampValidity) {
|
if ($level === $record['level_name'] && $message === $record['message'] && $timestamp > $timestampValidity) {
|
||||||
return true;
|
return true;
|
||||||
|
@@ -45,7 +45,7 @@ class DeduplicationHandlerTest extends TestCase
|
|||||||
@unlink(sys_get_temp_dir().'/monolog_dedup.log');
|
@unlink(sys_get_temp_dir().'/monolog_dedup.log');
|
||||||
$handler = new DeduplicationHandler($test, sys_get_temp_dir().'/monolog_dedup.log', 0);
|
$handler = new DeduplicationHandler($test, sys_get_temp_dir().'/monolog_dedup.log', 0);
|
||||||
|
|
||||||
$handler->handle($this->getRecord(Logger::ERROR));
|
$handler->handle($this->getRecord(Logger::ERROR, 'Foo:bar'));
|
||||||
$handler->handle($this->getRecord(Logger::CRITICAL));
|
$handler->handle($this->getRecord(Logger::CRITICAL));
|
||||||
|
|
||||||
$handler->flush();
|
$handler->flush();
|
||||||
@@ -66,7 +66,7 @@ class DeduplicationHandlerTest extends TestCase
|
|||||||
$test = new TestHandler();
|
$test = new TestHandler();
|
||||||
$handler = new DeduplicationHandler($test, sys_get_temp_dir().'/monolog_dedup.log', 0);
|
$handler = new DeduplicationHandler($test, sys_get_temp_dir().'/monolog_dedup.log', 0);
|
||||||
|
|
||||||
$handler->handle($this->getRecord(Logger::ERROR));
|
$handler->handle($this->getRecord(Logger::ERROR, 'Foo:bar'));
|
||||||
$handler->handle($this->getRecord(Logger::CRITICAL));
|
$handler->handle($this->getRecord(Logger::CRITICAL));
|
||||||
|
|
||||||
$handler->flush();
|
$handler->flush();
|
||||||
|
Reference in New Issue
Block a user