I'm pretty familiar with how crash logs for iOS apps are symbolicated but this one is a head scratcher.
I have MyApp with build 2345 that was released as a beta through TestFlight, using the normal Archive then Upload to App Store flow in Xcode 7.2 (7C68).
When I do a dwarfdump for the binary in the the xcarchive, I get the following:
dwarfdump --uuid MyApp.app/MyApp
UUID: 0BDA6D6F-3C0D-339E-842F-C2CB04199E10 (armv7) MyApp.app/MyApp
UUID: B2A69BEC-DF5E-33EA-A9E0-490EBF03074C (arm64) MyApp.app/MyApp
Here is the dwarfdump for the dSYM file:
dwarfdump --uuid MyApp.app.dSYM
UUID: 0BDA6D6F-3C0D-339E-842F-C2CB04199E10 (armv7) MyApp.app.dSYM/Contents/Resources/DWARF/MyApp
UUID: B2A69BEC-DF5E-33EA-A9E0-490EBF03074C (arm64) MyApp.app.dSYM/Contents/Resources/DWARF/MyApp
So far, so good.
However, I received a crash through Organize > Crashes for build 2345 that has a different UUID for the binary:
0x100054000 - 0x1000fffff myapp arm64 <3715db2438743cf5aac1742d9a214c2c> /var/mobile/Containers/Bundle/Application/7313BC02-3F90-4F94-82E2-CBDC941E5D68/MyApp.app/myapp
0x100144000 - 0x1001e7fff AWSCore arm64 <c2aa13236d0437b98194c0487db69e68> /var/mobile/Containers/Bundle/Application/7313BC02-3F90-4F94-82E2-CBDC941E5D68/blink.app/Frameworks/AWSCore.framework/AWSCore
....
I know for sure that the crash report is for the same build, yet the UUID here is 3715db2...
when I am expecting it to be b2a69bec...
I do have bitcode enabled so I tried doing a Download dSYMs from the Organizer Archive page (even though I built arm64 so Apple shouldn't have had to) and it retrieved dSYMs for the other UUIDs/binaries in the crash report but nothing for the myapp
binary. In fact, the myapp
binary is the only binary that didn't get a corresponding dSYM downloaded!
So a couple questions:
3715db2438743cf5aac1742d9a214c2c
version of the
myapp binary come from?A dSYM file is an ELF file that contains DWARF (debugging with attributed record formats) debug information for your application. DWARF is a debugging file format that supports source-level debugging.
Your app's dSYM files are stored in Xcode's dSYM archive path folder. This is the folder where the iOS agent gets the dSYM files that are used to symbolicate your crash reports. New Relic provides a post-build script as part of the iOS agent's install process.
Looks like I found the solution.
It's possible in case you set Bitcode enabled. To get necessary dSym you should either use "Download dSYMs..." button (Xcode / Organizer / Your Archive - right panel with archive information) or download them from iTunes Connect (Activity tab, link in build's details ).
Last option helped in my situation.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With