Crash reports from a mobile photo editing app

DesignEasy25 min

Your task

Your team ships a photo editing app for iPhone and Android. About 4 million people use it each day. When the app crashes, it saves a report and sends it the next time it opens. A report holds the app version, the device, the OS version, an install ID and the stack trace. The stack trace lists the names of the functions that were running at the crash, innermost first.

A new version ships every 2 weeks, and the same bug often survives several versions. About 30,000 reports arrive on a normal day. The day after a bad release, it can be 400,000.

The team wants a list of distinct crashes for each version, with how many reports and how many installs each has. They also want an alert within 15 minutes when a crash that no earlier version had reaches 100 installs.

What happens to a report from the moment it arrives, and how do you decide 2 reports are the same crash?

It covers

  • Crash reporting
  • Issue grouping
  • Release alerts