Browser Agent v998

Released on: 
Thursday, November 3, 2016 - 13:00

Notes

The Browser Agent, sometimes called the JS Agent, has multiple variants: Lite, Pro, Pro+SPA. Unless noted otherwise, all features/improvements/bug fixes are available in all variants of the agent.

New features

  • Added the setCurrentRouteName API method [relevant only for Pro+SPA]: The agent now has an API method to set the current route name for the page. This api can be used to set the previousRouteName and targetRouteName for BrowserInteraction events.

For details on how and why to use this API, see our Browser SPA API Docs

Improvements

  • Disabled insecure communication with New Relic: Previously the agent would send RUM data to the router without TLS if the request was initiated from an insecure page. Now the Browser Agent will always use TLS connection when transmitting data.
  • Browser Agent no longer mutates the attributes object passed to the addPageAction API: Previously the agent would mutate the attributes object passed to add page actions by adding the default and page attributes onto this object.

Bug fixes

  • Fixed a compatibility issue with zone.js: Previously when the Browser Agent and zone.js were both included on a page, additional event handlers would be triggered twice. For example, when event handlers were added as properties, such as onreadystatechange, these handlers would be triggered twice in some browsers. This issue has now been resolved.
  • Fixed a bug with cross-frame callbacks: Previously, when adding event handlers for events in iframes, the agent would attempt to wrap the provided callbacks. When the wrapping logic called the callback belonging to another frame, a permissions exception would be thrown. The agent will now only wrap callbacks created in the same frame.
  • Fixed a memory leak when the Browser agent fails to load correctly

How to upgrade

To upgrade your agent to the latest version, see Upgrade Browser agent.