class Hyla::Logger

Constants

DEBUG
ERROR
FATAL
INFO
WARN

Attributes

log_level[RW]

Public Class Methods

new(level = INFO) click to toggle source

Public: Create a new instance of Hyla's logger

level - (optional, integer) the log level

Returns nothing

# File lib/hyla/logger.rb, line 16
def initialize(level = INFO)
  @log_level = level
end

Public Instance Methods

abort_with(topic, message = nil) click to toggle source

Public: Print a hyla error message to stderr and immediately abort the process

topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail (can be omitted)

Returns nothing

# File lib/hyla/logger.rb, line 66
def abort_with(topic, message = nil)
  error(topic, message)
  abort
end
debug(topic, message = nil) click to toggle source

Public: Print a Hyla debug message to stdout

topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail

Returns nothing

# File lib/hyla/logger.rb, line 26
def debug(topic, message = nil)
  $stdout.puts(message(topic, message)) if log_level <= DEBUG
end
error(topic, message = nil) click to toggle source

Public: Print a hyla error message to stderr

topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail

Returns nothing

# File lib/hyla/logger.rb, line 56
def error(topic, message = nil)
  $stderr.puts(message(topic, message).red) if log_level <= ERROR
end
formatted_topic(topic) click to toggle source

Public: Format the topic

topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc.

Returns the formatted topic statement

# File lib/hyla/logger.rb, line 86
def formatted_topic(topic)
  "#{topic} ".rjust(20)
end
info(topic, message = nil) click to toggle source

Public: Print a hyla message to stdout

topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail

Returns nothing

# File lib/hyla/logger.rb, line 36
def info(topic, message = nil)
  $stdout.puts(message(topic, message)) if log_level <= INFO
end
message(topic, message) click to toggle source

Public: Build a hyla topic method

topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail

Returns the formatted message

# File lib/hyla/logger.rb, line 77
def message(topic, message)
  formatted_topic(topic) + message.to_s.gsub(/\s+/, ' ')
end
warn(topic, message = nil) click to toggle source

Public: Print a hyla message to stderr

topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail

Returns nothing

# File lib/hyla/logger.rb, line 46
def warn(topic, message = nil)
  $stderr.puts(message(topic, message).yellow) if log_level <= WARN
end