Class: AirbrakeSymbolicate::Symbolicator

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

Class Method Summary collapse

Class Method Details

.symbolicate_line(dsym_file, line) ⇒ Object



55
56
57
58
59
60
61
62
# File 'lib/airbrake_symbolicate.rb', line 55

def symbolicate_line(dsym_file, line)
  binname = File.basename(dsym_file)
  if line[/#{binname}/] && loc = line[/0x\w+/]
    `/usr/bin/atos -arch armv7 -o "#{dsym_file}" #{loc}`.sub(/^[-_]+/, '')
  else
    line
  end.chomp
end

.symbolicated_backtrace(error) ⇒ Object



49
50
51
52
53
# File 'lib/airbrake_symbolicate.rb', line 49

def symbolicated_backtrace(error)
  if dsym = DsymFinder.dsym_for_error(error)
    error.backtrace.line.map {|l| Symbolicator.symbolicate_line(dsym, l)}
  end
end