getsentry / getsentry/sentry-javascript

browser-integration-tests: port trace semantics suites to span streaming

Ouverte
#24,144 1 commentaire 0 réactions 1 personne assignée Réclamée par @msonnb Voir sur GitHub
javascript Task
Langage dominant
TypeScript
Étoiles
8.7k
Forks
1.8k
Merge moyen
1 j 17 h
PR mergées (30 j)
523

Description

Follow the porting recipe in the parent issue.

Trace lifetime, DSC, sampling and span linking. These assert on envelope headers and trace propagation rather than on instrumentation output, so they are the ones most likely to expose a real product bug rather than a test rewrite.

## Suites

* Trace lifetime: `tracing/trace-lifetime/*`, `tracing/continueTrace/*`, `tracing/bindScopeToEmitter`
* Envelope headers and DSC: `tracing/envelope-header`, `tracing/envelope-header-transaction-name`, `tracing/dsc-txn-name-update`
* Sampling: `tracing/tracesSampler`, `tracing/stringSampleRate`, `tracing/no-parent-span-client-report`
* Span shaping: `tracing/linking-addLink`, `tracing/linking-addLinks`, `tracing/linking-spanOptions`, `tracing/ignoreSpans`, `tracing/maxSpans`, `tracing/setSpanActive`, `tracing/microfrontend-span-attribution`, `tracing/browserTracingIntegrationShim`
* Public API span surface: `public-api/startSpan`, `public-api/beforeSendTransaction`
* `integrations/httpclient`

## Twins to fold back

`tracing/trace-lifetime/pageload-streamed`, `navigation-streamed`, `startNewTrace-streamed`, `tracing/setSpanActive-streamed`, `tracing/linking-addLink-streamed`, `tracing/ignoreSpans-streamed`, `tracing/http-client-span-streamed`, `public-api/startSpan/streamed`, `public-api/beforeSendSpan-streamed`.

## Keep static trace lifecycle coverage

Pick one suite here to stay on the static pin as the guard, and name it in the PR. The `profiling/traceLifecycleMode_*` suites already cover the lifecycle switch itself.

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.