New Relic Real User Monitoring for single page web app
How are people using New Relic's Real User Monitoring in single page web apps built with Backbone, AngularJS, and such?
Let's say it's a backbone frontend with a rails backend. The entry page will give us load time break down, and then as the user interacts with the page it calls additional web end points. For example, you enter via /home and when you click a link to /about it calls a web api which provides data for the page and backbone's view is updated with new dom elements. You can also go directly to /about.
- Although there's just one controller, can New Relics provide page load time breakdown by urls (/home and /about)?
- Once the page is loaded, can New Relic measure performance of updating part of the page, such as a backbone view? I understand the injected js can't do this, but does New Relic provide additional JS libraries to finetune measurement?
Are there any other options?
I've been looking in to the same thing myself recently. The line from New Relic (or at least the line I've had in support tickets from them) is that support is very limited (particularly if you're caching your frontend).
That said, there are a few other options:
- Third party library that hooks in to New Relic specifically for Single Page Apps: https://github.com/uken/newrelic-timing
- Pingdom just launched RUM for SPAs too: https://www.pingdom.com/
There's also Caliper (http://caliper.io) but they are yet to launch with support for Angular
UPDATE: You Should also check out the latest New Relic docs regarding supported APIs in the Browser Agent: