Class: God::SimpleLogger
- Inherits:
-
Object
- Object
- God::SimpleLogger
- Defined in:
- lib/god/simple_logger.rb
Direct Known Subclasses
Constant Summary collapse
- DEBUG =
2
- INFO =
4
- WARN =
8
- ERROR =
16
- FATAL =
32
- SEV_LABEL =
{DEBUG => 'DEBUG', INFO => 'INFO', WARN => 'WARN', ERROR => 'ERROR', FATAL => 'FATAL'}
- CONSTANT_TO_SYMBOL =
{ DEBUG => :debug, INFO => :info, WARN => :warn, ERROR => :error, FATAL => :fatal }
Instance Attribute Summary collapse
-
#datetime_format ⇒ Object
Returns the value of attribute datetime_format.
-
#level ⇒ Object
Returns the value of attribute level.
Instance Method Summary collapse
- #debug(msg) ⇒ Object
- #error(msg) ⇒ Object
- #fatal(msg) ⇒ Object
- #info(msg) ⇒ Object
-
#initialize(io) ⇒ SimpleLogger
constructor
A new instance of SimpleLogger.
- #output(level, msg) ⇒ Object
- #warn(msg) ⇒ Object
Constructor Details
#initialize(io) ⇒ SimpleLogger
Returns a new instance of SimpleLogger.
24 25 26 27 28 |
# File 'lib/god/simple_logger.rb', line 24 def initialize(io) @io = io @level = INFO @datetime_format = "%Y-%m-%d %H:%M:%S" end |
Instance Attribute Details
#datetime_format ⇒ Object
Returns the value of attribute datetime_format.
22 23 24 |
# File 'lib/god/simple_logger.rb', line 22 def datetime_format @datetime_format end |
#level ⇒ Object
Returns the value of attribute level.
22 23 24 |
# File 'lib/god/simple_logger.rb', line 22 def level @level end |
Instance Method Details
#debug(msg) ⇒ Object
54 55 56 |
# File 'lib/god/simple_logger.rb', line 54 def debug(msg) self.output(DEBUG, msg) end |
#error(msg) ⇒ Object
42 43 44 |
# File 'lib/god/simple_logger.rb', line 42 def error(msg) self.output(ERROR, msg) end |
#fatal(msg) ⇒ Object
38 39 40 |
# File 'lib/god/simple_logger.rb', line 38 def fatal(msg) self.output(FATAL, msg) end |
#info(msg) ⇒ Object
50 51 52 |
# File 'lib/god/simple_logger.rb', line 50 def info(msg) self.output(INFO, msg) end |
#output(level, msg) ⇒ Object
30 31 32 33 34 35 36 |
# File 'lib/god/simple_logger.rb', line 30 def output(level, msg) return if level < self.level time = Time.now.strftime(self.datetime_format) label = SEV_LABEL[level] @io.puts("#{label[0..0]} [#{time}] #{label.rjust(5)}: #{msg}") end |
#warn(msg) ⇒ Object
46 47 48 |
# File 'lib/god/simple_logger.rb', line 46 def warn(msg) self.output(WARN, msg) end |