- Accept log messages via given block, ensuring compatibility with standard Ruby logger (via #28) (@komidore64)
- Drop support for Ruby 2.7 (via #29) (@timriley)
- Support for ruby 2.7 (needs backports gem that you need to add to your Gemfile) (via #24) (@solnic)
- Handle
:log_if
in Proxy constructors (via #23) (@solnic)
- Support for
log_if
in proxied loggers (via 81115320b490034ddf9dfe4f3775322b9271e0cd) (@solnic) - Support exceptions and payloads in proxied loggers (via 93b3fd59ebbdc7e63620eb064694d58455df831f) (@solnic)
This is a port of the original Hanami logger from hanami-utils extended with support for logging dispatchers that can log to different destinations and plenty more.
- Support arbitrary logging backends through proxy (via #12) (@solnic)
- Support for conditional logging when using arbitrary logging backends (via #13) (@solnic)
- Support for registering templates via
Dry::Logger.register_template
(via #14) (@solnic) - Support for payload keys as template tokens (via #14) (@solnic)
- Support for payload value formatter methods, ie if there's
:verb
token your formatter can implementformat_verb(value)
(via #14) (@solnic) - Support block-based setup (via #16) (@solnic)
- Support for defining cherry-picked keys from the payload in string templates (via #17) (@solnic)
- Support for
%<payload>s
template token. It will be replaced by a formatted payload, excluding any key that you specified explicitly in the template (via #17) (@solnic) - Support for colorized output using color tags in templates (via #18) (@solnic)
- Support for
colorize: true
logger option which enables severity coloring in string formatter (via #18) (@solnic) :details
template:"[%<progname>s] [%<severity>s] [%<time>s] %<message>s %<payload>s"
(@solnic)- A new option
on_crash
for setting up a logger-crash handling proc (via #21) (@solnic) - Handle logger crashes by default using a simple
$stdout
logger (via #21) (@solnic) - Support for regular logger backends that don't support
log?
predicate (@solnic) - Support for providing a string template for log entries via
template
option (via #7) (@solnic) :rack
string log formatter which inlines request info and displays params at the end (@solnic)- Conditional log dispatch via
#log_if
backend's predicate (via #9) (@solnic) - Add support for shared context and tagged log entries (via #10) (@solnic)