Port node-integration-tests to span streaming
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Tái cấu trúc
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- node.js, typescript
- Lĩnh vực
- testing-qa
Hướng nghiên cứu
Bắt đầu trong dev-packages/node-integration-tests và so sánh các suite với tracing/httpIntegration-streamed. Xác định các pin static và STREAMED của traceLifecycle, sau đó kiểm tra các assertion transaction-envelope và việc thu thập child-span trong các suite bị ảnh hưởng. Hoàn tất khi package sử dụng span streaming xuyên suốt, các bản tương ứng streamed được gộp trở lại, các assertion bao phủ span v2, còn tracing/sampling-static và public-api/beforeSendSpan-static vẫn là phần coverage static.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Port dev-packages/node-integration-tests to span streaming. Span streaming is the default, so every suite that still pins traceLifecycle: 'static' covers behaviour we no longer ship.
Part of SDK-1425, one tracking issue per integration test package.
Scope
- 299
traceLifecycle: 'static'pins across 188 suite directories - 111 suite directories assert on transaction envelopes and need a real rewrite
- 19 suites already have a
-streamedtwin next to the static original - 20 suites use the env-gated
traceLifecycle: process.env.STREAMED === 'true' ? 'stream' : 'static'pattern
How to port a suite
- Remove the
traceLifecycle: 'static'pin from everySentry.initin the suite. - If a
-streamedtwin exists, fold it back: delete the static original and rename the twin to the base name. Do not keep both, or the coverage doubles and the two copies drift. - If the suite uses the env-gated
STREAMEDswitch, drop the switch and keep'stream'. - Rewrite the assertions from transaction envelopes to span v2:
.expect({ transaction })becomes.expect({ span }), which gives aSerializedStreamedSpanContainerevent.transactionbecomesspan.namecontexts.trace.opbecomes thesentry.opattribute plusspan.is_segmentcontexts.trace.data['x']becomesspan.attributes['x'], which has the shape{ value, type }transaction_info.sourcebecomes thesentry.segment.name.sourceattribute
- Streamed child spans arrive across several envelopes, so collect across envelopes wherever a test asserts on children of a segment span.
Watch for span names that become low cardinality under streaming: http.server, http.client, db, cache, gen_ai and graphql. Those assertions change, not just the helper.
Reference suite: suites/tracing/httpIntegration-streamed.
Keep static trace lifecycle coverage
Do not add a -static copy per suite. tracing/sampling-static and public-api/beforeSendSpan-static already guard the static lifecycle for this package.
- Ngôn ngữ chính
- TypeScript
- Star
- 8.7k
- Fork
- 1.9k
- Merge trung bình
- 1 ngày 18 giờ
- Pull request đã merge (30 ngày)
- 562
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của getsentry/sentry-javascript
-
Browser Waiting for: Product Owner
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
getsentry/sentry-javascript#24577 · 1 bình luận ·
-
Task
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
getsentry/sentry-javascript#24558 · 1 bình luận ·
-
Task
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
getsentry/sentry-javascript#24557 · 1 bình luận ·
-
Task
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
getsentry/sentry-javascript#24556 · 1 bình luận ·
-
Task
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 90/100
getsentry/sentry-javascript#24555 · 1 bình luận ·
Tất cả issue của getsentry/sentry-javascript
Issue tương tự
-
blocklist removal
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
MetaMask/eth-phishing-detect#296544 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
pastelsky/bundlephobia#1122 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
category/development priority/P2 scope/file-operations scope/testing type/enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
Enatega Customer and Rider app: Add-ons price is not visible to customer after order is placed. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100