- Fix: Support for SSL with the TCP device without an SSL context in Ruby 2.4+. #144
- Allow user configuration of the logger class. #129
- Fix: Allow type to be a string for multi_logger and syslog. #131
- Fix: Cancelled events are being logged. #133
- Fix: Expose method to reset logger state. #138
- Use specific AWS SDK gems. #136
- Adds support for using the default AWS credential provider chain. #141
- Skip message truncating when there is no message field. #130
- Drops support for Rails 3.2, MRI Ruby < 2.2, and JRuby 1.7, since these have been EOL'ed.
- Adds support for customizing events on a per-logger level. #113
- Fixes logging of a hash with symbol keys. #116
- Adds support for AWS Firehose. #121
- Adds support for SSL host verification to the TCP device. #114
- Fixes
NoMethodError
whennil
tags are used in tagged logging. #123
- Fixes compatibility with ActiveJob. #112
- Adds support for writing to Amazon Kinesis. #111
- Support for merging top level configuration in MultiLogger and MultiDelegator. #108
- Fixes missing require for URI #107
- Adds support for logging debug/error information for the connectable device's buffer. #102
- Fixes compatibility with
ActiveRecord::SessionStore
. #96
- Flush buffered messages when exiting. #92
- Fixes usage of ActiveSupport without Rails. #90
This release removes the dependency on stud
and vendors in a forked version
of Stud::Buffer
. This improves the buffering behavior of LogStashLogger by
flushing all log messages in a background thread by default. This eliminates
blocking behavior and exceptions bubbling up to the main process.
- Fixes
Attempt to unlock a mutex which is not locked (ThreadError)
. #88
- Support for logger silencing. #87
- Fixes Rails 5 support. #86
- Fixes support for tagged logging in MultiLogger.
This release is focused on improving the reliability of LogStashLogger. Connectable log devices are now less likely to block or raise an exception, which avoids impacting the operation of the program. There was also a fix to avoid leaking connections.
- Allow log messages to be dropped. #81
- Provide
max_message_size
option. #80 - Unify error logging. #82
- Drop message when there is an unrecoverable error. #83
- Safely close connection when reconnecting. #84
- Fixes Windows support. #64
- Fixes MultiLogger overriding each logger with the default formatter. #61
- Adds buffering and automatic retry support for all connectable outputs. #35
- Fixes MultiLogger tagged logging in Rails. #60
- Support for Syslog output. #59
- Support for sending messages to multiple loggers. Each one can have a different formatter. #58
- Fixes tagged logging support when using a custom formatter.
- Support for other formatters, including custom formatters. #56
- Support for CEE output.
- Support for balancer log device. #55
- Merge URI and non-URI configuration. #54
- Fix for Custom Events can't access tags from Tagged Logging. #48
- Fix for Redis URI parsing issue. #41
- Support for logging to Kafka. #37
- Support for customizing the fields on all logged messages via configuration. #32
- Support for logging to a generic IO object.
- Support for overriding IO in stdout logger. #20
- Support for configuring logger with a URI. #22
- Support logging any object. #23
- Allow type to be specified as a string. #19
- Don't mutate options passed to LogStashLogger. #18
- Support for logging to a file.
- Support for logging to a Redis list.
- Support for logging to a local Unix socket.
- Railtie supports file logger, using default log path and
config.autoflush_log
configuration. - All
LogStashLogger
types now support async
option, which controls if each message is automatically flushed.
- Support for tagged logging. The interface was extracted from
ActiveSupport::TaggedLogging
and outputs to thetags
key. - The
(host, port, type)
constructor has been deprecated in favor of an options hash constructor. - Support for using SSL for TCP connections.
- Support for configuring logger to write to STDOUT.
- Support for Rails configuration.
- Fixed output to STDOUT in Rails console (Rails 4+).
host
is no longer required for TCP/UDP. It will default to0.0.0.0
, the same default port that logstash listens on.- Changed event key
source
tohost
to match what the latest logstash expects. - Output event timestamp consistently even if
Time#to_json
is overridden. - Major refactoring which will lead the way to support other log types.
- Fixed support for
LogStash::Event
v1 format when logging a hash. Extra data now goes to the top level instead of into the@fields
key.
- Support for new
LogStash::Event
v1 format. v0 is supported in 0.3+.
- Added support for logging to a UDP listener.
- Fixed to use Logstash's default time format for timestamps.
- Better use of Ruby Logger's built-in LogDevice.
- Initial release. Support for logging to a TCP listener.