Sha256: c14005e7065c9f7ff93527d2cf5253af1c1f7330a2302d445a82ded8ffdd334b

Contents?: true

Size: 919 Bytes

Versions: 6

Compression:

Stored size: 919 Bytes

Contents

require 'logger'
require 'dply/ext/string'
module Dply
  class CustomLogger < ::Logger

    attr_writer :trace_mode, :remote_mode, :enable_markers

    def initialize(file)
      super(file)
      @level = ::Logger::INFO
    end

    def format_message(severity, timestamp, progname, msg)
      case severity
      when "INFO"
        "#{msg}\n"
      when "ERROR"
        "#{severity.bold.red} #{msg}\n"
      when "WARN"
        "#{severity.downcase.bold.yellow} #{msg}\n"
      else
        "#{severity[0].bold.blue} #{msg}\n"
      end
    end

    def bullet(msg)
      puts "#{"\u2219".bold.blue} #{msg}"
    end

    def trace(msg)
      return if not @trace_mode
      puts %(#{"T".bold.blue} #{msg}\n)
    end

    def remote(msg)
      return if not @remote_mode
      puts %{dply_msg|#{msg}}
    end

    def marker(msg)
      return if not @enable_markers
      puts "dply_marker:#{msg}"
    end

  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
dply-0.2.3 lib/dply/custom_logger.rb
dply-0.2.2 lib/dply/custom_logger.rb
dply-0.2.0 lib/dply/custom_logger.rb
dply-0.1.19 lib/dply/custom_logger.rb
dply-0.1.18 lib/dply/custom_logger.rb
dply-0.1.17 lib/dply/custom_logger.rb