For mobile developers, the work of issue resolution is brittle and unpredictable. Issues come from every angle, from the CEO who believes a problem affecting them is relevant to all users, the scathing customer review, or internal tooling. Yet, internal tooling often still seems to leave developers in the lurch during debugging, which remains as unpredictable as ever. Developers are often left with little to go on besides an educated guess.
But how long does it take to debug this way?
If it takes too long, the user might leave the platform because of their frustrations. And developers are equally frustrated with this process. They rarely know what tool will result in a fix or how long the process will take. Will it be two release cycles of logging to identify the issue, followed by another cycle to resolve it? Mobile developers frequently find themselves jumping back and forth between tools like Firebase, Mixpanel, etc., just looking for more actionable data.
We've previously covered how you need a single source of truth for your mobile app. In that piece, we go over how Embrace's powerful alerting system immediately identifies any user-impacting issue.
But identifying an issue is only half the battle. What about the other half—Resolution?
Variable Time to Resolution with Firebase
When developers work with tools similar to Firebase or Crashlytics, their biggest pointers for resolving an issue are stack traces and logs.
However, it’s highly improbable that previous logging will provide a solution to a completely new issue.
And stack traces are rarely effective, mainly working for crashes, which are a problem of stability rather than issue resolution. Besides, Firebase’s stack traces are often corrupted—in the case of Watchdog crashes—or unhelpful, as with ANRs.
So, after discovering and identifying an issue, developers are left to drop logs in their application and are forced to wait another release cycle to find out if these logs will will even be helpful.
Then, if they’re lucky and the logs point to the solution, the developer needs to write up the code and push it for the next release. In this case, they have to closely monitor the next release to make sure the issue doesn’t resurface.
This is another tough process with Firebase or Crashlytics, which don’t offer alerting that will easily let you know if an issue resurfaces.
Embrace Offers You a Predictable Work Pattern with a Comprehensive Platform
Instead, developers need proactive tooling that anticipates the fractured landscape of mobile and offers observability and debugging help in one platform. With Embrace, you get a simplified workflow. You get to see:
- Every issue—no sampling involved.
- Alerts based on thresholds that are configurable by any metric, user segment, region, and property.
- Instant access to network/API calls out of the box.
But even when you hear about every issue, the process isn’t noisy. Fine-tuned alerting and the ability to see every user affected grants you the incredible ability to prioritize between relevant and trivial issues.
If an issue is trivial, then that’s great! You’ve solved the issue: It wasn’t an issue in the first place.
Say Firebase reports a crash occurring in thousands of sessions. You might go on a wild goose chase to solve that. But, with Embrace, you would see that this crash is constrained to three users who have yet to upgrade to your latest release. Maybe the issue has even been solved already!
But imagine you’ve already determined the issue needs to be fixed. So, what’s in your arsenal?
That's where Session Replay comes in, a graphical representation of all of the user actions (e.g. taps and swipes) and technical events (e.g. network calls, logs, CPU, memory) that a user encountered while using your application for that session.
Using this data, developers can immediately reproduce the entire user experience for every affected user. Logs are still an option, but Session Replay gives developers the information necessary to understand the flow and where the app may have broken down.
Additionally, we have enhanced crash reporting that will let you see commonly underreported and misidentified issues such as ANRs (where you’ll see multiple stack traces throughout the duration of an ANR) or even automatically fix a crashed WebView.
Each of these pieces, from alerting and prioritization to user sessions and debugging, simplify the issue resolution process for developers. Instead of needing to jump from tool to tool to understand how a user might have interacted with your application, developers get that picture out of the box.
Developers Need a Predictable Work Pattern
A major theme in mobile is that the landscape is fractured. Users across the globe differ in levels of network connectivity, devices, and behaviors. But, with a more comprehensive tool that takes this fractured landscape in stride and puts mobile first, the resolution process does not have to be complicated.
Don’t get stuck in an infinite loop of logging and pushing fixes. Use Embrace to get back to achieving your business objectives faster and building the features you want to build.
How Embrace Helps Mobile Teams
Embrace is an observability, monitoring, and developer analytics platform built for mobile teams. We are a one-stop shop for your mobile app’s needs, including error debugging and monitoring app performance and feature releases.
Want to see how Embrace can streamline your issue resolution? Request a customized demo and see a path to improvement immediately!