Class: EY::Enzyme::MultiLogger
- Inherits:
-
Object
- Object
- EY::Enzyme::MultiLogger
- Defined in:
- lib/ey_enzyme/multi_logger.rb
Constant Summary collapse
- SEVERITIES =
{ :fatal => Logger::FATAL, :error => Logger::ERROR, :warn => Logger::WARN, :info => Logger::INFO, :debug => Logger::DEBUG, }
Instance Method Summary collapse
- #debug(message) ⇒ Object
- #debug? ⇒ Boolean
- #error(message) ⇒ Object
- #exception(message, e) ⇒ Object
- #info(message) ⇒ Object
-
#initialize(log_file) ⇒ MultiLogger
constructor
A new instance of MultiLogger.
- #level=(level) ⇒ Object
- #log(level, message) ⇒ Object
Constructor Details
#initialize(log_file) ⇒ MultiLogger
Returns a new instance of MultiLogger.
12 13 14 15 |
# File 'lib/ey_enzyme/multi_logger.rb', line 12 def initialize(log_file) @enzyme_log = Logger.new(log_file) @stderr_log = Logger.new($stderr) end |
Instance Method Details
#debug(message) ⇒ Object
28 29 30 |
# File 'lib/ey_enzyme/multi_logger.rb', line 28 def debug() log(:debug, ) end |
#debug? ⇒ Boolean
24 25 26 |
# File 'lib/ey_enzyme/multi_logger.rb', line 24 def debug? @level == :debug end |
#error(message) ⇒ Object
36 37 38 |
# File 'lib/ey_enzyme/multi_logger.rb', line 36 def error() log(:error, ) end |
#exception(message, e) ⇒ Object
40 41 42 43 44 |
# File 'lib/ey_enzyme/multi_logger.rb', line 40 def exception(, e) = "Got an exception: #{}: #{e.class}: #{e.}" error debug e.backtrace.join(" \n") end |
#info(message) ⇒ Object
32 33 34 |
# File 'lib/ey_enzyme/multi_logger.rb', line 32 def info() log(:info, ) end |
#level=(level) ⇒ Object
17 18 19 20 21 22 |
# File 'lib/ey_enzyme/multi_logger.rb', line 17 def level=(level) @level = level raise "Invalid log level: #{level}" unless SEVERITIES[level] @enzyme_log.level = SEVERITIES[:debug] @stderr_log.level = SEVERITIES[level] end |
#log(level, message) ⇒ Object
46 47 48 49 |
# File 'lib/ey_enzyme/multi_logger.rb', line 46 def log(level, ) @stderr_log.send(level, ) @enzyme_log.send(level, ) end |