Overview

The RUM Browser SDK generates events that have associated metrics and attributes. Every RUM event has all of the default attributes, for example, the URL of the page (view.url) and user information such as their device type (device.type) and their country (geo.country).

There are additional metrics and attributes specific to a given event type. For example, the view.loading_time metric is associated with view events, and the resource.method attribute is associated with resource events.

Event TypeRetentionDescription
Session30 daysA user session begins when a user starts browsing the web application. It contains high-level information about the user (browser, device, geo-location). It aggregates all RUM events collected during the user journey with a unique session.id attribute. Note: The session resets after 15 minutes of inactivity.
View30 daysA view event is generated each time a user visits a page of the web application. While the user remains on the same page, resource, long-task, error, and action events are linked to the related RUM view with the view.id attribute.
Resource15 daysA resource event is generated for images, XHR, Fetch, CSS, or JS libraries loaded on a webpage. It includes detailed loading timing information.
Long Task15 daysA long task event is generated for any task in the browser that blocks the main thread for more than 50ms.
Error30 daysRUM collects every frontend error emitted by the browser.
Action30 daysRUM action events track user interactions during a user journey and can also be manually sent to monitor custom user actions.

The following diagram illustrates the RUM event hierarchy:

RUM Event hierarchy

Default attributes

See a complete list of Standard Attributes for RUM Browser. By default, the attributes are attached to each event type, so you can use them regardless of the RUM event type being queried.

Event-specific metrics and attributes

Session metrics

MetricTypeDescription
session.time_spentnumber (ns)Duration of the user session.
session.view.countnumberCount of all views collected for this session.
session.error.countnumberCount of all errors collected for this session.
session.resource.countnumberCount of all resources collected for this session.
session.action.countnumberCount of all actions collected for this session.
session.long_task.countnumberCount of all long tasks collected for this session.

Session attributes

Attribute nameTypeDescription
session.idstringRandomly generated ID for each session.
session.ipstringClient IP address. If you want to stop collecting this attribute, change the setting in your application details.
session.is_activebooleanIndicates if the session is currently active. The session ends after 4 hours of activity or 15 minutes of inactivity.
session.typestringThe type of session: user or synthetics. Sessions from Synthetic Monitoring Browser Tests are excluded from billing.
session.referrerstringThe URL of the previous web page from which a link to the currently requested page was followed.
session.initial_view.idstringThe ID of the first RUM view generated by the user.
session.initial_view.url_hoststringThe host part of the URL.
session.initial_view.url_pathstringThe path part of the URL.
session.initial_view.url_path_groupstringThe automatic URL group generated for similar URLs (for example, /dashboard/? for /dashboard/123 and /dashboard/456).
session.initial_view.url_queryobjectThe query string parts of the URL decomposed as query params key/value attributes.
session.initial_view.url_schemeobjectThe scheme part of the URL.
session.last_view.idstringThe ID of the last RUM view generated by the user.
session.last_view.url_hoststringThe host part of the URL.
session.last_view.url_pathstringThe path part of the URL.
session.last_view.url_path_groupstringThe automatic URL group generated for similar URLs (for example, /dashboard/? for /dashboard/123 and /dashboard/456).
session.last_view.url_queryobjectThe query string parts of the URL decomposed as query params key/value attributes.
session.last_view.url_schemeobjectThe scheme part of the URL.

View timing metrics

Note: View timing metrics include time that a page is open in the background.

AttributeTypeDescription
view.time_spentnumber (ns)Time spent on the current view.
view.first_bytenumber (ns)Time elapsed until the first byte of the view has been received.
view.largest_contentful_paintnumber (ns)Time in the page load where the largest DOM object in the viewport (visible on screen) is rendered.
view.largest_contentful_paint_target_selectorstring (CSS selector)CSS Selector of the element corresponding to the largest contentful paint.
view.first_input_delaynumber (ns)Time elapsed between a user’s first interaction with the page and the browser’s response.
view.first_input_delay_target_selectorstring (CSS selector)CSS selector of the first element the user interacted with.
view.interaction_to_next_paintnumber (ns)Longest duration between a user’s interaction with the page and the next paint.
view.interaction_to_next_paint_target_selectorstring (CSS selector)CSS selector of the element associated with the longest interaction to the next paint.
view.cumulative_layout_shiftnumberQuantifies unexpected page movement due to dynamically loaded content (for example, third-party ads) where 0 means that no shifts are happening.
view.cumulative_layout_shift_target_selectorstring (CSS selector)CSS selector of the most shifted element contributing to the page CLS.
view.loading_timenumber (ns)Time until the page is ready and no network request or DOM mutation is currently occurring. More info from Monitoring Page Performance.
view.first_contentful_paintnumber (ns)Time when the browser first renders any text, image (including background images), non-white canvas, or SVG. For more information about browser rendering, see the w3c definition.
view.dom_interactivenumber (ns)Time until the parser finishes its work on the main document. More info from the MDN documentation.
view.dom_content_loadednumber (ns)Time until the load event is fired and the initial HTML document is completely loaded and parsed, without waiting for non-render blocking stylesheets, images, and subframes to finish loading. More info from the MDN documentation.
view.dom_completenumber (ns)Time until the page and all of the subresources are ready. The loading spinner has stopped spinning for the user. More info from the MDN documentation.
view.load_eventnumber (ns)Time until the load event is fired, indicating the page is fully loaded. Usually a trigger for additional application logic. More info from the MDN documentation.
view.error.countnumberCount of all errors collected for this view.
view.long_task.countnumberCount of all long tasks collected for this view.
view.resource.countnumberCount of all resources collected for this view.
view.action.countnumberCount of all actions collected for this view.

Resource timing metrics

Detailed network timing data for the loading of an application’s resources are collected with the Performance Resource Timing API.

MetricTypeDescription
durationnumberEntire time spent loading the resource.
resource.sizenumber (bytes)Resource size.
resource.connect.durationnumber (ns)Time spent establishing a connection to the server (connectEnd - connectStart).
resource.ssl.durationnumber (ns)Time spent for the TLS handshake. If the last request is not over HTTPS, this metric does not appear (connectEnd - secureConnectionStart).
resource.dns.durationnumber (ns)Time spent resolving the DNS name of the last request (domainLookupEnd - domainLookupStart).
resource.redirect.durationnumber (ns)Time spent on subsequent HTTP requests (redirectEnd - redirectStart).
resource.first_byte.durationnumber (ns)Time spent waiting for the first byte of response to be received (responseStart - RequestStart).
resource.download.durationnumber (ns)Time spent downloading the response (responseEnd - responseStart).

Resource attributes

AttributeTypeDescription
resource.typestringThe type of resource being collected (for example, css, javascript, media, XHR, or image).
resource.methodstringThe HTTP method (for example POST or GET).
resource.status_codenumberThe response status code (available for fetch/XHR resources only).
resource.urlstringThe resource URL.
resource.url_hoststringThe host part of the URL.
resource.url_pathstringThe path part of the URL.
resource.url_queryobjectThe query string parts of the URL decomposed as query params key/value attributes.
resource.url_schemestringThe protocol name of the URL (HTTP or HTTPS).
resource.provider.namestringThe resource provider name. Default is unknown.
resource.provider.domainstringThe resource provider domain.
resource.provider.typestringThe resource provider type (for example, first-party, cdn, ad, or analytics).

Long task timing metrics

MetricTypeDescription
long_task.durationnumberDuration of the long task.

Error attributes

AttributeTypeDescription
error.sourcestringWhere the error originates from (for example, console). See Error sources.
error.typestringThe error type (or error code in some cases).
error.messagestringA concise, human-readable, one-line message explaining the event.
error.stackstringThe stack trace or complementary information about the error.

Source errors

Source errors include code-level information about the error. For more information about different error types, see the MDN documentation.

AttributeTypeDescription
error.typestringThe error type (or error code in some cases).

Action timing metrics

MetricTypeDescription
action.loading_timenumber (ns)The loading time of the action. See how it is calculated in the Tracking User Actions documentation.
action.long_task.countnumberCount of all long tasks collected for this action.
action.resource.countnumberCount of all resources collected for this action.
action.error.countnumberCount of all errors collected for this action.

Action attributes

AttributeTypeDescription
action.idstringUUID of the user action.
action.typestringType of the user action. For Custom User Actions, it is set to custom.
action.target.namestringElement that the user interacted with. Only for automatically collected actions.
action.namestringUser-friendly name created (for example, Click on #checkout). For Custom User Actions, the action name given in the API call.

Frustration signals fields

FieldTypeDescription
session.frustration.countnumberCount of all frustration signals associated with one session.
view.frustration.countnumberCount of all frustration signals associated with one view.
action.frustration.type:dead_clickstringThe dead clicks detected by the RUM Browser SDK.
action.frustration.type:rage_clickstringThe rage clicks detected by the RUM Browser SDK.
action.frustration.type:error_clickstringThe error clicks detected by the RUM Browser SDK.

UTM attributes

FieldTypeDescription
view.url_query.utm_sourcestringThe parameter in the URL tracking the source of traffic.
view.url_query.utm_mediumstringThe parameter in the URL tracking the channel where the traffic is coming from.
view.url_query.utm_campaignstringThe paramter in the URL identifying the specific marketing campaign tied to that view.
view.url_query.utm_contentstringThe paramter in the URL identifying the specific element a user clicked within a marketing campaign.
view.url_query.utm_termstringThe parameter in the URL tracking the keyword a user searched to trigger a given campaign.

Further Reading

PREVIEWING: rtrieu/product-analytics-ui-changes