-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Description
There are considerations around whether the location we currently have debug_id under is a good location. It is now located under event.exception.values[].stacktrace.frames[].debug_id. While it is currently not used, there are worries (mainly by @mitsuhiko and @jan-auer) that having a JavaScript-specific field in the stack frame protocol will complicate many things in our code base.
As of now, the better alternative seems to be putting the debug_id mappings inside the Debug Meta Interface. Here we would have an image type that maps from abs_path (of the JS source file) to debug_id (an identifier for the source map in the backend). Develop PR for more context.
There is a potential issue we may face down the line:
There is a good chance that the filename of a stack frame and the source_filename value of the Debug Meta mapping will not match, especially since we provide a dedicated API with the RewriteFrames integration to manipulate the file path in order to match source maps in the cases where the path may be dynamic. Essentially this means using the new debug_id approach alongside the RewriteFrames integration will in many cases not work.
The alternative solution is to keep the debug_id inside the stack frame object, completely disassociating the filename from source map resolving.