Sha256: b98f95bb6fa01a4da5e0e3646fe0a2cb8cd97d90e1c9d70ffd604bb78df34561

Contents?: true

Size: 705 Bytes

Versions: 2

Compression:

Stored size: 705 Bytes

Contents

class Miam::Logger < ::Logger
  include Singleton

  def initialize
    super($stdout)

    self.formatter = proc do |severity, datetime, progname, msg|
      "#{msg}\n"
    end

    self.level = Logger::INFO
  end

  def set_debug(value)
    self.level = value ? Logger::DEBUG : Logger::INFO
  end

  module Helper
    def log(level, message, options = {})
      options = (@options || {}).merge(options)
      message = "[#{level.to_s.upcase}] #{message}" unless level == :info
      message << ' (dry-run)' if options[:dry_run]
      message = message.send(options[:color]) if options[:color]
      logger = options[:logger] || Miam::Logger.instance
      logger.send(level, message)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
miam-0.1.0 lib/miam/logger.rb
miam-0.1.0.beta lib/miam/logger.rb