module ActiveRecord::Dowsing::Util
Public Class Methods
app_name()
click to toggle source
# File lib/active_record/dowsing/util.rb, line 11 def self.app_name return unless Rails.application&.initialized? && Rails.configuration.x.activerecord_dowsing.with_app_name "##{Rails.application.class.parent_name.downcase}" end
append_comment(sql)
click to toggle source
# File lib/active_record/dowsing/util.rb, line 6 def self.append_comment(sql) location = filter_stacktrace(caller).first "#{sql} /* #{location}#{app_name} */" end
filter_stacktrace(stack)
click to toggle source
# File lib/active_record/dowsing/util.rb, line 16 def self.filter_stacktrace(stack) @cleaner ||= ActiveSupport::BacktraceCleaner.new.tap do |cleaner| cleaner.add_filter { |line| line.remove(Rails.root.to_s) } cleaner.add_filter { |line| line.remove('*') } # Sanitize comment cleaner.add_silencer { |line| line =~ %r{activerecord-dowsing/lib} } cleaner.add_silencer { |line| line =~ /gems/ } end @cleaner.clean(stack) end