Sha256: 6c96962b2435da17d080c8d6a6a7e4c0a205723f6dc6b3181e78c30f8ec88c2b
Contents?: true
Size: 1.19 KB
Versions: 3
Compression:
Stored size: 1.19 KB
Contents
# frozen_string_literal: true module Bridgetown class LogWriter < ::Logger def initialize super($stdout, formatter: proc { |_, _, _, msg| msg.to_s }) end def enable_prefix self.formatter = proc do |_, _, _, msg| "\e[32m[Bridgetown]\e[0m #{msg}" end end def add(severity, message = nil, progname = nil) severity ||= UNKNOWN @logdev = logdevice(severity) return true if @logdev.nil? || severity < @level progname ||= @progname if message.nil? if block_given? message = yield else message = progname progname = @progname end end @logdev.puts( format_message(format_severity(severity), Time.now, progname, message) ) true end # Log a `WARN` message def warn(progname = nil, &block) add(WARN, nil, progname.yellow, &block) end # Log an `ERROR` message def error(progname = nil, &block) add(ERROR, nil, progname.red, &block) end def close # No LogDevice in use end private def logdevice(severity) if severity > INFO $stderr else $stdout end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
bridgetown-core-1.3.4 | lib/bridgetown-core/log_writer.rb |
bridgetown-core-1.3.3 | lib/bridgetown-core/log_writer.rb |
bridgetown-core-1.3.2 | lib/bridgetown-core/log_writer.rb |