Class: SqlTracer::Formatter

Inherits:
Object
  • Object
show all
Defined in:
lib/sql_tracer/formatter.rb

Constant Summary collapse

HEADER_PROMPT =
'='*20 << '>'
'<' << '='*20

Class Method Summary collapse

Class Method Details

.end_printObject



10
11
12
# File 'lib/sql_tracer/formatter.rb', line 10

def self.end_print
  puts FOOTER_PROMPT
end


33
34
35
36
37
38
# File 'lib/sql_tracer/formatter.rb', line 33

def self.print_all(sql, backtrace)
  start_print
  print_sql(sql)
  print_backtrace(backtrace)
  end_print
end


26
27
28
29
30
31
# File 'lib/sql_tracer/formatter.rb', line 26

def self.print_backtrace(backtrace)
  puts Helper.should_skip_lib? ? 'Backtrace: note that paths in ruby libs have been hidden' : 'Backtrace:'
  backtrace.each do |line|
    (puts '  ' << line) if line.present?
  end
end


19
20
21
22
23
24
# File 'lib/sql_tracer/formatter.rb', line 19

def self.print_sql(sql)
  puts 'SQL:'
  return sql if sql.blank?
  formatted_sql = '  ' << sql
  puts formatted_sql
end


14
15
16
17
# File 'lib/sql_tracer/formatter.rb', line 14

def self.print_tips
  puts 'SqlTracer is watching and will capture backtrace when sql is executed, '\
  'open [/sql_tracer/index] in browser for detailed information'
end

.remove_filtered_path(backtrace) ⇒ Object



40
41
42
43
44
45
# File 'lib/sql_tracer/formatter.rb', line 40

def self.remove_filtered_path(backtrace)
  backtrace.map do |path|
    next if Helper.shoule_skip_path_by_keywords?(path)
    path
  end.compact
end

.start_printObject



6
7
8
# File 'lib/sql_tracer/formatter.rb', line 6

def self.start_print
  puts HEADER_PROMPT
end