> ## Documentation Index
> Fetch the complete documentation index at: https://docs.germainux.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Configure Monitoring of Browser

> GermainUX includes preconfigured browser monitoring for user activity, Session Replay, performance, errors, network requests, and freezes.

Components
[`JS Profiler`](https://docs.germainux.com/main/germain-ux-js-profiler)
[`RUM JS`](https://docs.germainux.com/main/germain-ux-rum-js)
[`RUM Extension`](https://docs.germainux.com/main/germain-ux-rum-extension)

Availability
2022.1 or later

> **[Browser-monitoring components](#browser-monitoring-components)**
>
> Deploy independently or together

> **[Required configuration](#required-configuration)**
>
> Minimum settings for most apps

> **[Optional metadata](#optional-metadata)**
>
> Extra application-specific context

> **[Deployment and configuration](#deployment-and-configuration)**
>
> Install the browser agent

## Overview

GermainUX includes preconfigured browser monitoring for user activity, Session Replay, performance, errors, network requests, browser freezes, and common user-experience friction.

After deploying RUM JS, the RUM Extension, or the JS Profiler, most browser insights are automatically collected and analyzed. Additional configuration is required only when you need to customize the default behavior for a particular application or business requirement.

## Browser-monitoring components

| Component | Primary purpose |
| - | - |
| [GermainUX RUM JS](https://docs.germainux.com/main/germain-ux-rum-js.md) | Monitor real users in applications where the GermainUX script can be deployed |
| [GermainUX RUM Extension](https://docs.germainux.com/main/germain-ux-rum-extension.md) | Monitor applications where script injection is unavailable or browser-level access is required |
| [GermainUX JS Profiler](https://docs.germainux.com/main/germain-ux-js-profiler.md) | Profile JavaScript execution and identify browser-side code bottlenecks |

These components can be deployed independently or together according to the required monitoring depth.

## Preconfigured monitoring

Depending on the deployed component, GermainUX provides preconfigured monitoring for capabilities such as:

| Capability | Details |
| - | - |
| User activity | Page views, navigation, clicks, selections, searches, and supported input activity |
| Session Replay | Millisecond-precise reconstruction of monitored browser sessions |
| Heatmaps | Aggregated analysis of user interactions and behavior |
| Click friction | Standard, dead, error, and rage clicks |
| Page performance | Page loads, user interactions, resources, and supported Core Web Vitals |
| JavaScript errors | Exceptions, console errors, and unhandled promise rejections |
| Browser responsiveness | JavaScript long tasks and browser freezes |
| Network activity | Supported browser HTTP requests, response times, status codes, and failures |
| Browser memory | Supported JavaScript and page-memory measurements |
| Browser events | Popup dialogs, browser crashes, policy violations, and deprecated-feature reports |
| WebSockets | Supported WebSocket connections and activity |
| Application context | Browser, device, operating system, page, application, and environment |
| Automated analysis | Trends, outliers, correlations, affected users, and business impact |

The exact monitoring available depends on the deployed component, browser capabilities, application architecture, and GermainUX version.

## Required configuration

For most applications, configure only the following.

### Application and profile

**1. Create or select the monitored application**

**2. Enter the application URL**

**3. Select the environment**

**4. Create or select the UX Monitoring Profile**

**5. Deploy RUM JS, the RUM Extension, or the JS Profiler**

**6. Confirm that browser telemetry reaches GermainUX**

### Security and privacy

Before production rollout, review and configure:

| Item | Details |
| - | - |
| Applications, pages, and users authorized for monitoring | Review who and what is authorized |
| Fields and content that must be masked or excluded | Identify sensitive fields and content for masking or exclusion |
| Password, payment, authentication, and other sensitive fields | Specify handling and masking rules |
| Consent requirements | Ensure consent flows and legal requirements are met |
| Session Replay access | Control who can view Session Replay data |
| Sampling | Define sampling strategies for data collection |
| Data retention and deletion | Set retention periods and deletion policies |

Privacy configuration must be validated across the application’s principal pages, forms, dialogs, routes, and frames.

### Application identification

Confirm that GermainUX correctly identifies:

| Identifier | Expected value |
| - | - |
| Application | App name or identifier |
| Environment | Production, staging, etc. |
| Page or route | Page or route identifiers |
| Browser and browser version | Detected browser details |
| Application version, when available | Version metadata |
| User or session, when collection is authorized | User or session identifiers (if authorized) |

### Validation

**1. Open the monitored application**

**2. Navigate through representative pages or routes**

**3. Perform several user actions**

**4. Execute representative network requests**

**5. Confirm that the session and browser facts appear in GermainUX**

**6. Open Session Replay when enabled**

**7. Confirm that sensitive information is protected**

**8. Verify that the expected performance, error, and network insights are available**

## Optional customization

Customize the preconfigured monitoring only when the default behavior does not meet the application’s requirements.

### Monitoring features

| Customization | Use |
| - | - |
| [Battery Level Monitoring](https://docs.germainux.com/main/battery-level-monitoring.md) | Change the battery threshold or charging-status behavior |
| [Browser Crash Monitoring](https://docs.germainux.com/main/browser-crash-monitoring.md) | Adjust supported browser-crash detection |
| [Browser Deprecated Features and Policy Violations](https://docs.germainux.com/main/deprecated-features-and-policy-violations-monitori.md) | Customize browser-report collection |
| [Chat/CTI Monitoring](https://docs.germainux.com/main/chat-cti-monitoring.md) | Integrate a supported or customer-specific chat or CTI component |
| [Core Web Vitals](https://docs.germainux.com/main/core-web-vitals.md) | Adjust supported page-performance collection |
| [Dead, Error and Rage Click Monitoring](https://docs.germainux.com/main/dead-error-and-rage-click-monitoring.md) | Change click thresholds or element exclusions |
| [Element and Mark Performance Monitoring](https://docs.germainux.com/main/element-and-mark-performance-monitoring.md) | Measure customer-specific elements or performance marks |
| [JavaScript and Page Memory Monitoring](https://docs.germainux.com/main/javascript-and-page-memory-monitoring.md) | Adjust memory monitoring |
| [JavaScript Console and Error Monitoring](https://docs.germainux.com/main/javascript-console-and-error-monitoring.md) | Change console levels, errors, or exclusions |
| [JavaScript Long Task or Browser Freeze Detection](https://docs.germainux.com/main/javascript-long-task-monitoring.md) | Change long-task or freeze thresholds |
| [Metadata Extractors](https://docs.germainux.com/main/metadata-extractors.md) | Add authorized user, session, application, or business context |
| [Network Requests Monitoring](https://docs.germainux.com/main/network-requests-monitoring.md) | Customize included URLs, exclusions, payload collection, or correlation |
| [Popup Dialog Monitoring](https://docs.germainux.com/main/popup-dialog-monitoring.md) | Select dialog types or measure dialog duration |
| [Server Timing Monitoring](https://docs.germainux.com/main/server-timing-monitoring.md) | Collect application-specific `Server-Timing` values |
| [Unhandled Promise Rejection Monitoring](https://docs.germainux.com/main/unhandled-promise-rejection-monitoring.md) | Customize promise-rejection collection |
| [Video Monitoring](https://docs.germainux.com/main/video-monitoring-vimeo.md) | Monitor interactions with a supported video player |
| [WebSocket Monitoring](https://docs.germainux.com/main/websocket-monitoring.md) | Customize WebSocket connection or message monitoring |

## Optional application-specific insights

Additional configuration is appropriate when customers want GermainUX to understand application-specific business activity.

Examples include:

| Example | Notes |
| - | - |
| Feature usage | Track which features are used and frequency |
| Business-process milestones | Identify steps and completion points |
| Customer journeys | Map user flows through the app |
| Conversion and abandonment | Measure conversions and drop-offs |
| Application-specific errors | Capture domain-specific error conditions |
| User-visible sentences | Monitor messages shown to users |
| Order, case, or transaction identifiers | Attach identifiers for correlation |
| Customer-defined events | Custom events defined by the customer |
| Custom Session Replay timeline insights | Augment Session Replay with business events |

Use the [Browser Monitoring APIs](https://docs.germainux.com/main/apis-for-browser-monitoring.md) and [Custom Insights](https://docs.germainux.com/main/custom-insights.md) when these events are not already available through the preconfigured monitoring.

## Optional metadata

GermainUX automatically provides standard browser and application context. Configure [Metadata Extractors](https://docs.germainux.com/main/metadata-extractors.md) only when additional application-specific context is required, such as:

| Metadata | Purpose |
| - | - |
| Internal user or session ID | Correlate telemetry with internal identifiers |
| Role or team | Segment by organizational role |
| Tenant | Multi-tenant identification |
| Application version | Track releases and regressions |
| Account, case, order, or transaction ID | Attach business identifiers for triage |
| Product or customer segment | Segment telemetry by product or segment |

Collect only metadata that is necessary and authorized.

## Optional KPI and SLA customization

GermainUX includes preconfigured browser KPIs, measures, pivots, and SLAs.

Customize them only when you need to:

| Customize | When to use |
| - | - |
| Add an application-specific KPI | When default KPIs don't reflect business goals |
| Change an existing threshold | Adjust sensitivity to match SLAs |
| Add a custom measure or pivot | Create tailored analytics |
| Define a customer-specific SLA | Set contractual or internal SLAs |
| Categorize an application-specific error | Map errors to domain categories |
| Correlate browser activity with another data source | Join telemetry to external datasets |
| Configure a customer-specific alert, Watch, report, or action | Create tailored notifications and automations |

Review the available Browser Monitoring KPIs.

## Deployment and configuration

* Review [Browser Monitoring](https://docs.germainux.com/main/browser-monitoring.md).
* Deploy [GermainUX RUM JS](https://docs.germainux.com/main/germain-ux-rum-js.md), the [GermainUX RUM Extension](https://docs.germainux.com/main/germain-ux-rum-extension.md), or the [GermainUX JS Profiler](https://docs.germainux.com/main/germain-ux-js-profiler.md).
* Select the application, URL, environment, and UX Monitoring Profile.
* Review and validate Session Replay, privacy, consent, masking, sampling, access, and retention.
* Confirm that GermainUX’s preconfigured browser monitoring is collecting the expected data.
* [Customize monitoring](https://docs.germainux.com/main/custom-insights.md) only when the application or business requirements differ from the preconfigured behavior.
* Review the available [Browser Monitoring KPIs.](https://docs.germainux.com/main/kpis-for-browser-monitoring.md)
* Use the [Browser Monitoring APIs](https://docs.germainux.com/main/apis-for-browser-monitoring.md) for application-specific events and metadata.

## Get Help

> **[Contact GermainUX Support](https://docs.germainux.com/main/support.md)**
>
> The Germain Team can help you set this up.

> **Can't find what you need?**
>
> Search all GermainUX docs with **Ctrl + K**, or use the feedback buttons at the bottom of this page to tell us what is missing.

The content of this document is proprietary to GERMAIN SOFTWARE.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.