class PdkSync::Logger

Public Class Methods

color(severity) click to toggle source
# File lib/pdksync/logger.rb, line 81
def self.color(severity)
  case severity
  when ::Logger::Severity::WARN, 'WARN'
    :yellow
  when ::Logger::Severity::INFO, 'INFO'
    :green
  when ::Logger::Severity::FATAL, 'FATAL'
    :fatal
  when ::Logger::Severity::ERROR, 'ERROR'
    :fatal
  when ::Logger::Severity::DEBUG, 'DEBUG'
    :light_blue
  else
    :green
  end
end
crit(message) click to toggle source
# File lib/pdksync/logger.rb, line 49
def self.crit(message)
  logger.error(message)
end
debug(message) click to toggle source
# File lib/pdksync/logger.rb, line 41
def self.debug(message)
  logger.debug(message)
end
fatal(message) click to toggle source
# File lib/pdksync/logger.rb, line 45
def self.fatal(message)
  logger.fatal(message)
end
info(message) click to toggle source
# File lib/pdksync/logger.rb, line 37
def self.info(message)
  logger.info(message)
end
log_file() click to toggle source
# File lib/pdksync/logger.rb, line 53
def self.log_file
  if ENV['PDKSYNC_LOG_FILENAME'] && File.exist?(ENV['PDKSYNC_LOG_FILENAME'])
    ENV['PDKSYNC_LOG_FILENAME']
  else
    STDOUT
  end
end
log_level() click to toggle source
# File lib/pdksync/logger.rb, line 98
def self.log_level
  level = ENV['LOG_LEVEL'].downcase if ENV['LOG_LEVEL']
  case level
  when 'warn'
    ::Logger::Severity::WARN
  when 'fatal'
    ::Logger::Severity::FATAL
  when 'debug'
    ::Logger::Severity::DEBUG
  when 'info'
    ::Logger::Severity::INFO
  when 'error'
    ::Logger::Severity::ERROR
  else
    ::Logger::Severity::INFO
  end
end
logger(file = PdkSync::Logger.log_file) click to toggle source
# File lib/pdksync/logger.rb, line 61
def self.logger(file = PdkSync::Logger.log_file)
  @logger ||= begin
    log = ::Logger.new(file)
    log.level = log_level
    log.progname = 'PdkSync'
    log.formatter = proc do |severity, datetime, progname, msg|
      if PdkSync::Logger.log_file == STDOUT
        "#{severity} - #{progname}: #{msg}\n".send(color(severity))
      else
        "#{datetime} #{severity} - #{progname}: #{msg}\n".send(color(severity))
      end
    end
    log
  end
end
warn(message) click to toggle source
# File lib/pdksync/logger.rb, line 33
def self.warn(message)
  logger.warn(message)
end

Public Instance Methods

logger() click to toggle source
# File lib/pdksync/logger.rb, line 77
def logger
  @logger ||= PdkSync::Logger.logger
end