Skip to content

Conversation

@andrewatwood
Copy link

@andrewatwood andrewatwood commented Jan 26, 2026

Motivation

A not-insignificant cohort (>5%) of users for the application I work on have their cookies and local storage disabled. Their sessions are short (~15s happy path) and self-contained, and the relevant context for any given session is nearly entirely limited to that individual single-page session, so long term persistence or multi-tab/window support is wholly unnecessary. However, tracking these sessions and any issues that my arise is still a requirement.

In-memory session storage for the RUM SDK allows us to bypass the requirement for enabled cookies or local storage, and have full access to the sessions originating from these users.

This has been tested extensively, and deployed successfully in production, with over 4M sessions using this persistence strategy in the last two weeks alone.

Changes

  • Adds a new session persistence strategy (SessionPersistence.IN_MEMORY) that stores session data in memory
  • Updates configuration options to expose this strategy to the end user
  • Refactors and rewords existing configuration unit tests related to the allowFallbackToLocalStorage flag for clarity

Test instructions

  • Disable all cookies and site storage in browser settings (On-device site data in Chrome)
  • Launch a RUM session configured to use sessionPersistence: 'in-memory'
  • Verify that within a single tab, the session is recorded and uploaded successfully

I do likely need some help fleshing out any further e2e test coverage deemed necessary, as some of the test scripts seem to require more setup information than I am privy to.

Checklist

  • Tested locally
  • Tested on staging
  • Added unit tests for this change.
  • Added e2e/integration tests for this change.
  • Updated documentation and/or relevant AGENTS.md file

@andrewatwood andrewatwood requested a review from a team as a code owner January 26, 2026 20:04
@github-actions
Copy link

github-actions bot commented Jan 26, 2026

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@andrewatwood
Copy link
Author

I have read the CLA Document and I hereby sign the CLA

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant