Highlight's Full-stack integration allows you to get visibility into errors and issues across your whole stack, not just your frontend. These errors are paired with outgoing requests on your frontend so that you can understand:
- Exactly what happened when a user reports a bug
- Where specific errors are initiated and what caused them
See errors and their relevant details in the same session timeline where you can find out exactly what a user was doing that led up to the issue.
Below is an example of a backend error (thrown in go ) ,mapped to an actual network request on a user's frontend.
All you need to do is enable a flag in Highlight and confirm the version of Highlight you're using on your client to allow the frontend to instrument any requests to your backend.
Required Highlight highlight.run version: >=2.8.1
Set the tracingOrigins option to an array of patterns matching the location of your backend. You may also simply specify true, which will default tracingOrigins to all subdomains/domains of the url for your frontend app.
Backend changes are dependent on the underlying language/framework used on the server-side codebase. All you need to add is a middleware and code to capture errors.
Below are solutions for what we support today.
- Ensure tracingOrigins and networkRecording are properly set.
- Ensure your backend has CORS configured for your frontend hostname, explicitely allowing header x-highlight-request.
- For debugging the backend SDK, enable verbose logging. For example, in go, add highlight.SetDebugMode(myLogger)