How to symbolicate Electron crash log

2019-04-15 13:12发布

问题:

  • Electron version: electron v1.6.7
  • Operating system: Mac OS X 10.12.1

app crashed when start

Termination Signal:    Segmentation fault: 11
Termination Reason:    Namespace SIGNAL, Code 0xb
Terminating Process:   exc handler [0]

Thread 0 Crashed:: CrBrowserMain  Dispatch queue: com.apple.main-thread
0   com.github.electron.framework   0x000000010e73d3f2 0x10e619000 +     1197042
1   com.github.electron.framework   0x000000010e7145e5 0x10e619000 + 1029605
2   com.github.electron.framework   0x000000010e71457d 0x10e619000 + 1029501
3   com.github.electron.framework   0x000000010e71403e 0x10e619000 + 1028158
4   com.github.electron.framework   0x000000010e713ed5 asar::GetOrCreateAsarArchive(base::FilePath const&) + 133
5   com.github.electron.framework   0x000000010e71428f asar::ReadFileToString(base::FilePath const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) + 79
6   com.github.electron.framework   0x000000010e702ac1 0x10e619000 + 957121
7   com.github.electron.framework   0x000000010e701b97 0x10e619000 + 953239
8   com.github.electron.framework   0x000000010e7019e5 atom::api::NativeImage::CreateFromPath(v8::Isolate*, base::FilePath const&) + 53
9   com.github.electron.framework   0x000000010e7025f2 mate::Converter<mate::Handle<atom::api::NativeImage>, void>::FromV8(v8::Isolate*, v8::Local<v8::Value>, mate::Handle<atom::api::NativeImage>*) + 66
10  com.github.electron.framework   0x000000010e728fb9 0x10e619000 + 1114041
11  com.github.electron.framework   0x000000010e674636 0x10e619000 + 374326

` How to Symbolize Electron Crash Logs?

Already try:

  1. download electron-v1.6.7-darwin-x64.zip and electron-v1.6.7-darwin-x64-dsym.zip
  2. put it in same dir
  3. /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash ./xxx.crash ./Electron.app.dSYM > xxxxsym.crash
  4. failed by unsupported crash log version: 12
  5. atos -o ./Electron.app/Contents/MacOS/Electron -arch x86_64 -l 0x10e616000 0x000000010e73d3f2
  6. get nothing but output 0x000000010e73d3f2

How can i Symbolize crashed location like

0 com.github.electron.framework     0x000000010e73d3f2 0x10e619000 + 1197042

回答1:

carshed in Electron Framework.framework, should use Electron Framework.framework.dSYM

Like:

xcrun atos -o ./Electron Framework.framework.dSYM/Contents/Resources/DWARF/Electron Framework -l 0x10e619000 0x000000010e73d3f2 -arch x86_64