All Versions
79
Latest Version
Avg Release Cycle
141 days
Latest Release
162 days ago
Changelog History
Page 1
Changelog History
Page 1
-
v3.10.0 Changes
January 02, 2026- โ Added automatic directory cleanup in RotatingFileHandler (#2000)
- โ Added timezone-aware file rotation to RotatingFileHandler (#1982)
- โ Added support for mongodb/mongodb 2.0+ (#1998)
- โ Added NoDiscard attribute to TestHandler methods to ensure the result is used (#2013)
- Fixed JsonFormatter crashing if __toString throws while normalizing data (#1968)
- ๐ Fixed PHP 8.5 deprecation warnings (#1997, #2009)
- ๐ Fixed DeduplicatingHandler collecting duplicate logs if the file cannot be locked (2e97231)
- ๐ Fixed GelfMessageFormatter to use integers instead of bool for gelf 1.1 support (#1973)
- ๐ Fixed empty stack traces being output anyway (#1979)
- ๐ Fixed StreamHandler not reopening the file if the inode changed (#1963)
- ๐ Fixed TelegramBotHandler sending empty messages (#1992)
- ๐ Fixed file paths in stack traces containing backslashes on windows, always using / now to unify logs (#1980)
- ๐ Fixed RotatingFileHandler unlink errors not being suppressed correctly (#1999)
Full Changelog : 3.9.0...3.10.0
-
v3.9.0 Changes
March 24, 2025- โ BC Warning: Fixed SendGridHandler to use the V3 API as V2 is now shut down, but this requires a new API key (#1952)
- โ Deprecated Monolog\Test\TestCase in favor of Monolog\Test\MonologTestCase (#1953)
- โ Added extension point for NativeMailerHandler::mail (#1948)
- โ Added setHandler method to BufferHandler to modify the nested handler at runtime (#1946)
- ๐ Fixed date format in ElasticsearchFormatter to use +00:00 vs +0000 tz identifiers (#1942)
- ๐ Fixed GelfMessageFormatter handling numeric context/extra keys (#1932)
Full Changelog : 3.8.1...3.9.0
-
v3.8.1 Changes
December 05, 2024- ๐ Deprecated Monolog\DateTimeImmutable in favor of Monolog\JsonSerializableDateTimeImmutable (#1928)
- ๐ Fixed gelf keys not being valid when context/extra data keys have spaces in them (#1927)
- ๐ Fixed empty lines appearing in the stack traces when a custom formatter returned null (#1925)
Full Changelog : 3.8.0...3.8.1
-
v3.8.0 Changes
November 12, 2024- โ Added
$fileOpenModeparam toStreamHandlerto define a custom fopen mode to open the log file (#1913) - ๐ Fixed PHP 8.4 deprecation notices (#1903)
- โ Added ability to extend/override
IntrospectionProcessor(#1899) - โ Added
$timeoutparam toProcessHandlerto configure the stream_select() timeout to avoid blocking too long (default is 1.0 sec) (#1916) - ๐ Fixed JsonFormatter batch handling to normalize records individually to make sure they look the same as if they were handled one by one - this leads to
JsonFormatter::normalizeRecordnow possibly returningstdClassinstances instead of[]for empty context/extra data which may cause issues if you extend normalizeRecord, see #1906 (comment) (#1906) - ๐ Fixed
StreamHandlerhandling of write failures so that it now closes/reopens the stream and retries the write once before failing (#1882) - ๐ Fixed
StreamHandlererror handler causing issues if a stream handler triggers an error (#1866) - ๐ Fixed
StreamHandler::resetnot closing the stream, so that it would fail to write in some cases with long running processes (#1862) - ๐ Fixed
RotatingFileHandlerissue where rotation does not happen in some long running processes (#1905) - ๐ Fixed
JsonFormatterhandling of incomplete classes (#1834) - ๐ Fixed
RotatingFileHandlerbug where rotation could sometimes not happen correctly (#1905)
Full Changelog : 3.7.0...3.8.0
- โ Added
-
v3.7.0 Changes
June 28, 2024- โ Added
NormalizerFormatter->setBasePath(...)(andJsonFormatterby extension) that allows removing the project's path from the stack trace output (47e301d) - ๐ Fixed JsonFormatter handling of incomplete classes (#1834)
- ๐ Fixed private error handlers causing problems with custom StreamHandler implementations (#1866)
Full Changelog : 3.6.0...3.7.0
- โ Added
-
v3.6.0 Changes
April 12, 2024- โ Added
LineFormatter->setBasePath(...)that allows removing the project's path from the stack trace output (#1873) - โ Added
$includeExtraoption inPsrHandlerto also use extra data to replace placeholder values in the message (#1852) - โ Added ability to customize what is a duplicated message by extending the
DeduplicationHandler(#1879) - โ Added handling for using
GelfMessageFormattertogether with theAmqpHandler(#1869) - โ Added ability to extend
GoogleCloudLoggingFormatter(#1859) - ๐ Fixed
__toStringfailures in context data crashing the normalization process (#1868) - ๐ Fixed PHP 8.4 deprecation warnings (#1874)
Full Changelog : 3.5.0...3.6.0
- โ Added
-
v3.5.0 Changes
October 27, 2023- โ Added ability to indent stack traces in LineFormatter via e.g.
indentStacktraces(' ')(#1835) - โ Added ability to configure a max level name length in LineFormatter via e.g.
setMaxLevelNameLength(3)(#1850) - โ Added support for indexed arrays (i.e.
[]and not{}arrays once json serialized) containing inline linebreaks in LineFormatter (#1818) - โ Added
WithMonologChannelattribute for integrators to use to configure autowiring (#1847) - ๐ Fixed log record
extradata leaking between handlers that have handler-specific processors set (#1819) - ๐ Fixed LogglyHandler issue with record level filtering (#1841)
- ๐ Fixed display_errors parsing in ErrorHandler which did not support string values (#1804)
- ๐ Fixed bug where the previous error handler would not be restored in some cases where StreamHandler fails (#1815)
- ๐ Fixed normalization error when normalizing incomplete classes (#1833)
Full Changelog : 3.4.0...3.5.0
- โ Added ability to indent stack traces in LineFormatter via e.g.
-
v3.2.0 Changes
July 24, 2022- Deprecated
CubeHandlerandPHPConsoleHandleras both projects are abandoned and those should not be used anymore (#1734) - Marked
Logger@finalas it should not be extended, prefer composition or talk to us if you are missing something - Added RFC 5424 level (
7to0) support toLogger::logandLogger::addRecordto increase interoperability (#1723) - Added
SyslogFormatterto output syslog-like files which can be consumed by tools like lnav (#1689) - Added support for
__toStringfor objects which are not json serializable inJsonFormatter(#1733) - Added
GoogleCloudLoggingFormatter(#1719) - Added support for Predis 2.x (#1732)
- Added
AmqpHandler->setExtraAttributesto allow configuring attributes when using an AMQPExchange (#1724) - Fixed serialization/unserialization of handlers to make sure private properties are included (#1727)
- Fixed allowInlineLineBreaks in LineFormatter causing issues with windows paths containing
\nor\rsequences (#1720) - Fixed max normalization depth not being taken into account when formatting exceptions with a deep chain of previous exceptions (#1726)
- Fixed PHP 8.2 deprecation warnings (#1722)
- Fixed rare race condition or filesystem issue where StreamHandler is unable to create the directory the log should go into yet it exists already (#1678)
- Deprecated
-
v3.1.0 Changes
June 09, 2022- Added
$datetimeparameter toLogger::addRecordas low level API to allow logging into the past or future (#1682) - Added
Logger::useLoggingLoopDetectionto allow disabling cyclic logging detection in concurrent frameworks (#1681) - Fixed handling of fatal errors if callPrevious is disabled in ErrorHandler (#1670)
- Fixed interop issue by removing the need for a return type in ProcessorInterface (#1680)
- Marked the reusable
Monolog\Test\TestCaseclass as@internalto make sure PHPStorm does not show it above PHPUnit, you may still use it to test your own handlers/etc though (#1677) - Fixed RotatingFileHandler issue when the date format contained slashes (#1671)
- Added
-
v3.0.0 Changes
May 10, 2022๐ Changes from RC1
- The
Monolog\LevelNameenum does not exist anymore, useMonolog\Level->getName()instead.
- The