Class: Rakali::Logger
- Inherits:
-
Object
- Object
- Rakali::Logger
- Defined in:
- lib/rakali/logger.rb
Constant Summary collapse
- DEBUG =
0
- INFO =
1
- WARN =
2
- ERROR =
3
Instance Attribute Summary collapse
-
#log_level ⇒ Object
Returns the value of attribute log_level.
Instance Method Summary collapse
-
#abort_with(topic, message = nil) ⇒ Object
Public: Print a error message to stderr and immediately abort the process.
-
#debug(topic, message = nil) ⇒ Object
Public: Print a debug message to stdout.
-
#error(topic, message = nil) ⇒ Object
Public: Print a error message to stderr.
-
#formatted_topic(topic) ⇒ Object
Public: Format the topic.
-
#info(topic, message = nil) ⇒ Object
Public: Print a message to stdout.
-
#initialize(level = INFO) ⇒ Logger
constructor
Public: Create a new logger instance.
-
#message(topic, message) ⇒ Object
Public: Build a topic method.
-
#warn(topic, message = nil) ⇒ Object
Public: Print a message to stderr.
Constructor Details
Instance Attribute Details
#log_level ⇒ Object
Returns the value of attribute log_level.
6 7 8 |
# File 'lib/rakali/logger.rb', line 6 def log_level @log_level end |
Instance Method Details
#abort_with(topic, message = nil) ⇒ Object
Public: Print a 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
68 69 70 71 |
# File 'lib/rakali/logger.rb', line 68 def abort_with(topic, = nil) error(topic, ) abort end |
#debug(topic, message = nil) ⇒ Object
Public: Print a debug message to stdout
topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail
Returns nothing
28 29 30 |
# File 'lib/rakali/logger.rb', line 28 def debug(topic, = nil) $stdout.puts((topic, )) if log_level <= DEBUG end |
#error(topic, message = nil) ⇒ Object
Public: Print a error message to stderr
topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail
Returns nothing
58 59 60 |
# File 'lib/rakali/logger.rb', line 58 def error(topic, = nil) $stderr.puts((topic, ).red) if log_level <= ERROR end |
#formatted_topic(topic) ⇒ Object
Public: Format the topic
topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc.
Returns the formatted topic statement
88 89 90 |
# File 'lib/rakali/logger.rb', line 88 def formatted_topic(topic) "#{topic} ".rjust(20) end |
#info(topic, message = nil) ⇒ Object
Public: Print a message to stdout
topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail
Returns nothing
38 39 40 |
# File 'lib/rakali/logger.rb', line 38 def info(topic, = nil) $stdout.puts((topic, )) if log_level <= INFO end |
#message(topic, message) ⇒ Object
Public: Build a topic method
topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail
Returns the formatted message
79 80 81 |
# File 'lib/rakali/logger.rb', line 79 def (topic, ) formatted_topic(topic) + .to_s end |
#warn(topic, message = nil) ⇒ Object
Public: Print a message to stderr
topic - the topic of the message, e.g. “Configuration file”, “Deprecation”, etc. message - the message detail
Returns nothing
48 49 50 |
# File 'lib/rakali/logger.rb', line 48 def warn(topic, = nil) $stderr.puts((topic, ).yellow) if log_level <= WARN end |