class WebDriverManager::Logger

Public Class Methods

new() click to toggle source
# File lib/webdriver_manager/logger.rb, line 17
def initialize
  @logger = create_logger($stdout)
end

Public Instance Methods

level=(severity) click to toggle source
# File lib/webdriver_manager/logger.rb, line 21
def level=(severity)
  case severity.to_s.downcase
    when 'debug'.freeze then @logger.level = DEBUG
    when 'info'.freeze then @logger.level = INFO
    when 'warn'.freeze then @logger.level = WARN
    when 'error'.freeze then @logger.level = ERROR
    else
      raise ArgumentError, "invalid log level: #{severity}"
  end
end
output=(io) click to toggle source
# File lib/webdriver_manager/logger.rb, line 32
def output=(io)
  if @logger.respond_to?(:reopen)
    @logger.reopen(io)
  else
    @logger = create_logger(io)
  end
end

Private Instance Methods

create_logger(output) click to toggle source
# File lib/webdriver_manager/logger.rb, line 42
def create_logger(output)
  logger = ::Logger.new(output)
  logger.progname = 'WebDriver Manager'
  logger.level = ($DEBUG ? DEBUG : WARN)

  logger.formatter = proc do |severity, time, progname, msg|
    "#{time.strftime('%F %T')} #{severity} #{progname} #{msg}\n"
  end

  logger
end