Sha256: dba2e2bfb67a8cb18dc68428aee95f442f15a3f833551bc504d618f458145a6d
Contents?: true
Size: 1.08 KB
Versions: 6
Compression:
Stored size: 1.08 KB
Contents
# frozen_string_literal: true require 'logger' require 'active_support/tagged_logging' require 'bbk/utils/log_formatter' module BBK module Utils class Logger < ::Logger DEFAULT_NAME = 'bbk' DEFAULT_LEVEL = Logger::Severity::DEBUG def self.new(*args, **kwargs) instance = super ActiveSupport::TaggedLogging.new(instance) end def initialize(progname, level, io: STDOUT) io.sync = true super(io) self.progname = progname if level.is_a?(Integer) self.level = level else level = level.to_s.upcase level = level.present? ? level : 'INFO' self.level = Logger.const_get(level) end self.formatter = LogFormatter.new info "Using LOG_LEVEL=#{level}" end def silence(*_args) yield self end def self.default unless @default level = ENV.fetch('LOG_LEVEL', DEFAULT_LEVEL) @default = new(DEFAULT_NAME, level) @default.level = level end @default end end end end
Version data entries
6 entries across 6 versions & 1 rubygems