diff --git a/src/Monolog/Formatter/NormalizerFormatter.php b/src/Monolog/Formatter/NormalizerFormatter.php index 654e7901..81b9bb83 100644 --- a/src/Monolog/Formatter/NormalizerFormatter.php +++ b/src/Monolog/Formatter/NormalizerFormatter.php @@ -94,7 +94,12 @@ class NormalizerFormatter implements FormatterInterface return $this->normalizeException($data); } - return sprintf("[object] (%s: %s)", get_class($data), $this->toJson($data, true)); + $objData = $this->toJson($data, true);; + if(!$objData and method_exists($data, '__toString')) { + $objData = $data; + } + + return sprintf("[object] (%s: %s)", get_class($data), $objData); } if (is_resource($data)) { diff --git a/tests/Monolog/Formatter/NormalizerFormatterTest.php b/tests/Monolog/Formatter/NormalizerFormatterTest.php index 75dae895..3ab77a81 100644 --- a/tests/Monolog/Formatter/NormalizerFormatterTest.php +++ b/tests/Monolog/Formatter/NormalizerFormatterTest.php @@ -207,7 +207,7 @@ class NormalizerFormatterTest extends \PHPUnit_Framework_TestCase ); if (version_compare(PHP_VERSION, '5.5.0', '>=')) { - $pattern = '%"wrappedResource":"\[object\] \(Monolog\\\\\\\\Formatter\\\\\\\\TestStreamFoo: \)"%'; + $pattern = '%"wrappedResource":"\[object\] \(Monolog\\\\\\\\Formatter\\\\\\\\TestStreamFoo: BAR - test_resource\)"%'; } else { $pattern = '%\\\\"resource\\\\":null%'; }