Sha256: b1f41f30e41bfcc98bf66985a306dacb46c147cf387028fd980a2272a26896f6
Contents?: true
Size: 1.08 KB
Versions: 6
Compression:
Stored size: 1.08 KB
Contents
require 'logger' module PDK def self.logger @logger ||= PDK::Logger.new end class Logger < ::Logger WRAP_COLUMN_LIMIT = 78 def initialize super(STDERR) @sent_messages = {} # TODO: Decide on output format. self.formatter = proc do |severity, _datetime, _progname, msg| prefix = "pdk (#{severity}): " if msg.is_a?(Hash) if msg.fetch(:wrap, false) wrap_pattern = %r{(.{1,#{WRAP_COLUMN_LIMIT - prefix.length}})(\s+|\Z)} "#{prefix}#{msg[:text].gsub(wrap_pattern, "\\1\n#{' ' * prefix.length}")}\n" else "#{prefix}#{msg[:text]}\n" end else "#{prefix}#{msg}\n" end end self.level = ::Logger::INFO end def warn_once(*args) hash = args.inspect.hash return if (@sent_messages[::Logger::WARN] ||= {}).key?(hash) @sent_messages[::Logger::WARN][hash] = true warn(*args) end def enable_debug_output self.level = ::Logger::DEBUG end def debug? level == ::Logger::DEBUG end end end
Version data entries
6 entries across 6 versions & 2 rubygems
Version | Path |
---|---|
pdk-akerl-1.14.0.1 | lib/pdk/logger.rb |
pdk-1.14.0 | lib/pdk/logger.rb |
pdk-1.13.0 | lib/pdk/logger.rb |
pdk-1.12.0 | lib/pdk/logger.rb |
pdk-1.11.1 | lib/pdk/logger.rb |
pdk-1.11.0 | lib/pdk/logger.rb |