Open
Description
Node.js v24 changes some things that cause the tracer to break in weird ways. Mostly in the form of dropped spans or lost propagation as this relates to async hooks.
Fixing this requires migrating integration-specific code on a case-by-case basis. The changes are backwards compatible. As we merge fixes into the master branch each release slowly gains more compatibility. Our goal is to completely support Node.js v24 in the only currently-active tracer release line, v5.
Here is the progress:
- IDM > Integration: aws-sdk
- Plugins / aws-sdk (latest) (pull_request)
- IDM > Integration: GraphQL
- Project / integration (latest) (pull_request)
- ??? > "automatic log submission"
- Project / integration (latest) (pull_request)
- ??? > packages/dd-trace/test/proxy.spec.js > TracerProxy > uninitialized > init
- Tracing / ubuntu (pull_request)
- Integrations: COMPLEX
- Integrations: DB SQL
- tedious.js:3 Migrating Tedious from Async Resource to runStores #5747
- mariadb.js:7
- mysql.js:5
- mysql2.js:3
- oracledb.js:3
- pg.js:4
- Integrations: DB OBJ
- couchbase.js:8
- elasticsearch.js:3
- cassandra-driver.js:18 remove async storage from cassandra-driver #5949
- ioredis.js:2 remove async storage from redis instrumentations #5921
- iovalkey.js:2 remove async storage from redis instrumentations #5921
- memcached.js:3
- mongodb-core.js:5 chore(tracing): remove async storage from mongo plugins #5812
- mongodb.js:2 chore(tracing): remove async storage from mongo plugins #5812
- redis.js:6 remove async storage from redis instrumentations #5921
- sharedb.js:3
- Integrations: DB ORM
- knex.js:2
- mongoose.js:4
- sequelize.js:2
- Integrations: HTTP / FRAMEWORKS
- fastify.js:3
- body-parser.js:2
- http2/server.js:3
- multer.js:2
- graphql.js:5
- moleculer/client.js:2 remove async storage from moleculer #5956
- moleculer/server.js:2 remove async storage from moleculer #5956
- microgateway-core.js:2
- Integrations: ETC
- child_process.js:4 remove async storage from child_process instrumentation #5960
- generic-pool.js:2
- limitd-client.js:2
- ldapjs.js:4
- Integrations: MESSAGE PASSING
- amqp10.js:3
- amqplib.js:2
- google-cloud-pubsub.js:9
- kafkajs.js:11
- rhea.js:5
- CI Visibility
- cucumber.js:22
- jest.js:16
- mocha/main.js:23
- mocha/utils.js:22
- playwright.js:22
- vitest.js:17
- CI Visibility
- Project / integration-ci (latest, cucumber) (pull_request)
- Project / integration-ci (latest, jest) (pull_request)
- Project / integration-ci (latest, mocha) (pull_request)
- Project / integration-ci (latest, selenium) (pull_request)
- Project / integration-ci (oldest, cucumber) (pull_request)
- Project / integration-ci (oldest, jest) (pull_request)
- Project / integration-playwright (latest) (pull_request)
- AppSec
- AppSec / next (latest, >=11.0.0 <13) (pull_request)
- AppSec / next (latest, 13.2.0) (pull_request)
- AppSec / ubuntu (pull_request)
- IDM/LP > Low level integrations
- TCP
- NET
- Debugger
- (fix already in master)
- Profiling
- Profiling / ubuntu (pull_request)
Closes #5946