Class: Rails::BacktraceCleaner
- Inherits:
-
ActiveSupport::BacktraceCleaner
- Object
- ActiveSupport::BacktraceCleaner
- Rails::BacktraceCleaner
- Defined in:
- railties/lib/rails/backtrace_cleaner.rb
Overview
:nodoc:
Constant Summary collapse
- RENDER_TEMPLATE_PATTERN =
/:in [`'].*_\w+_{2,3}\d+_\d+'/
Instance Method Summary collapse
- #clean(backtrace, kind = :silent) ⇒ Object (also: #filter)
- #clean_frame(frame, kind = :silent) ⇒ Object
-
#initialize ⇒ BacktraceCleaner
constructor
A new instance of BacktraceCleaner.
Methods inherited from ActiveSupport::BacktraceCleaner
#add_filter, #add_silencer, #clean_locations, #first_clean_frame, #first_clean_location, #remove_filters!, #remove_silencers!
Constructor Details
#initialize ⇒ BacktraceCleaner
Returns a new instance of BacktraceCleaner.
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'railties/lib/rails/backtrace_cleaner.rb', line 10 def initialize super add_filter do |line| # We may be called before Rails.root is assigned. # When that happens we fallback to not truncating. @root ||= Rails.root && "#{Rails.root}/" @root && line.start_with?(@root) ? line.from(@root.size) : line end add_filter do |line| if RENDER_TEMPLATE_PATTERN.match?(line) line.sub(RENDER_TEMPLATE_PATTERN, "") else line end end add_silencer do |line| line.start_with?(File::SEPARATOR, "vendor/", "bin/") end end |
Instance Method Details
#clean(backtrace, kind = :silent) ⇒ Object Also known as: filter
31 32 33 34 35 |
# File 'railties/lib/rails/backtrace_cleaner.rb', line 31 def clean(backtrace, kind = :silent) return backtrace if ENV["BACKTRACE"] super(backtrace, kind) end |
#clean_frame(frame, kind = :silent) ⇒ Object
38 39 40 41 42 |
# File 'railties/lib/rails/backtrace_cleaner.rb', line 38 def clean_frame(frame, kind = :silent) return frame if ENV["BACKTRACE"] super(frame, kind) end |