v1.270.1
Bug fixes
Remove undefined agentRuntime in Session Trace
Remove an outdated reference to agentRuntime
variable in the Trace feature released in 1.270.0. It caused undefined errors in sub-cases wherein max harvest nodes were reached.
Support statement
New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Older releases will no longer be supported when they reach end-of-life. Release dates are reflective of the original publish date of the agent version.
New browser agent releases are rolled out to customers in small stages over a period of time. Because of this, the date the release becomes accessible to your account may not match the original publish date. Please see this status dashboard for more information.
Consistent with our browser support policy, v1.270.1 of the Browser agent was built for and tested against these browsers and version ranges: Chrome 119-129, Edge 119-129, Safari 16-17, and Firefox 121-131. For mobile devices, v1.270.1 was built and tested for Android OS 15 and iOS Safari 16-18.
v1.270.0
Features
Remove supportsSendBeacon runtime property
Removes the supportsSendBeacon runtime property from our agent code. We no longer officially support browsers that cannot use the sendBeacon method, so there's no point in checking for it.
Add Firefox to LCP test matcher
Add Firefox versions 122 and above to LCP test matcher since versions 122 and above now support collection of LCP web vital timings.
Remove 'pageHide' from page end-of-lifecycle listener
Remove pageHide
from page end-of-lifecycle listener since browser agent support for Safari 14.4 is deprecated
Move deregisterDrain method to feature-base
Moves the deregisterDrain
method in order to standardize the implementation pattern to match the drain method.
Relocate aggregator from loader and improve agent internals
Styling and architectural changes that will reduce agent loader size by moving the Aggregator module to async chunk and removing the need for some configuration getters in the features. No behavioral change or significant performance impact from the agent is expected.
Support statement
New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Older releases will no longer be supported when they reach end-of-life. Release dates are reflective of the original publish date of the agent version.
New browser agent releases are rolled out to customers in small stages over a period of time. Because of this, the date the release becomes accessible to your account may not match the original publish date. Please see this status dashboard for more information.
Consistent with our browser support policy, v1.270.0 of the Browser agent was built for and tested against these browsers and version ranges: Chrome 119-129, Edge 119-129, Safari 16-17, and Firefox 121-131. For mobile devices, v1.270.0 was built and tested for Android OS 15 and iOS Safari 16-18.
v1.269.0
Features
Include logging feature in micro agent loader
Allow the MicroAgent loader on NPM to utilize the logging APIs to manually capture log data.
Add instrumentation metadata to logging
Add instrumentation attribution to logging payloads to fortify categorization and billing calculations in New Relic platforms. These attributes are dropped during processing and before storing the data and as such don't affect customer billing rates.
Bug fixes
Only ever allow session traces to capture page load timings once
An edge case issue was resolved where session traces could include duplicate copies of the page load timings obtained from the browser timing APIs.
Handle Session Replay Security Policy Errors
Handle Security Policy Errors encountered by session replay when browser APIs have been natively disabled. This was also observed to happen in Chromium browsers that completely disabled cookie storage. Supportability metrics about agent internal errors are now captured as a biproduct of this work to help facilitate future improvements.
Support statement
New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Older releases will no longer be supported when they reach end-of-life. Release dates are reflective of the original publish date of the agent version.
New browser agent releases are rolled out to customers in small stages over a period of time. Because of this, the date the release becomes accessible to your account may not match the original publish date. Please see this status dashboard for more information.
Consistent with our browser support policy, v1.269.0 of the Browser agent was built for and tested against these browsers and version ranges: Chrome 118-128, Edge 119-129, Safari 16-17, and Firefox 119-129. For mobile devices, v1.269.0 was built and tested for Android OS 15 and iOS Safari 16-18.
v1.268.0
Features
Aggregate UserActions
Utilize sequential aggregation techniques when observing UserAction data to reduce ingest cost for customers.
Add UserAction to GenericEvents
Select user interactive events will be captured in this release. This is an extension of the GenericEvents feature meant to drive UI experience.
Bug fixes
Always return a string for custom stringify method
An internal mechanism used to convert JS values to string was returning undefined
for certain values, which may lead to errors for downstream callers when they are expecting a string. This is part 2 of a patch to ensure a string is returned.
Force generic events feature to clear buffer when unloading
Fixed an issue where the generic events buffer was not clearing when unloading. This affected a small portion of experiences where the agent was "unloading" due to the page losing focus, but not actually closing. Subsequent harvests when the page was re-focused would have the potential for duplicated data.
Support statement
New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Older releases will no longer be supported when they reach end-of-life. Release dates are reflective of the original publish date of the agent version.
New browser agent releases are rolled out to customers in small stages over a period of time. Because of this, the date the release becomes accessible to your account may not match the original publish date. Please see this status dashboard for more information.
Consistent with our browser support policy, v1.268.0 of the browser agent was built for and tested against these browsers and version ranges: Chrome 118-128, Edge 117-127, Safari 16-17, and Firefox 119-129. For mobile devices, v1.268.0 was built and tested for Android OS 14 and iOS Safari 16-18.
v1.267.0
Features
Upgrade to web-vitals v4
Upgrade to web-vitals v4. For more info, please see https://github.com/GoogleChrome/web-vitals/blob/main/docs/upgrading-to-v4.md.
Improve notifications of stylesheet status for session replay
The agent reports internal metadata about the status of stylesheets on the page when collecting session replay information. This process was spotty and the logic has been improved to make the metadata more consistent. The ability to turn off "inlining" the stylesheets has been removed, as that behavior is required for the UI to re-render the replay.
Add soft navigations to Browser-Agent loader
Add the Soft Navigations limited preview feature to the default Browser Agent
loader accessible via NPM.
Update TimeKeeper Source of Truth
Update the Agent's TimeKeeper to evaluate a timestamp provided directly by the consumer instead of a generic Date header, which should provide more control stability and granularity to the time synchronization processes.
Bug fixes
Improve reliability of customMasker
The customMasker method of the Session Replay feature has been fixed to be more reliable with DOM elements that do not fit web-standards, as to not throw errors when processing. Initial Replay harvests will now be gated until a valid snapshot is taken.
Stringify now returns an empty string if failed to transform
An internal mechanism used to convert objects to strings would return undefined if an exception was thrown during the process. This could lead downstream users of that method to throw errors if they expected the output to be a string. The utility method now always returns a string.
Support statement
New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Older releases will no longer be supported when they reach end-of-life. Release dates are reflective of the original publish date of the agent version.
New browser agent releases are rolled out to customers in small stages over a period of time. Because of this, the date the release becomes accessible to your account may not match the original publish date. Please see this status dashboard for more information.
Consistent with our browser support policy, v1.267.0 of the Browser agent was built for and tested against these browsers and version ranges: Chrome 118-128, Edge 117-127, Safari 16-17, and Firefox 119-129. For mobile devices, v1.267.0 was built and tested for Android OS 14 and iOS Safari 16-18.
v1.266.0
Features
Removing long task
Previously, an agent configuration turned on reporting of long tasks that took over 50ms. This functionality is being shelved effective this agent version. The configuration will no longer do anything.
Bug fixes
Remove nullish coalescing inside getter
Removed a nullish coalescing assignment in a class getter -- which even though is claimed to be supported -- behaved badly in old versions of webkit browsers like Safari 15, some versions of Mobile Safari, and old chromium iOS browsers that use webkit.
Support statement
New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Older releases will no longer be supported when they reach end-of-life. Release dates are reflective of the original publish date of the agent version.
New browser agent releases are rolled out to customers in small stages over a period of time. Because of this, the date the release becomes accessible to your account may not match the original publish date. Please see this status dashboard for more information.
Consistent with our browser support policy, v1.266.0 of the Browser agent was built for and tested against these browsers and version ranges: Chrome 118-128, Edge 117-127, Safari 16-17, and Firefox 119-129. For mobile devices, v1.266.0 was built and tested for Android OS 14 and iOS Safari 16-18.
v1.265.1
Bug fixes
Disable websocket wrapping
Fix websocket problems and breakage in application using other third party libraries dealing with sockets by removing the wrapping introduced in version 1.265.0.
Support statement
New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Older releases will no longer be supported when they reach end-of-life. Release dates are reflective of the original publish date of the agent version.
New browser agent releases are rolled out to customers in small stages over a period of time. Because of this, the date the release becomes accessible to your account may not match the original publish date. Please see this status dashboard for more information.
Consistent with our browser support policy, v1.265.1 of the Browser agent was built for and tested against these browsers and version ranges: Chrome 117-127, Edge 117-127, Safari 16-17, and Firefox 118-128. For mobile devices, v1.265.1 was built and tested for Android OS 14 and iOS Safari 16-18.
v1.265.0
Features
Standardized feature buffering behavior
We've established one pattern for holding data before harvests and for retry logic that can be shared by the all of the features. This reduces bespoke logic per feature and establishes a pattern for use with future architecture changes.
Add WebSocket
wrapper and supportability metrics
We added a wrapper to detect usage of WebSockets
. This is intended to help evaluate viability of the agent tracking WebSocket
data and its overall mechanism usage patterns.
Configure session replay to wait for DOMContentLoaded
We decreased the time spent waiting by triggering the session replay mutation observer wrapping on the DOMContentLoaded
event instead of the previously used window load event. This ensures wrapping is completed before the load chain.
Removed internal barrel exports
We reduced the loader bundle size by reworking the internal source code imports and exports.
Added payload size evaluation to generic events feature
We've changed data harvesting, where now harvesting occurs early when the payload reaches 64kb and and will harvests from sending if it exceeds the 1MB ingest limit.
Bug fixes
Fix duplicative log payloads on unload
Ensure agent clears buffer on page navigation unload harvests to prevent duplicative payloads from being sent.
Ensure drain target is a valid event emitter before subscribing
Ensure that the drain target is a valid event emitter to ensure that the .on
method exists and will not throw errors.
Telative timestamps in session trace
In rare cases where PerformanceNavigationTiming
API is undefined, session trace timing nodes would be reported using epoch timestamp values instead of relative timestamp values. This would result in a broken session trace experience in New Relic. If the PerformanceNavigationTiming
API is unavailable, the epoch timestamps will now be converted to relative timestamps accounting for user clock difference with New Relic servers.
Updated logging API function
Fix an issue where the logging API method would always result in an uninitialized agent warning and would not capture the log.
Security fixes
Apply obfuscation rules to session trace
A bug was introduced in version 1.259.0 where session trace data was not being processed through configured obfuscation rules. This fix ensures session trace data is properly obfuscated.
Potential areas where un-obfuscated data could be added to the session trace:
- When calling newrelic.addToTrace, the name of the trace event is a string provided by the customer.
- When capturing session trace nodes for ajax requests, the node will contain the current page URL excluding query parameters and hash fragments.
- When capturing resources being loaded on the page (javascript and css files), the session trace node will contain the URL of the resource excluding query parameters and hash fragments.
- When a user clicks a link on the page containing an href that includes a hash fragment and does not result in a hard page load, the href value of the link will be captured in a session trace node.
- When the browser agent captures an error on the page, the message of the error is included in a session trace node.
Support statement
New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Older releases will no longer be supported when they reach end-of-life. Release dates are reflective of the original publish date of the agent version.
New browser agent releases are rolled out to customers in small stages over a period of time. Because of this, the date the release becomes accessible to your account may not match the original publish date. Please see this status dashboard for more information.
Consistent with our browser support policy, v1.265.0 of the Browser agent was built for and tested against these browsers and version ranges: Chrome 117-127, Edge 116-126, Safari 16-17, and Firefox 118-128. For mobile devices, v1.265.0 was built and tested for Android OS 14 and iOS Safari 16-18.
v1.264.0
Features
Create generic events feature with 1,000 event limit
Create a feature that will normalize, aggregate and harvest all generic events.
Report Page Actions with Generic Events Feature
Report all customer PageAction data utilizing the new Generic Events feature.
Support statement
New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Older releases will no longer be supported when they reach end-of-life. Release dates are reflective of the original publish date of the agent version.
New browser agent releases are rolled out to customers in small stages over a period of time. Because of this, the date the release becomes accessible to your account may not match the original publish date. Please see this status dashboard for more information.
Consistent with our browser support policy, v1.264.0 of the Browser agent was built for and tested against these browsers and version ranges: Chrome 116-126, Edge 116-126, Safari 16-17, and Firefox 117-127. For mobile devices, v1.264.0 was built and tested for Android OS 9-14 and iOS Safari 16-17.5.
v1.263.0
Features
Optimize bundle size with warning codes
Decrease bundle size by converting static strings to warning codes with an accompanying link to a web resource.
Shut down agent if improperly configured
Shut down initialization of the agent if improperly configured. Agents must be provided a valid licenseKey and applicationID at runtime.
Bug Fixes
Prevent agent using invalid date header
Shut down the agent when unable to read a correctly formatted date header for the page view event harvest. This prevents harvesting data with wildly inaccurate timestamps. This should only happen with third-party or non-agent code has tampered with the ajax response headers.
Support statement
New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Older releases will no longer be supported when they reach end-of-life. Release dates are reflective of the original publish date of the agent version.
New browser agent releases are rolled out to customers in small stages over a period of time. Because of this, the date the release becomes accessible to your account may not match the original publish date. Please see this status dashboard for more information.
Consistent with our browser support policy, v1.263.0 of the Browser agent was built for and tested against these browsers and version ranges: Chrome 116-126, Edge 116-126, Safari 16-17, and Firefox 117-127. For mobile devices, v1.263.0 was built and tested for Android OS 9-14 and iOS Safari 16-17.5.