Uploading your iOS DYSM to Xamarin Insights using grunt

I recently wrote a blog article about building and uploading Xamarin forms builds to Hockey app using grunt (see it here). Having recently started using Xamarin Insights in a number of projects I'm going to blog about uploading your iOS app's dysm using grunt.

What's the DYSM and why do I need to upload it?

In iOS, the DYSM stores the debug symbols. If, like me, you come from a .NET background think of it as the pdb of iOS development. Insights use it to translate crash logs back into managed code so you can understand why and where your app has crashed.

Why do I need this script?

As we'll see further down the script has two parts to it:

  • It zips the DYSM up into a zip file so it can actually be uploaded.
  • Uses curl to upload the zipped DYSM to Xamarin Insights.

You'll want to automate this whenever distributing a new version of your app. This script doesn't have any dependencies on Hockey App so there's no need to worry.

OK show me the script

The script has two steps, zipping the DYSM, using the internal OS X zip command, and then uploading it, using curl, to Xamarin Insights. Insights then handles the rest :)

You can get the API key from the settings area of your respective Xamarin Insights app.