Character crash log - Xcode 8 / macOS app

I am trying to symbolize the crash log I received from a user via email.

I used the traditional symbolicatecrash command in Xcode.app, however the symbolicatecrash command just failed and returns the following message.

 $/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash MY_APP.crash MY_APP.app.dSYM > readable.crash Unsupported crash log version: 12 at /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash line 614. 

And, as they say, the version of the crash log report that I want to symbolize is 12.

 Date/Time: 2016-10-15 15:40:42.625 +0900 OS Version: Mac OS X 10.12 (16A323) Report Version: 12 

My application is a pure Cocoa application for macOS (previously OS X, not iOS) that was created using Xcode 8.0 on macOS Sierra, distributed on the Mac App Store and written in Swift.

Meanwhile, the organizer of Xcode 8.0 successfully symbolizes the crash log of the same version of the application that was received through MAS. Therefore, I suppose the dSYM file is at least the correct one. But something is going wrong.

Does anyone know how I can symbolize the plaintext crash log, its report version is 12?

+7
source share
2 answers

Finally, I found how to symbolize my crashlog for a macOS application!

I followed the instructions below and got readable strings.

How to symbolize OSX -gist crash logs

Thus, in short, for example, for this line:

 0 com.MY_DOMAIN.MY_APP 0x000000010febce85 0x10fdc1000 + 1031813 

run the following line in the terminal:

 atos -o MY_APP.app/Contents/MacOS/MY_APP -arch x86_64 -l 0x10fdc1000 0x000000010febce85 

then you will get a readable line:

 Document.init() -> Document (in MY_APP) (DefaultKey.swift:85) 
+7
source

Use this command to indicate the entire file. Replace MyApp and MyCrashFile with the appropriate values ​​and memory address (0x102e27000) so that the following line:

Thread 0 Crashed: 0 com.bundle.identifier 0x0000000102f0bfb5 0x102e27000 + 937909

becomes:

 xcrun atos -o MyApp.app/Contents/MacOS/MyApp -arch x86_64 -l 0x102e27000 -f MyCrashFile.crash > c.sym.txt && open c.sym.txt 

Tested on Mojave with Xcode 10.3

+1
source

Source: https://habr.com/ru/post/1258244/


All Articles