-
-
Notifications
You must be signed in to change notification settings - Fork 11
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
Spotlight overlay crashing due to browser being out of memory #521
Comments
Hi @xt0rted and thanks for the report! So there are a few things going on:
That said there are still two major issues we should fix on our end:
Finally, we just introduced |
@xt0rted thanks again for the report and apologies for the issue. Don't know how I didn't catch this earlier! A new patched version is being released right now and hopefully by the time you read this message, it should be available. |
Our console integration was designed to work on the same page with the Spotlight UI. It was using a naive filtering method to avoid infinite loops from Spotlight debug mode logger itself. Moreover, it was not taking the `sidecarURL` option, was defaulting to `localhost:8969` as the sidecar URL. This patch overhauls the two, leveraging the fact that they are on the same page. This means switching to the local event-based message passing between the UI and the console integration, removing the need for `fetch` calls and passing around the sidecarURL option. It also overhauls the Spotlight logger to always try to use an unmodified console implementation, removing the need for hacky filtering on the console integration side. ref #521.
@BYK I just gave v2.5.1 a try and the issue seems to be resolved. With the recent changes should I be seeing events logged to my instance of sidecar that's running inside docker, or are they only stored in the browser now? I'm running a .net backend with angularjs frontend, and I'm seeing the .net stuff logged to docker, but the angular stuff doesn't seem to show up over there. I see both the .net & angular stuff in the UI inside my site though. |
@xt0rted thanks a lot for reporting back! Yes, that's exactly what I'd expect to see if Spotlight UI is running on the same page with your front end. We made this change to let people try Spotlight with just a script tag on their front end. We bypass the sidecar when we know we can talk to the Spotlight UI directly. |
I recently added Spotlight via the CDN with Sidecar running in Docker to an old AngularJS application using Sentry 7.99. At the time it worked great, then the branch sat for a couple weeks. Today I picked it back up and now devtools keeps pausing saying it's doing that to prevent an out of memory crash. With devtools not open the tab just randomly crashes.
When devtools pauses it's always on one of these two lines:
spotlight/packages/overlay/src/App.tsx
Line 69 in 79d9beb
spotlight/packages/overlay/src/components/Overview.tsx
Line 22 in 79d9beb
Checking
prev
orintegrationData
showed it had over 150k items at one point. This happens without even interacting with the site. A fresh page load that sits for a minute can have 50k+ items in the list, and 3x that a few minutes later. This seems to be worse whentraceSampleRate
is set to1
instead of something lower, or just completely off.Nothing's showing in Sidecar when I go directly to http://localhost:8969/, but it is showing in the overlay on my site.
I was loading the latest version of the overlay from the CDN (as the docs show), but if I revert back to v2.3.0 the issue goes away. This seems like something related to #509 but I'm not sure what exactly changed in later versions to stop Spotlight from sending to the Docker instance of Sidecar.
I'm not using the
iife
bundle because I wanted to change the config. This is how I'm loading it:The text was updated successfully, but these errors were encountered: