Browser monitoring's JS errors UI page shows you where your JavaScript errors are happening, and provides tools to help you figure out the root cause. You can also query and create dashboards of JS error data in the query builder, or use the browser API to monitor handled errors.
View JavaScript errors
To examine JavaScript errors:
- Go to one.newrelic.com > All capabilities > Browser > (select an app) > JS errors.
- Use the available options in the UI to examine what may be causing the errors.
- Optional: Review event trails or stack traces in the UI.
- Optional: Query and create dashboards for JS error data with the query builder, or use the API to monitor or log errors.
Available options in the UI include:
If you want to... | Do this |
---|---|
Search through long error lists | Use the Search box so you can more quickly find and fix errors by keywords, URLs, etc. |
Group and filter attributes |
|
See notable anomalies and patterns | The Error profiles table shows notable statistical variations, such as browser versions or devices that have errors occurring more frequently than normal. |
Examine error details |
|
Examine events leading up to error | The Event Trail shows the browser interactions, AJAX calls, and traces that led up to an error. |
Decode your minified JavaScript | If your JavaScript is minified, the errors on the JS errors page may not be very useful. To decode minified JavaScript and make these error stack traces more useful, you can upload JavaScript source maps to New Relic. |
one.newrelic.com > All capabilities > Browser > (select an app) > JS errors: Use this page to group and filter errors, explore stack trace details, and examine trends.
Query and visualize JS data
New Relic saves JS errors as event data. This allows you to query your error data in the query builder. To run NRQL queries and create dashboards to view or share, query the JavaScriptError
event type in the query builder.
Use API to monitor handled errors
To notice or log your app's handled errors or other miscellaneous errors, use the browser API's noticeError
call.
Review event trails
Important
SPA monitoring must be enabled.
The event trail shows the browser interactions, AJAX calls, and traces that led up to a JS error. This can help you troubleshoot the root cause of errors.
one.newrelic.com > All capabilities > Browser > (select an app) > JS errors > (select an error) > Error instances: With SPA monitoring enabled, the event trail shows you the activity leading up to an error.
To view the Event trail (if available): Go to one.newrelic.com > Browser > (select an app) > JS errors > (select an error) > Error instances. The event trail will not be visible if there are no events in the event trail.
For example, if a JS error is occurring after an AJAX request that provides an error message, it could be that your AJAX request doesn't contain the right information. This results in a JS error due to a failed AJAX call.
View stack traces
Stack traces can show you if an error is breaking important functionality, or if it's a less important error. To view an error's stack trace (if available): go to one.newrelic.com > All capabilities > Browser > (select an app) > JS errors > (select an error) > Error instances.
Global and generic errors
New Relic wraps JavaScript functions to get information about thrown errors via the stack trace. If errors aren't thrown, they won't be available. For example, if you have an AngularJS application, follow the troubleshooting procedures when AngularJS errors do not appear in the UI.
For some older browsers, the following errors may be unavailable:
SyntaxError
orScript error
: These occur while the script is loading, so they do not produce a stack trace.- In-line JavaScript or event handler errors: These are unwrapped.
- Errors thrown from third-party scripts that reside on another domain are not available.
- Errors occurring on older browsers: These may not be able to provide a usable stack trace. In some cases, they may not provide a stack trace at all.
Error collection is done by wrapping JavaScript functions, so errors thrown by the browser at a lower level (such as cross-origin resource sharing errors) also are not available.