Syntax
newrelic.setUserId(value: string|null)Adds a user-defined identifier string to subsequent events on the page.
Requirements
Browser Lite, Pro, or Pro+SPA agent (v1.230.0 or higher)
If you're using npm to install the browser agent, you must enable at least one feature when instantiating the
BrowserAgentclass. For example, add the following in thefeaturesarray:import { Metrics } from '@newrelic/browser-agent/features/metrics'const options = {info: { ... },loader_config: { ... },init: { ... },features: [Metrics]}For more information, see the npm browser installation documentation.
Description
Upon executing this function with a valid value, the browser agent records the value as the enduser.id attribute with all events until the attribute is manually unset. The identifier will be stored in the browser, so that subsequent page visits of the same origin attach it on events within a session span. Note that this functionality may fluctuate depending on end-user browser privacy settings. If this function is called with a value = null, any existing user ID will be deleted from both the current page's events and the storage.
The ID will be attached to JavaScriptError events in particular for Errors Inbox usage. If you are using SPA monitoring with a compatible agent version, user ID will also be included in newrelic.interaction events.
Starting with agent version 1.307.0, if the resetSession attribute is set to true, when the user identifier is updated, the browser agent session resets. However, the session does not reset if the enduser.id attribute is not yet specified.
Parameters
Parameter | Description |
|---|---|
string OR null | Required. A string identifier for the end-user, useful for tying all browser events to specific users. The Passing a |
boolean | Optional. Specifies whether to reset the browser agent session when the user identifier is updated. The session resets only if the |
Examples - one user per machine/device
Marking the start of a user session
newrelic.setUserId('user-1234')Stop attributing events to the current user
// Note: events are still attributed to the same session idnewrelic.setUserId(null)Examples - multiple users per machine/device
Marking the start of a user session
// Note: associates the specified userid to the current session idnewrelic.setUserId('user-1234', true)Switching to another user session
// Note: resets the session, events will be attributed to a new user + session idnewrelic.setUserId('user-567', true)Ending a user session
// Note: resets the session, effectively ending it. Events will be attributed to a new session id going forward.newrelic.setUserId(null, true)