BugSnag supports unminifying and symbolicating stack traces using source maps and Breakpad symbol files to show a full stack trace with methods, file paths, and line numbers for JavaScript and native errors.
Most modern bundlers, minifiers and compilers support the generation of source maps:
devtool
option)--debug
flag)--sourcemap
flag)sourceMaps
option)--source-map
option)sourceMap
option)When generating source maps you normally have the option to include the source content within the source map or leave it in the external source files. If you leave it external BugSnag will need access to those source files to display the context of the error (without it we will just display the source file and line number in the stacktrace).
Source maps can also be encoded directly into the JavaScript file rather than linking to a external file, known as inline source maps. This is sometimes used for development purposes or in certain bundling frameworks like Browserify. BugSnag also supports source maps of this type.
You can upload your source maps to BugSnag using one of the following options:
Alternatively, you can interact with our upload API directly.
You can review a list of your uploaded maps, and delete any unneeded ones, within your dashboard: Project Settings -> Source maps
.
You can upload Breakpad symbol files to BugSnag to symbolicate native errors generated from modules with native extensions or spawned subprocesses using one of the following options:
BugSnag has standard Electron framework symbols and can symbolicate framework stack frames automatically. However if you are using BugSnag On-premise or a custom fork of Electron you will need to upload the relevant symbols. See Uploading Electron framework symbols for On-premise.