Class: Lorekeeper::BacktraceCleaner

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/lorekeeper/backtrace_cleaner.rb

Instance Method Summary collapse

Constructor Details

#initializeBacktraceCleaner

Returns a new instance of BacktraceCleaner.



9
10
11
12
13
14
15
# File 'lib/lorekeeper/backtrace_cleaner.rb', line 9

def initialize
  @backtrace_cleaner = set_backtrace_cleaner
  @rails_root = defined?(Rails.root) ? Rails.root.to_s : nil
  @rails_root_size = @rails_root.to_s.size
  @gem_path = defined?(Gem.path) ? Gem.path : []
  @denylisted_fingerprint = denylisted_fingerprint
end

Instance Method Details

#clean(backtrace) ⇒ Object



17
18
19
20
21
22
# File 'lib/lorekeeper/backtrace_cleaner.rb', line 17

def clean(backtrace)
  return [] unless backtrace.is_a?(Array)

  backtrace = filter_rails_root_backtrace(backtrace)
  @backtrace_cleaner&.clean(backtrace) || backtrace
end