getsentry / getsentry/sentry-javascript

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

未关闭
#24,140 3 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
javascript Task
主要语言
TypeScript
星标
8.7k
派生
1.8k
平均合并
1 天 17 小时
30 天内合并 PR
523

描述

Follow the porting recipe in the parent issue.

Sampling, DSC, envelope headers and span linking. These suites 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

* Envelope headers and DSC: `tracing/envelope-header/*` (7 dirs), `tracing/dsc-txn-name-update`, `tracing/double-baggage/*` (3 dirs), `tracing/meta-tags`, `tracing/meta-tags-twp`, `tracing/meta-tags-twp-errors`
* Sampling: `tracing/sampling-static`, `tracing/sample-rate-propagation/*` (4 dirs), `tracing/sample-rand-propagation`, `tracing/no-parent-span-client-report`
* Trace lifetime: `tracing/continueTrace`, `tracing/startNewTrace`, `tracing/traceid-recycling`, `tracing/traceid-recycling-with-spans`
* Span shaping: `tracing/linking`, `tracing/maxSpans`, `tracing/tracer-start-active-span-error`
* Public API span surface: `public-api/startSpan/*` (7 dirs), `public-api/beforeSendSpan-static`, `public-api/bindScopeToEmitter`, `public-api/setMeasurement`, `public-api/scopes/*`

## Twins to fold back

`tracing/sampling-streamed`, `tracing/ignoreSpans-streamed/*`, `public-api/beforeSendSpan-streamed`, `context-streamed/*`, and the 6 `public-api/startSpan/*-streamed` dirs.

## Keep static trace lifecycle coverage

This is the group that owns the guard. Keep `tracing/sampling-static` and `public-api/beforeSendSpan-static` on the static pin. Everything else moves.

贡献指南

打开贡献指南

调研方向

Start with the porting recipe in the parent issue, then inspect the listed tracing/* and public-api/* suites and their -streamed twins. Port the specified suites to span streaming, fold back the named twins, and keep tracing/sampling-static and public-api/beforeSendSpan-static on the static pin. Done means the listed integration suites cover sampling, propagation, span linking, and public API behavior under span streaming.

由索引模型根据 Issue 内容生成。

评估

技术栈
node.js, typescript
领域
testing
Issue 类型
重构
难度
4/5
预计耗时
3-5 天
活跃度
活跃
描述清晰度
基本清楚
新手友好度
52/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。