Upload the Symbol File and View the Stack Trace

You are recommended to automatically generate and upload symbol files, but you can also manually generate and upload the symbol files, too. After you upload the symbol files, when the app with the same build ID as the UUID of the uploaded ndkSYM file crashes, you will see the file name and the line number next to the C/C++ function name for each frame of the stack trace shown in the Crash Details dialog.

Automatically Generate and Upload Symbol Files

You can run the following gradle command to generate and upload the symbol files to the EUM Server. Replace <VariantName> with the build variant names you defined in the configuration. For example, in the configuration above, the <VariantName> could be release or debug.

$ gradle appDynamicsUploadNDKSymbolFile<VariantName>

Manually Generate and Upload Symbol Files

Ensure that the following property is enabled to use the token-based upload:

Note: If you wish to disable this REST API and use the Controller API that uses the token-based upload, contact Splunk AppDynamics Support.

To enerate symbol files, run the following gradle command, where <VariantName> is the build variant names. The generated symbol file will be written to build/appDynamics/ndkSym<VariantName>/<AppBuildID>/<AppBuildID>.ndkSYM.zip.

$ gradle appDynamicsGenerateNDKSymbolFile<VariantName>

To manually upload the generated symbol file, use the following cURL command, replacing the <ndkSymZipFile> with your generated symbol file, <Account Name> with your EUM Account name, and <License Key> with your EUM License Key.

$ curl -v -H Content-Type:application/octet-stream --upload-file <ndkSymZipFile> --user <Account Name>:<License Key> https://api.eum-appdynamics.com/v2/account/<Account Name>/android-ndksym