5

Can you help us please with these great tools integration. Our React Native iOS project has been using Crashlytics for several months and it works well in case of native crashes but in case of JS exceptions it required some customization of react-native logging (this Medium articles helped a lot to reach as verbose JS output as possible). In the end we didn't have as good JS errors output as we would like to have.

So we decided to integrate Sentry as well. It was done successfully, but it seems that Sentry outpaces Crashlytics catching crashes before it: we can see crashes in Sentry dashboard but no in Crashlytics' one.

My question is the next: is it possible to integrate both Crashlytics and Sentry for both case - native crashes AND JS exceptions?

Thank you in advance.

UPD 06.03.2019 Finally, we've come to the usage of only Sentry because of the next reasons:

  1. first of all, it doesn't require any special code for the JS events & errors well-formated output, whereas Crashlytics does;
  2. second, it doesn't require any manipulation with dSym files released (and probably encrypted) via Testflight;
  3. third, it also catches native crashes and provides a verbose output as well.
styleofspur
  • 123
  • 2
  • 11
  • 1
    Two years have passed since you have written your question so you have probably gained much more experience. I want to integrate crash reporting in my react native app. Do you still recommend Sentry? I used Crashlytics briefly 18 months ago and I remember that it did caught crashes caused by the react-native js code. Am I wrong? Are you saying that if my js code causes a crash (e.g. devide by zero...), Crashlytics won't report it, even today (I assume that improvements were made to Crashlytics in the last 2 years)? Also, any idea who it is pricing-wise, crashlytics vs. sentry? – Yossi Sep 05 '20 at 09:56
  • 1
    @Yossi I must say that when we decided to leave only Sentry, we have never been sorry to have done so. I am not informed about the pricing, but in general, we're completely happy and satisfied with Sentry. We have never had any problems logging any native or JS errors there. Of course, maybe Crashlitics have improved something recently. I know it's become a part of the Firebase, so maybe integration became easier. But Sentry is a really cross-platform solution - https://docs.sentry.io/platforms/. So, you can handle errors of the whole system, not only the RN part. – styleofspur Sep 06 '20 at 07:20
  • Thanks much, @styleofspur! One last question (promise ;): how much do you pay for Sentry per month? How many users are running your app simultaneously? Or any other info that can help me understand how much I will need to pay... – Yossi Sep 07 '20 at 09:32
  • 1
    @Yossi no problem, you're welcome :) Sentry costs, as I know, don't depend on the number of users running the app simultaneously. https://sentry.io/pricing/ - we use a **Team** package – styleofspur Sep 08 '20 at 13:17
  • Thanks a lot! :) – Yossi Sep 08 '20 at 17:52

2 Answers2

2

Sentry has support to React Native which includes the JS and Native errors (both iOS and Android).

I'm totally biased as I work for Sentry but it seems to me, based on your requirements and the two options you listed, Sentry is the one which has the support you need.

Bruno Garcia
  • 6,029
  • 3
  • 25
  • 38
  • [Bruno](https://stackoverflow.com/users/1977143/bruno-garcia) Hi. Thank you for the answer. Can you tell me please should I upload dSYM files to Sentry after TestFlight processed my react-native build? If I don't do that I still have output but it's not good enough. – styleofspur Aug 10 '18 at 20:45
  • 1
    We (Sentry) also have a fastlane plugin which handles the dSYM upload. https://github.com/getsentry/sentry-fastlane-plugin – HazA Aug 13 '18 at 13:18
  • @BrunoGarcia Two years have passed since you have written your answer so you have probably gained much more experience. I want to integrate crash reporting in my react native app. Do you still recommend Sentry? I used Crashlytics briefly 18 months ago and I remember that it did caught crashes caused by the react-native js code. Am I wrong? Are you saying that if my js code causes a crash (e.g. devide by zero...), Crashlytics won't report it, even today (I assume that improvements were made to Crashlytics in the last 2 years)? Also, any idea who it is pricing-wise, crashlytics vs. sentry? – Yossi Sep 05 '20 at 09:56
  • Sentry focused a lot in the Mobile ecosystem these last two years. Release Health was added and Performance is landing for mobile soon. But as a proud employee, working with mobile SDKs, I'm bias. Also, I don't use Crashlytics to compare. – Bruno Garcia Sep 05 '20 at 17:43
0

Mike from Fabric here. On iOS, only one uncaught exception handler can be safely installed and there will be conflicts, like you're seeing if multiple handlers are installed.

Mike Bonnell
  • 16,181
  • 3
  • 61
  • 77
  • [Mike](https://stackoverflow.com/users/3975963/mike-bonnell) Thank you for answer. I found that locally it works well: both Sentry & Crashlytics report errors & crashes. Problems begin when we have TestFlight builds: 1. if we have only Sentry it reports crashes automatically as well as JS stack in very good way 2. if we have only Fabric it reports crashes only after manual upload of dSYM file (as I know TestFlight re-creates them, right?) 3. if we have both only Sentry works in TestFlight build, no data from Crashlytics at all, even no message about missed dSYMs. – styleofspur Aug 10 '18 at 15:09
  • My recommendation is still not to do it. It's risky behavior. We don't have React Native support so it doesn't surprise me that the JS stack traces aren't ideal. My guess would be that Sentry is swallowing our uncaught exception handler. – Mike Bonnell Aug 10 '18 at 15:32
  • [Mike](https://stackoverflow.com/users/3975963/mike-bonnell) Got it, thank you. Is there any way to automatize dSYM files upload to Fabric Crashlytics from TestFlight? – styleofspur Aug 11 '18 at 11:46
  • You can do it via fastlane - https://krausefx.com/blog/download-dsym-symbolication-files-from-itunes-connect-for-bitcode-ios-apps – Mike Bonnell Aug 12 '18 at 18:11
  • 1
    Thank you [Mike](https://stackoverflow.com/users/3975963/mike-bonnell)! We'll try – styleofspur Aug 13 '18 at 07:56