Hey community! I’m looking for ideas on the following problem.
I’m trying to figure out a way to detect browser extensions that break virtual DOM (part of the GitHub - jinjor/elm-break-dom effort). The difficulty is that I don’t have access to browsers of users that have issues and can’t easily tell what extensions they have. From Sentry I know the errors happen, but without much details. So I thought it would be smart to capture a snapshot of the DOM as HTML string whenever there is a runtime error. There is a way to store it in a Sentry report. Having those snapshots I could look for traces of extensions (class names, etc.).
In principle I got it working. The problem is that when something messes up the DOM controlled by Elm, there isn’t just one exception thrown. It seems like they are being thrown in an endless loop - thousands per minute.
Here is a sample application that break DOM and demonstrates it (source code). If you click on any of the buttons, the errors will start. Open the console to see, but be careful - it will quickly consume a lot of memory.
So sending all those errors to Sentry with relatively large payloads will quickly overflow my account.
I will appreciate any thoughts about it.