Module: Loog
- Defined in:
- lib/loog.rb
Overview
Loog is an object-oriented wrapper around Ruby Logger:
require 'loog' log = Loog::VERBOSE log.info('Hello, world!')
For more information read README file.
- Author
Yegor Bugayenko ([email protected])
- Copyright
Copyright (c) 2018-2026 Yegor Bugayenko
- License
MIT
Defined Under Namespace
Classes: Buffer, Colorful, Ellipsized, Tee
Constant Summary collapse
- COMPACT =
Compact formatter
proc do |severity, _time, _target, msg| prefix = '' case severity when 'ERROR', 'FATAL' prefix = 'E: ' when 'DEBUG' prefix = 'D: ' end = msg.to_s.encode('UTF-8', invalid: :replace, undef: :replace, replace: '?') "#{prefix}#{.rstrip.gsub("\n", "\n#{' ' * prefix.length}")}\n" end
- SHORT =
Short formatter
proc do |_severity, _time, _target, msg| = msg.to_s.encode('UTF-8', invalid: :replace, undef: :replace, replace: '?') "#{.rstrip}\n" end
- FULL =
Full formatter
proc do |severity, time, _target, msg| = msg.to_s.encode('UTF-8', invalid: :replace, undef: :replace, replace: '?') format( "%<time>s %<severity>5s %<msg>s\n", time: time.utc.iso8601, severity: severity, msg: .rstrip ) end
- NULL =
No logging at all
Logger.new($stdout)
- VERBOSE =
Everything, including debug
Logger.new($stdout)
- REGULAR =
Info and errors, no debug info
Logger.new($stdout)
- ERRORS =
Errors only
Logger.new($stdout)