class HTMLProofer::Log

Constants

STDERR_LEVELS
STDOUT_LEVELS

Public Class Methods

new(log_level) click to toggle source
# File lib/html_proofer/log.rb, line 13
def initialize(log_level)
  @logger = Yell.new(
    format: false,
    name: "HTMLProofer", \
    level: "gte.#{log_level}",
  ) do |l|
    l.adapter(:stdout, level: "lte.warn")
    l.adapter(:stderr, level: "gte.error")
  end
end

Public Instance Methods

colorize(level, message) click to toggle source
# File lib/html_proofer/log.rb, line 32
def colorize(level, message)
  color = case level
  when :debug
    :cyan
  when :info
    :blue
  when :warn
    :yellow
  when :error, :fatal
    :red
  end

  if STDOUT_LEVELS.include?(level) ||
      STDERR_LEVELS.include?(level)
    Rainbow(message).send(color)
  else
    message
  end
end
debug(message = nil) click to toggle source

dumb override to play nice with Typhoeus/Ethon

# File lib/html_proofer/log.rb, line 53
def debug(message = nil)
  log(:debug, message) unless message.nil?
end
log(level, message) click to toggle source
# File lib/html_proofer/log.rb, line 24
def log(level, message)
  log_with_color(level, message)
end
log_with_color(level, message) click to toggle source
# File lib/html_proofer/log.rb, line 28
def log_with_color(level, message)
  @logger.send(level, colorize(level, message))
end