Real User Monitoring (RUM)
Oodle RUM gives you end-to-end visibility into how real users experience your web application — page load performance, JavaScript errors, user interactions, and full session replay.
Installation
npm install @oodle-ai/rum
Quick Start
Add the following to your application entry point
(e.g. main.ts, App.tsx, or a layout component):
import { OodleRum } from '@oodle-ai/rum';
OodleRum.init({
instanceId: '<YOUR_INSTANCE_ID>',
apiKey: '<YOUR_RUM_API_KEY>',
endpoint: 'https://<YOUR_COLLECTOR>.oodle.ai',
service: 'my-frontend',
env: 'production',
version: '1.0.0',
sessionReplay: true,
sessionSampleRate: 100,
replaySampleRate: 100,
privacyLevel: 'mask-user-input',
allowedTracingUrls: [
'https://api.yourapp.com',
],
});
API Key
RUM uses a dedicated API key with the RUM role. This key is embedded in client-side JavaScript and is visible to end users. It is restricted to writing RUM events and replay segments only — no read access to any other data.
Create a RUM API key from Settings → API Keys → Create API Key and select the RUM role.
Configuration Options
| Option | Type | Default | Description |
|---|---|---|---|
instanceId | string | required | Your Oodle instance ID |
apiKey | string | required | RUM API key |
endpoint | string | required | Collector URL (*.oodle.ai) |
service | string | required | Application name |
env | string | — | Environment (production, staging) |
version | string | — | Application version |
sessionReplay | boolean | true | Enable session recording |
sessionSampleRate | number | 100 | % of sessions to capture |
replaySampleRate | number | 100 | % of sessions to record replay |
privacyLevel | string | 'mask-user-input' | Privacy masking level |
allowedTracingUrls | array |