Skip to content

Releases: Seldaek/monolog

1.12.0

29 Dec 21:30
Compare
Choose a tag to compare
  • Break: HandlerInterface::isHandling now receives a partial record containing only a level key. This was always the intent and does not break any Monolog handler but is strictly speaking a BC break and you should check if you relied on any other field in your own handlers.
  • Added PsrHandler to forward records to another PSR-3 logger
  • Added SamplingHandler to wrap around a handler and include only every Nth record
  • Added MongoDBFormatter to support better storage with MongoDBHandler (it must be enabled manually for now)
  • Added exception codes in the output of most formatters
  • Added LineFormatter::includeStacktraces to enable exception stack traces in logs (uses more than one line)
  • Added $useShortAttachment to SlackHandler to minify attachment size and $includeExtra to append extra data
  • Added $host to HipChatHandler for users of private instances
  • Added $transactionName to NewRelicHandler and support for a transaction_name context value
  • Fixed MandrillHandler to avoid outputing API call responses
  • Fixed some non-standard behaviors in SyslogUdpHandler

1.11.0

30 Sep 13:32
Compare
Choose a tag to compare
  • Break: The NewRelicHandler extra and context data are now prefixed with extra_ and context_ to avoid clashes. Watch out if you have scripts reading those from the API and rely on names
  • Added WhatFailureGroupHandler to suppress any exception coming from the wrapped handlers and avoid chain failures if a logging service fails
  • Added MandrillHandler to send emails via the Mandrillapp.com API
  • Added SlackHandler to log records to a Slack.com account
  • Added FleepHookHandler to log records to a Fleep.io account
  • Added LogglyHandler::addTag to allow adding tags to an existing handler
  • Added $ignoreEmptyContextAndExtra to LineFormatter to avoid empty [] at the end
  • Added $useLocking to StreamHandler and RotatingFileHandler to enable flock() while writing
  • Added support for PhpAmqpLib in the AmqpHandler
  • Added FingersCrossedHandler::clear and BufferHandler::clear to reset them between batches in long running jobs
  • Added support for adding extra fields from $_SERVER in the WebProcessor
  • Fixed support for non-string values in PrsLogMessageProcessor
  • Fixed SwiftMailer messages being sent with the wrong date in long running scripts
  • Fixed minor PHP 5.6 compatibility issues
  • Fixed BufferHandler::close being called twice

1.10.0

04 Jun 16:35
Compare
Choose a tag to compare
  • Added Logger::getHandlers() and Logger::getProcessors() methods
  • Added $passthruLevel argument to FingersCrossedHandler to let it always pass some records through even if the trigger level is not reached
  • Added support for extra data in NewRelicHandler
  • Added $expandNewlines flag to the ErrorLogHandler to create multiple log entries when a message has multiple lines

1.9.1

24 Apr 13:29
Compare
Choose a tag to compare
  • Fixed regression in RotatingFileHandler file permissions
  • Fixed initialization of the BufferHandler to make sure it gets flushed after receiving records
  • Fixed ChromePHPHandler and FirePHPHandler's activation strategies to be more conservative

1.9.0

20 Apr 16:44
Compare
Choose a tag to compare
  • Added LogEntriesHandler to send logs to a LogEntries account
  • Added $filePermissions to tweak file mode on StreamHandler and RotatingFileHandler
  • Added $useFormatting flag to MemoryProcessor to make it send raw data in bytes
  • Added support for table formatting in FirePHPHandler via the table context key
  • Added a TagProcessor to add tags to records, and support for tags in RavenHandler
  • Added $appendNewline flag to the JsonFormatter to enable using it when logging to files
  • Added sound support to the PushoverHandler
  • Fixed multi-threading support in StreamHandler
  • Fixed empty headers issue when ChromePHPHandler received no records
  • Fixed default format of the ErrorLogHandler

1.8.0

23 Mar 19:57
Compare
Choose a tag to compare
  • Break: the LineFormatter now strips newlines by default because this was a bug, set $allowInlineLineBreaks to true if you need them
  • Added BrowserConsoleHandler to send logs to any browser's console via console.log() injection in the output
  • Added FilterHandler to filter records and only allow those of a given list of levels through to the wrapped handler
  • Added FlowdockHandler to send logs to a Flowdock account
  • Added RollbarHandler to send logs to a Rollbar account
  • Added HtmlFormatter to send prettier log emails with colors for each log level
  • Added GitProcessor to add the current branch/commit to extra record data
  • Added a Monolog\Registry class to allow easier global access to pre-configured loggers
  • Added support for the new official graylog2/gelf-php lib for GelfHandler, upgrade if you can by replacing the mlehner/gelf-php requirement
  • Added support for HHVM
  • Added support for Loggly batch uploads
  • Added support for tweaking the content type and encoding in NativeMailerHandler
  • Added $skipClassesPartials to tweak the ignored classes in the IntrospectionProcessor
  • Fixed batch request support in GelfHandler

1.7.0

14 Nov 19:50
Compare
Choose a tag to compare
  • Added ElasticSearchHandler to send logs to an Elastic Search server
  • Added DynamoDbHandler and ScalarFormatter to send logs to Amazon's Dynamo DB
  • Added SyslogUdpHandler to send logs to a remote syslogd server
  • Added LogglyHandler to send logs to a Loggly account
  • Added $level to IntrospectionProcessor so it only adds backtraces when needed
  • Added $version to LogstashFormatter to allow using the new v1 Logstash format
  • Added $appName to NewRelicHandler
  • Added configuration of Pushover notification retries/expiry
  • Added $maxColumnWidth to NativeMailerHandler to change the 70 chars default
  • Added chainability to most setters for all handlers
  • Fixed RavenHandler batch processing so it takes the message from the record with highest priority
  • Fixed HipChatHandler batch processing so it sends all messages at once
  • Fixed issues with eAccelerator
  • Fixed and improved many small things

1.6.0

28 Jul 22:41
Compare
Choose a tag to compare
  • Added HipChatHandler to send logs to a HipChat chat room
  • Added ErrorLogHandler to send logs to PHP's error_log function
  • Added NewRelicHandler to send logs to NewRelic's service
  • Added Monolog\ErrorHandler helper class to register a Logger as exception/error/fatal handler
  • Added ChannelLevelActivationStrategy for the FingersCrossedHandler to customize levels by channel
  • Added stack traces output when normalizing exceptions (json output & co)
  • Added Monolog\Logger::API constant (currently 1)
  • Added support for ChromePHP's v4.0 extension
  • Added support for message priorities in PushoverHandler, see $highPriorityLevel and $emergencyLevel
  • Added support for sending messages to multiple users at once with the PushoverHandler
  • Fixed RavenHandler's support for batch sending of messages (when behind a Buffer or FingersCrossedHandler)
  • Fixed normalization of Traversables with very large data sets, only the first 1000 items are shown now
  • Fixed issue in RotatingFileHandler when an open_basedir restriction is active
  • Fixed minor issues in RavenHandler and bumped the API to Raven 0.5.0
  • Fixed SyslogHandler issue when many were used concurrently with different facilities

1.5.0

28 Jul 22:11
Compare
Choose a tag to compare
  • Added ProcessIdProcessor to inject the PID in log records
  • Added UidProcessor to inject a unique identifier to all log records of one request/run
  • Added support for previous exceptions in the LineFormatter exception serialization
  • Added Monolog\Logger::getLevels() to get all available levels
  • Fixed ChromePHPHandler so it avoids sending headers larger than Chrome can handle