Class: ExtraLogger
Overview
Add extra severity to the standard Logger class. Also add support for including backtraces implicitly.
Constant Summary collapse
- SEV_LABEL_EXTRA =
(Logger::SEV_LABEL + %w(TRACE)).freeze
Instance Method Summary collapse
- #error(error_or_message = nil, error = nil, &block) ⇒ Object
- #format_severity(severity) ⇒ Object
- #log_error(error_or_message = nil, &block) ⇒ Object
- #original_error ⇒ Object
- #trace(progname = nil, &block) ⇒ Object
Instance Method Details
#error(error_or_message = nil, error = nil, &block) ⇒ Object
172 173 174 175 176 177 178 179 |
# File 'lib/story_teller/logging.rb', line 172 def error( = nil, error = nil, &block) return log_error(, &block) if error.nil? original_error(TraceHelpers.(, error)) TraceHelpers.extract_backtrace(error, []).each do |trace| original_error(trace) unless trace.nil? end end |
#format_severity(severity) ⇒ Object
189 190 191 |
# File 'lib/story_teller/logging.rb', line 189 def format_severity(severity) SEV_LABEL_EXTRA[severity] || super end |
#log_error(error_or_message = nil, &block) ⇒ Object
181 182 183 184 185 186 |
# File 'lib/story_teller/logging.rb', line 181 def log_error( = nil, &block) original_error(, &block) TraceHelpers.extract_backtrace(, []).each do |trace| original_error(trace) unless trace.nil? end end |
#original_error ⇒ Object
171 |
# File 'lib/story_teller/logging.rb', line 171 alias original_error error |