getsentry / getsentry/sentry-javascript

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

Ouverte
#24,137 1 commentaire 0 réactions 0 personnes assignées 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.

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'`.

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

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.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
docker-compose, kafka, mongodb, mysql, node.js, postgresql, rabbitmq, redis, typescript
Domaine
databases, devops, distributed-systems, testing-qa
Type d'issue
Refactorisation
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
Active
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

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