Developer tools have always been about power, focusing less around ease-of-use and the overall user experience. When Jeff and I founded Crashlytics four years ago, we made it our mission to fix this. We didn’t just want to build the most powerful, yet lightest weight crash reporting tool – we wanted to focus on the entire experience. From how you onboard Crashlytics, to what happens when you close an issue, to how we handle support requests, every detail was tailored to building the best developer experience for you.
Today, after four years of tremendous focus and effort by our team, we’re proud to share that we’ve reached a major milestone: our systems have now seen more than 1 million apps integrated with Crashlytics!
Across those apps, our systems now analyze over 7 billion crash events every 30 days and we’ve learned a tremendous amount about what it takes to support you as you build incredible apps.
What has made Crashlytics such an integral part of every app developer’s toolkit? We asked and below are some of your favorite features that make Crashlytics so valuable to you.
Deep, insightful reports
Crash reporting is more than just a raw paste of a stack trace. To make debugging easier, we built Crashlytics to perform deep analysis of each and every thread, deprioritizing lines that don't matter and highlighting the most interesting ones.
We then went several layers deeper, giving you precise information on the performance of the devices and operating system that your apps run on.
Often, the cause of your crashes goes beyond the device model or operating system. With Crashlytics, you gain even deeper insights – for example, if your app only crashes in landscape mode, or if the proximity sensor is always on. You can resolve crashes caused by more complex factors, like rooted or jailbroken devices, memory, version-specific issues, etc. – factors you would not otherwise have visibility into. By having this insight, you’d be able to ignore an issue that only occurs on jailbroken devices or focus on how things like orientation and memory can be indicative of what is causing the crash.
Dynamic, real-time notifications
Critical issues require your immediate attention, and you just never know when they might occur. With real-time alerts on your web dashboard, there’s no need to wait days for a crash report: we’ll notify you with what’s important so you can fix the crashes that affect the most users as they happen.
Unlike typical notification systems, your alerts will automatically update themselves in real time, grouping crashes by type so they don't pile up as subsequent crashes come in. You’ll know exactly how many new crashes there are and can scan through them with minimal effort.
Find reports you need, when you need them
Context is king when debugging crashes, and knowing the values of critical variables in your app, such as the level of the game the user got to or the byte size of the last photo they took, can help you shave hours off your debugging time. Also, it’s helpful to know which of your users experienced a given crash to help them resolve the issues and keep them happy.
With Crashlytics, you can instantly locate specific crashes with custom keys and user information using our real-time search.
Of course, you can also find crashes by file names, method names, line numbers or issue notes. Our search functionality empowers you to hunt down the important issues and know precisely what happened leading up to the critical moment.
World-class service: more than just a tool
Instead of a tool that merely displays stack traces or data charts, we built Crashlytics into a full service that makes your life easier. Not only can you search for and fix the most important issues in real time, but more importantly, you can easily collaborate with your team to tackle these issues.
When a critical bug comes in, the last thing you want is to struggle with sharing that crash report with your team. We’ve made this incredibly simple within your web dashboard, so that you can invite multiple members – all at once – to join your org. And in just two clicks, you can share the intricate details of each crash with your team, either by sharing the report via email (we generate for you!), or using our short link (crashes.to/...) within your favorite IRC client.
On top of email and shareable links, you can seamlessly share your reports through Slack or directly into JIRA, Hipchat, and more through our third-party integrations. Besides collaboration tools, we also integrate with project management services you use every day – like Trello, GitLab, and more – so you can manage your apps with minimal effort.
But as an app developer, understanding your app’s performance starts before you launch. That’s why we built Beta. Not only can you easily control the list of testers you send your app builds to and track their progress, but you can also hone in on those crashes with the greatest impact on your testers.
In just one click you’ll be in your Crashlytics Issues dashboard, with all of our deep analysis tools to help you debug the most complex crashes.
With Beta’s deep integration with Crashlytics’ crash reporting and its crash-to-tester functionality, you can instantly identify the individual tester who experienced a specific crash right within your crash reports. Going one step further we automatically tag all crashes of your beta builds with your testers’ names and email addresses so you can trace the exact steps and situation your testers were in when they encountered the issue.
Finally, thank you.
Since the birth of Crashlytics, we’ve kept to our passion for building services that developers love. This major milestone is just the beginning.
Thank you for being part of our journey. We look forward to continuing to support you in building even more amazing apps!