feat(dashboards): add Sessions & Replay section to Browser RUM dashboard - #2673
Conversation
Add a new "Sessions & Replay" container to the Browser RUM dashboard template with two tiles: a "Recent Sessions" table (grouped by rum.sessionId, ordered by last-active) that drills into the Traces search view to reveal a session's client-side spans, and a Markdown tile linking to Session Replay (/sessions). Implemented via existing table onClick drill-through and Markdown-tile mechanisms — no renderer changes.
🦋 Changeset detectedLatest commit: ddf7c89 The changes in this PR will be included in the next version bump. This PR includes changesets to release 3 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
🔵 Tier 2 — Low RiskSmall, isolated change with no API route or data model modifications. Why this tier:
Review process: AI review + quick human skim (target: 5–15 min). Reviewer validates AI assessment and checks for domain-specific concerns. Stats
|
Greptile SummaryThis PR expands the Browser RUM dashboard template with new sessions and memory views. The main changes are:
Confidence Score: 5/5This looks safe to merge.
Important Files Changed
Reviews (4): Last reviewed commit: "Merge branch 'main' into minnetonka-v1" | Re-trigger Greptile |
Deep Review✅ No critical issues found. This change is scoped to a static, schema-validated dashboard template ( 🔵 P3 nitpicks (1)
Reviewers (2): orchestrator direct analysis (schema/convention/correctness), testing. Coverage note: Synthesis was finalized before the correctness, maintainability, project-standards, performance, agent-native, and learnings sub-agents returned; their results are not reflected here. The orchestrator independently verified schema conformance, referential integrity, and convention consistency directly against the source and the validation test, and found no concrete failure mode introduced by this diff. Testing gaps: No behavioral test asserts tile-level cross-reference integrity for the new sections (pre-existing gap shared by all tiles; the new tiles were verified consistent by hand). |
E2E Test Results✅ All tests passed • 241 passed • 1 skipped • 1092s
Tests ran across 4 shards in parallel. |
…M dashboard Add a "Memory" section with median/p90 used-JS-heap number tiles and a "Memory by Page" table, sourced from performance.memory.* attributes on documentLoad spans (byte-formatted). Includes a Markdown caveat noting the data is Chromium-only and requires a Browser SDK build that emits the heap attributes (see hyperdxio/hyperdx-js#288).
…board Remove the "Session Replay & Client-Side Traces" markdown tile, pull the Recent Sessions table to the top of the section, and rename the container from "Sessions & Replay" to "Sessions".
Summary
Expands the out-of-the-box Browser RUM dashboard template with two new sections. Sessions adds a Recent Sessions table — client-side sessions grouped by
rum.sessionId(page views, errors, distinct traces, user, service, last-active) ordered by recency, where clicking a row drills into the Traces search view filtered to that session (surfacing its client-side spans). Memory adds per-page JS heap tiles (median & p90 used heap, and a "Memory by Page" table) sourced fromperformance.memory.*attributes ondocumentLoadspans, byte-formatted, with a Markdown caveat noting the data is Chromium-only and requires a Browser SDK build that emits those attributes (see hyperdxio/hyperdx-js#288). Everything is implemented via existing tile mechanisms (tableonClickdrill-through, Markdown tiles, byte number-format) — no renderer changes.Screenshots or video
New tiles only — the rendered structure is visible on the Vercel preview. Meaningful data requires a RUM-instrumented source (the demo dataset has no browser RUM spans, and memory data additionally needs the SDK change above), so no populated screenshot is included.
How to test on Vercel preview
Preview routes: /dashboards/import?template=browser-rum
Steps:
/dashboards/import?template=browser-rumto preview the Browser RUM template.References