Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Xcode Crash Organizer does Not Symbolicate .xccrashpoint Files

The new Xcode 7 "Crashes" tab in the organizer shows a handful of crashes from the AppStore for my app. According to the documentation, there should be a stack trace. However, none of the 6 crashes have symbolicated stack traces: enter image description here

I've tried clicking "Open in Project" but it's just as useless: enter image description here

Of course, I included the dsym and debug info when I submitted to the store. I still have the submission build in my organizer, so the dsyms are still present on my machine. How can I get a proper stack trace on this?

like image 762
Zane Claes Avatar asked Oct 14 '15 17:10

Zane Claes


2 Answers

Not ideal, but if you right-click an .xccrashpoint file, select "Show Package Contents", you can navigate its folder structure to find the actual .crash file which you can extract and then symbolicate through the command line using steps described here:

Run

/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash 

Ensure that DEVELOPER_DIR is set:

export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer 
like image 157
esilver Avatar answered Sep 19 '22 07:09

esilver


Short Story:

In Xcode 9.0: "The Crashes Organizer symbolicates unsymbolicated logs, if they are selected, using a local .dSYM indexed by Spotlight. (22550064)"

You can check out more on this in Xcode's Documentation.

Long Story:

When Xcode builds an .xcarchive for a machine code app it generates .dSYM files that are being indexed by Spotlight by default. For an app uploaded with bitcode you can use the Archives organizer to download dSYMs where they are being indexed by Spotlight by default.

If you choose not to include symbol information when uploading your app to the App Store, the crash logs downloaded by the Crashes Organizer will be unsymbolicated. If you have the appropriate .dSYM files that were generated for the app version that crashed, Xcode will automatically symbolicate the crash when you click on the crash to view it. This functionality exists in Xcode 9.0+. You may manually invoke a re-symbolication by right-clicking on the log detail view and clicking "symbolicate".

like image 38
mychrisdangelo Avatar answered Sep 20 '22 07:09

mychrisdangelo