-
-
Notifications
You must be signed in to change notification settings - Fork 337
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Expo 50: Events are processed on device, but never sent to Sentry (worked on SDK 49) #3698
Comments
As an addition - we also enabled automatic instrumentation with
|
Hi @csvan, You should be able to see the request to Sentry in the network tab. Sadly, I'm unable to reproduce it. Could you share the exact steps to reproduce the issue? Or share the sample app you created to test this? |
Working in a corporate environment, so sadly cannot share anything as of now. The steps are unfortunately not more than following the setup instructions as per the documentation for now. Just to be clear - should this work even when running locally with Metro? Also, can we somehow manually trigger a sending? Anything else we can do to debug? |
@csvan Thank you, I misunderstood, I thought you tried it in a new empty app. Yes, it works in Expo Go, native builds with Metro, and release builds. Are you migrating from The I would recommend using Logcat as that will give you more insides into the sending process. iOS is working as expected? Or your app is only for Android? |
We run both Android and iOS, neither is working.
We have tried both in separate trials on this project - we initially used
Dug through logcat but sadly I cannot find much there either. However, intercepting events in Here is an example event:
|
@krystofwoldrich we have made som progress - it works in Expo Go, but not in Dev or Release builds. This applies both to emulators and physical devices. The main difference is still that when using Expo Go, we actually see the events being sent, whereas this does not happen in the other builds. The overall logs between the two otherwise look largely the same. We don't really do anything magical or special in either our dev or release builds, but do you see something that could potentially interfere there? Just brainstorming here, but I am thinking about this part of the docs (https://docs.sentry.io/platforms/react-native/):
Could there be something in those builds that "fools" Sentry into thinking the device is offline or the like, so that events just get stored up but never sent? For example, I see this in the logs when running Expo Go:
UPDATE: I tried removing all plugins and other non-essential custom stuff for our dev builds (including the Sentry plugin) to make sure those changes did not interfere with Sentry. Unfortunately, it still does not work. |
The
That confirms, as you mentioned that the issue is in the native layers.
When the Do you see Sentry native logs in logcat or only the ones from |
@krystofwoldrich thanks for the reply, I indeed think I found something logcat (dev build on a physical device):
Looking at the logs on our Sentry backend, it's the same error:
This appears to be a constant for ALL outgoing envelopes. UPDATE: If it helps, this server also accepts gzip compressed content from I inspected the incoming requests and the headers are these (redacted for company stuff):
|
@krystofwoldrich issue is resolved. The problem was that our reverse proxy decompressed the gzip packages sent by the React Native client but kept the A lot of thanks for your help and patience in trying to track this down! |
OS:
Platform:
SDK:
@sentry/react-native
(>= 1.0.0)react-native-sentry
(<= 0.43.2)SDK version: 5.20.0
react-native
version: 0.0.0Are you using Expo?
Are you using sentry.io or on-premise?
If you are using sentry.io, please post a link to your issue so we can take a look:
[Link to issue]
Configuration:
(
@sentry/react-native
)or
(
react-native-sentry
)I have the following issue:
We have configured
@sentry/react-native
on an Expo SDK 50 app according to the provided instructions. However, whiledebug
shows that events are (seemingly) being processed, nothing is sent upstream. We have manually added several instances of e.g.Sentry.captureMessage('Hello world!')
andSentry.captureException(new Error('some error'))
in the code, and we even get warnings at times that Sentry dedupes events when these are being run repeatedly (again, showing that Sentry is seemingly working and picking them up).Opening the Expo JS debugger and inspecting the Network tab, we can see that Sentry is (I guess correctly) calling the
symbolicate
endpoint on localhost when these checkpoints are invoked. However, there are no network calls made to our Sentry instance, possibly ruling out a direct communication issue. The events are simply never sent.To rule out that this is isolated to running locally with Metro, we also did a Preview build using EAS and installed this on a physical device on a public network. Again, as far as we can tell nothing is sent - no events are showing up in our Sentry instance.
If the error is on our side, it would be very helpful to know how we can debug this, if at all.
Finally, this DID work during a previous trial we did on SDK 49, before the new setup instructions for SDK 50
Steps to reproduce:
Actual result:
Sentry processes event in app, but never sends them to Sentry
Expected result:
The processed events should be correctly submitted to Sentry
The text was updated successfully, but these errors were encountered: