getsentry / getsentry/sentry-javascript

Reconnect pageload and serving request under `cacheComponents`

Offen
#24,298 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
javascript
Vorherrschende Sprache
TypeScript
Sterne
8.7k
Forks
1.8k
Ø Merge
1 T. 17 Std.
Gemergte PRs (30 T.)
523

Beschreibung

*Example:* any `cacheComponents` page. The browser records pageload trace X, the server records request trace Y, and they never meet. The SDK currently disables the `sentry-trace` meta tags. because the shell HTML is cached and baked-in context would replay one stale trace to every visitor. Result: two orphan traces per visit. A slow pageload cannot be followed into its server work.

*Solves:* the incomplete-traces complaint. This is the gap users notice first.

*Fix idea:* carry trace context only in the part of the response that is never cached. For example, a small component rendered inside a dynamic hole streams the meta tag or script with trace Y's context, and the browser SDK picks it up. The prerendered shell stays context-free. This sketch has no prototype behind it yet - research this first.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

No files or tests are named. Start by locating the cacheComponents handling and the browser/server trace-context entry points, then inspect how cached shell HTML and dynamic holes are rendered. Done means pageload trace X and server trace Y reconnect without replaying stale context from the cached shell, with coverage for a cacheComponents page.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript
Bereich
observability, web-dev
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.