React Native Error Monitoring

Zalmy Muskal
2 min readNov 6, 2020

When it comes to developing an app one of the most frustrating things that could happen is not knowing where an error is coming from.

Errors are software engineers' bread and butter. It is our guidepost to what we are doing wrong and what we are doing right. It forces us to closely examine our code to see what is wrong and make adjustments accordingly. Something that happens to me quite often when I see an error and I am going over my code with a critical eye is that I end up fixing up other lines of code that have nothing to do with the error.

So when I started uploading my app to TestFlight or to the Google Play Store and started testing my app, and something went wrong, I was at a loss for what to do. How do I know what caused the app to crash?

That is when I found Bugsnag. There are a couple of different options that you can google but I landed on Bugsnag and it works beautifully.

Bugsnag is a monitoring system that is swift and straightforward to use. It gives you a stack trace for every crash and in addition, they have breadcrumbs to help you understand what led to the crash. Most importantly Bugsnag supports dSYMs for iOS, Proguard, DexGuard, + R8 mapping files for Android, and source maps for React Native JavaScript bundles. This means that when an error happens you can see the exact line of code that is causing it.

Finally, I also recommend adding Firebase Crashlytics. This is a lightweight, real-time crash reporter that helps you track, prioritize, and fix stability issues that erode your app quality. Crashlytics saves you troubleshooting time by intelligently grouping crashes and highlighting the circumstances that lead up to them.

Sometimes being able to look at a problem from more than one angle is needed. In the app I am currently working on I am using Firebase so adding Crashlytics was a no-brainer. There were times I figured out the issue from Crashlytics and not Bugsnag.

What Error Monitoring do you use or prefer?

I hope this was informative and sets you on your quest to find and fix errors. Happy coding!