getsentry / getsentry/sentry-javascript

node-integration-tests: port database, cache and messaging suites to span streaming

Aperta
#24,137 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
javascript Task
Lingua principale
TypeScript
Stelle
8.7k
Fork
1.8k
Merge medio
1g 17h
PR unite (30g)
523

Descrizione

Follow the porting recipe in the parent issue.

Most of these run under docker compose, so plan for a slow feedback loop. `db` span names became low cardinality and redis spans now start as `cache` spans, so nearly every name and op assertion changes.

## Suites

* Postgres: `tracing/postgres`, `tracing/postgresjs`
* MySQL: `tracing/mysql`, `tracing/mysql2`, `tracing/mysql2-tracing-channel`
* Mongo: `tracing/mongodb`, `tracing/mongodb-v4` to `-v7`, `tracing/mongoose`, `tracing/mongoose-v5` to `-v9`, `tracing/mongoose-tracing-channel`
* Prisma: `tracing/prisma-orm-v5`, `-v6`, `-v7`
* Other: `tracing/knex/mysql2`, `tracing/knex/pg`, `tracing/tedious`, `tracing/genericPool`, `tracing/genericPool-v2`, `tracing/dataloader`
* Cache: `tracing/redis`, `tracing/redis-cache`, `tracing/redis-dc`, `tracing/ioredis-dc`
* Messaging: `tracing/kafkajs`, `tracing/amqplib`

## Twins to fold back

* `tracing/postgres-streamed` into `tracing/postgres`
* `tracing/postgresjs-streamed` into `tracing/postgresjs`

## Env-gated suites

13 of these use `traceLifecycle: process.env.STREAMED === 'true' ? 'stream' : 'static'` (all the mongo, mongoose, redis and ioredis suites plus `tracing/mysql` and `tracing/dataloader`). Drop the switch and keep `'stream'`.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start with the parent issue's porting recipe, then inspect the listed tracing suites and their docker-compose test entry points. Update the span and operation assertions, fold the postgres-streamed twins back into their base suites, and remove the STREAMED lifecycle switch where specified. Run the affected integration suites and confirm all listed database, cache, and messaging tests pass with streaming enabled.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
docker-compose, kafka, mongodb, mysql, node.js, postgresql, rabbitmq, redis, typescript
Ambito
databases, devops, distributed-systems, testing-qa
Tipo di issue
Refactoring
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Attiva
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.