Class: Logger

Inherits:
Object show all
Includes:
LoggerHelpers
Defined in:
lib/story_teller/logging.rb

Overview

Monkey-patch the built-in Ruby Logger class to support implicit backtrace printing TODO: Figure out if this is actually useful.

Constant Summary collapse

TRACE =
DEBUG - 1

Instance Method Summary collapse

Methods included from LoggerHelpers

#extract_backtrace, #generate_message

Instance Method Details

#error(error_or_message, error = nil) ⇒ Object



92
93
94
95
96
97
# File 'lib/story_teller/logging.rb', line 92

def error(error_or_message, error = nil)
  warn error_or_message
  return extract_backtrace(error_or_message) if error.nil?
  original_error(generate_message(error_or_message, error))
  extract_backtrace(original_error(error))
end

#original_errorObject



90
# File 'lib/story_teller/logging.rb', line 90

alias original_error error

#trace(progname = nil, &block) ⇒ Object



99
100
101
# File 'lib/story_teller/logging.rb', line 99

def trace(progname = nil, &block)
  add(TRACE, nil, progname, &block)
end

#trace?Boolean

Returns:

  • (Boolean)


103
104
105
# File 'lib/story_teller/logging.rb', line 103

def trace?
  @level <= TRACE
end