What agent version are you using? (click to see release notes)
Please share which platform you have questions about: iOS, Android or hybrid?
Are you seeing an error? Please paste the stack trace, or add a screenshot for us to review:
and then ‘This occurrence was only partially symbolicated. It looks like you are missing one or more dSYMs for this build.’
Please describe what you are seeing:
I haven’t seen yet a symbolicated crash report for our app, which consists of a very small amount of files add to app target, and all business logic inside smaller frameworks.
When I use the default solution from here Relic Solution: iOS dSYM upload deep-dive, which is newrelic_postbuild.sh script, it finishes very quickly, while our dSyms weigh around 180 MB when zipped.
When I use the second solution, generate_map.py , it takes much more time to finish, which is expected, but it seems our Xcode generated dSym folder holds also internal frameworks that our app uses (for some reason), and the script tries to upload too many things. This happens because it tries to find files that have ‘Mach-O’ in their
file description. ‘Mach-O 64-bit dynamically linked shared library arm64e’ and ‘Mach-O 64-bit dSYM companion file arm64’ both fits that criteria.
Even after fixes to generateMap.py to collect only debug symbol files, I was not able to symbolicate my manually-induced-test crash in NewRelic.
When I try to symbolicate the crash from command line, using
symbolicatecrash --dsym=OneOfMyFrameworks.framework.dSYM path > result, I get the crash symbolicated for that framework.
We have a CD setup where we are creating release builds only from a defined job, so I would prefer a solution like with generateMap.py, when one zip file is created and it gets uploaded, because then I can isolate it to a separate stage of the build.
We are using Fastlane, and I have already setup a back-up dSym store on S3. I get the dSyms zip path in lane_context[SharedValues::DSYM_OUTPUT_PATH], after build_ios_app action. I tried to use it also with NewRelic, but still no luck.
If there is somewhere a definition how zip file with dSyms should look like for multi framework app, I would be able to dive deeper into the issue, but I can’t find it. It seems backend is accepting most of the zips with 201 code, but symbolication is not working when crashes happen.
- How does that differ from what were you expecting to see?
I would expect for dSyms to be uploaded to New Relic, and being able to see a symbolicated stack trace.