Backtrace Blog

Backtrace technical docs, conferences, and industry news.

Charge Up Electron crashReporter

Back in May, we announced support for Breakpad, Crashpad, and minidump files. In that announcement, we included our official support for developers that maintain Electron Apps as well. It didn’t take long for companies building on Electron to sign up, and we’re thrilled to see them already successfully finding and fixing crashes through Backtrace. David Roe from Team.biz, a messaging app using Electron, was kind enough to share his experiences using Backtrace to make his Electron crashReporter submissions actionable.

Fundamental Properties

Team.biz Logo

In their own words:

Team.biz is a messaging app for teams and companies. We help teams and staff within small businesses communicate with each other… you can use just one app, Team.biz, for communicating. You don’t need one “chat app” and a separate “texting” app.

The Team.biz desktop apps use Electron to deliver their web interface. Prior to Backtrace, they weren’t using anything else to diagnose native app failures. David considered building his own minidump server—which is something we hear quite often—but ended up abandoning that exploration once he found Backtrace.

Don’t Bohr Long Setup Times

As a team of mostly developers, we understand how busy you are, so one of our primary goals with building out support for Electron is to make it as simple as possible to get started. You just need to sign up with Backtrace and point your Electron crashReporter to our URL. This takes just minutes.

Electron Setup

As a case in point, for David, the setup took “Less than an hour from start to finish”. He mostly leveraged our integration docs as well as Electron docs for setup.

Zero Resistance

In addition to setting up your Backtrace instance in minutes, Electron users also don’t need to worry about managing symbols; Backtrace automatically does this for you. Our platform downloads the correct symbols for teams using release builds of Electron so that you can always make sense of your crash data. One fewer thing for Team.biz to manage!

Reproducibility: Negative!

…our developers don’t have time to waste. We felt that the time walking through multiple scenarios to back into and “reproduce” reported bugs before fixing them was inefficient.

Imagine a user notifies you of an intermittent crash that only occurs in certain instances. The problem is, you don’t know under what circumstances! In Team.biz’s case, investigating this issue—which started with attempting to reproduce the problem—was even more costly as it only occurred on a C-level exec’s device. It can be nerve-wracking to beg your C-level to let you hook up a debugger to their workstation while you try and reproduce the issue.

Instead of relying on reproducing the issue, David used the Backtrace web UI to ultimately track the issue down from the relative safety of his own machine. The Backtrace web UI surfaced important information for diagnosing the problem, including: the stacktrace, default Electron attributes, custom attributes, and OS, Electron, and app versions.

Backtrace Web Debugger showing callstack, standard/custom attributes, and OS/Electron/App versions

Crash Data: Lost in Orbit

Getting access to crash data is an important step in diagnosing root cause. Have you ever been notified of a crash but aren’t provided additional details? How often are you successful getting the logs from your end user? In the case for Team.biz, they partner with a third-party tester, and it wasn’t always easy to get access to the logs when a test encountered a bug. In the case of a crash, Backtrace automatically captures this data, and allowed Team.biz to explore this through our web UI and expedite resolution.

In short: don’t rely on end users to submit your log data. Our hosted solution collects, dedupes, and contextualizes crash reports generated from Electron apps.

Query our platform to reveal trends and details of your Electron crashes.

Electron? It’s Elementary

We’re excited to share success stories from Electron App developers. In the case of Team.biz, they benefit from an easy-to-integrate platform that served as a single source to capture and explore their Electron crash data. David no longer depended on logs or access to others’ machines: when a crash occurred, he could immediately start diagnosing the issue, cutting down on his time to resolution.

We have a more comprehensive write-up of our Electron support in the works, but in the meantime, if you are also building apps with Electron, come check us out. Like Team.biz, you can start collecting crash data within minutes, and you’ll no longer need to rely on your end users submitting logs or reproducing crashes to fix your inevitable bugs.