dd-trace 5.103.0 → 5.105.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/LICENSE-3rdparty.csv +90 -102
  2. package/index.d.ts +107 -6
  3. package/package.json +18 -17
  4. package/packages/datadog-core/src/storage.js +1 -1
  5. package/packages/datadog-instrumentations/src/aerospike.js +1 -1
  6. package/packages/datadog-instrumentations/src/ai.js +8 -7
  7. package/packages/datadog-instrumentations/src/aws-sdk.js +15 -2
  8. package/packages/datadog-instrumentations/src/azure-cosmos.js +7 -0
  9. package/packages/datadog-instrumentations/src/azure-functions.js +3 -0
  10. package/packages/datadog-instrumentations/src/cassandra-driver.js +5 -2
  11. package/packages/datadog-instrumentations/src/cucumber.js +181 -35
  12. package/packages/datadog-instrumentations/src/dns.js +54 -18
  13. package/packages/datadog-instrumentations/src/elasticsearch.js +4 -4
  14. package/packages/datadog-instrumentations/src/fastify.js +142 -82
  15. package/packages/datadog-instrumentations/src/graphql.js +188 -67
  16. package/packages/datadog-instrumentations/src/grpc/client.js +48 -32
  17. package/packages/datadog-instrumentations/src/helpers/ai-messages.js +322 -14
  18. package/packages/datadog-instrumentations/src/helpers/callback-instrumentor.js +1 -1
  19. package/packages/datadog-instrumentations/src/helpers/hooks.js +4 -0
  20. package/packages/datadog-instrumentations/src/helpers/instrument.js +2 -1
  21. package/packages/datadog-instrumentations/src/helpers/kafka.js +17 -0
  22. package/packages/datadog-instrumentations/src/helpers/openai-ai-guard.js +269 -0
  23. package/packages/datadog-instrumentations/src/helpers/promise-instrumentor.js +42 -0
  24. package/packages/datadog-instrumentations/src/helpers/register.js +1 -1
  25. package/packages/datadog-instrumentations/src/helpers/rewriter/compiler.js +3 -2
  26. package/packages/datadog-instrumentations/src/helpers/rewriter/index.js +19 -6
  27. package/packages/datadog-instrumentations/src/helpers/rewriter/instrumentations/azure-cosmos.js +50 -0
  28. package/packages/datadog-instrumentations/src/helpers/rewriter/instrumentations/index.js +2 -0
  29. package/packages/datadog-instrumentations/src/helpers/rewriter/instrumentations/langgraph.js +4 -2
  30. package/packages/datadog-instrumentations/src/helpers/rewriter/instrumentations/playwright.js +85 -0
  31. package/packages/datadog-instrumentations/src/helpers/rewriter/transforms.js +31 -229
  32. package/packages/datadog-instrumentations/src/hono.js +54 -3
  33. package/packages/datadog-instrumentations/src/http/client.js +2 -2
  34. package/packages/datadog-instrumentations/src/http/server.js +9 -4
  35. package/packages/datadog-instrumentations/src/ioredis.js +3 -3
  36. package/packages/datadog-instrumentations/src/jest/coverage-backfill.js +163 -0
  37. package/packages/datadog-instrumentations/src/jest.js +390 -183
  38. package/packages/datadog-instrumentations/src/kafkajs.js +140 -17
  39. package/packages/datadog-instrumentations/src/mariadb.js +1 -1
  40. package/packages/datadog-instrumentations/src/memcached.js +2 -1
  41. package/packages/datadog-instrumentations/src/mocha/main.js +399 -107
  42. package/packages/datadog-instrumentations/src/mocha/utils.js +48 -8
  43. package/packages/datadog-instrumentations/src/mongodb-core.js +1 -1
  44. package/packages/datadog-instrumentations/src/mongoose.js +10 -12
  45. package/packages/datadog-instrumentations/src/mysql.js +2 -2
  46. package/packages/datadog-instrumentations/src/mysql2.js +1 -1
  47. package/packages/datadog-instrumentations/src/nats.js +182 -0
  48. package/packages/datadog-instrumentations/src/nyc.js +38 -1
  49. package/packages/datadog-instrumentations/src/openai.js +33 -18
  50. package/packages/datadog-instrumentations/src/oracledb.js +6 -1
  51. package/packages/datadog-instrumentations/src/pg.js +1 -1
  52. package/packages/datadog-instrumentations/src/pino.js +17 -5
  53. package/packages/datadog-instrumentations/src/playwright.js +537 -297
  54. package/packages/datadog-instrumentations/src/router.js +80 -34
  55. package/packages/datadog-instrumentations/src/stripe.js +1 -1
  56. package/packages/datadog-instrumentations/src/vitest.js +246 -149
  57. package/packages/datadog-plugin-avsc/src/schema_iterator.js +1 -1
  58. package/packages/datadog-plugin-azure-cosmos/src/index.js +144 -0
  59. package/packages/datadog-plugin-azure-event-hubs/src/producer.js +1 -1
  60. package/packages/datadog-plugin-azure-functions/src/index.js +5 -2
  61. package/packages/datadog-plugin-azure-service-bus/src/producer.js +1 -1
  62. package/packages/datadog-plugin-bunyan/src/index.js +28 -0
  63. package/packages/datadog-plugin-cucumber/src/index.js +17 -3
  64. package/packages/datadog-plugin-cypress/src/cypress-plugin.js +223 -45
  65. package/packages/datadog-plugin-cypress/src/support.js +69 -1
  66. package/packages/datadog-plugin-dns/src/lookup.js +8 -6
  67. package/packages/datadog-plugin-elasticsearch/src/index.js +28 -8
  68. package/packages/datadog-plugin-google-cloud-pubsub/src/pubsub-push-subscription.js +1 -1
  69. package/packages/datadog-plugin-graphql/src/execute.js +2 -0
  70. package/packages/datadog-plugin-graphql/src/resolve.js +64 -67
  71. package/packages/datadog-plugin-graphql/src/utils.js +4 -1
  72. package/packages/datadog-plugin-http/src/server.js +40 -15
  73. package/packages/datadog-plugin-jest/src/index.js +11 -3
  74. package/packages/datadog-plugin-jest/src/util.js +15 -8
  75. package/packages/datadog-plugin-kafkajs/src/batch-consumer.js +1 -1
  76. package/packages/datadog-plugin-kafkajs/src/producer.js +35 -0
  77. package/packages/datadog-plugin-langgraph/src/stream.js +1 -1
  78. package/packages/datadog-plugin-mocha/src/index.js +19 -4
  79. package/packages/datadog-plugin-mongodb-core/src/index.js +311 -35
  80. package/packages/datadog-plugin-nats/src/consumer.js +43 -0
  81. package/packages/datadog-plugin-nats/src/index.js +20 -0
  82. package/packages/datadog-plugin-nats/src/producer.js +62 -0
  83. package/packages/datadog-plugin-nats/src/util.js +33 -0
  84. package/packages/datadog-plugin-next/src/index.js +5 -3
  85. package/packages/datadog-plugin-openai/src/tracing.js +15 -2
  86. package/packages/datadog-plugin-oracledb/src/index.js +13 -2
  87. package/packages/datadog-plugin-pino/src/index.js +42 -0
  88. package/packages/datadog-plugin-playwright/src/index.js +4 -4
  89. package/packages/datadog-plugin-protobufjs/src/schema_iterator.js +1 -1
  90. package/packages/datadog-plugin-redis/src/index.js +37 -2
  91. package/packages/datadog-plugin-rhea/src/producer.js +1 -1
  92. package/packages/datadog-plugin-router/src/index.js +33 -44
  93. package/packages/datadog-plugin-selenium/src/index.js +1 -1
  94. package/packages/datadog-plugin-undici/src/index.js +19 -0
  95. package/packages/datadog-plugin-vitest/src/index.js +24 -20
  96. package/packages/datadog-plugin-winston/src/index.js +30 -0
  97. package/packages/datadog-shimmer/src/shimmer.js +49 -21
  98. package/packages/dd-trace/src/aiguard/index.js +1 -1
  99. package/packages/dd-trace/src/aiguard/sdk.js +1 -1
  100. package/packages/dd-trace/src/appsec/api_security_sampler.js +1 -1
  101. package/packages/dd-trace/src/appsec/blocking.js +2 -2
  102. package/packages/dd-trace/src/appsec/index.js +11 -4
  103. package/packages/dd-trace/src/appsec/reporter.js +24 -11
  104. package/packages/dd-trace/src/appsec/sdk/user_blocking.js +1 -1
  105. package/packages/dd-trace/src/appsec/sdk/utils.js +1 -1
  106. package/packages/dd-trace/src/appsec/user_tracking.js +5 -4
  107. package/packages/dd-trace/src/baggage.js +7 -1
  108. package/packages/dd-trace/src/ci-visibility/exporters/ci-visibility-exporter.js +0 -1
  109. package/packages/dd-trace/src/ci-visibility/intelligent-test-runner/get-skippable-suites.js +25 -13
  110. package/packages/dd-trace/src/ci-visibility/requests/request.js +3 -1
  111. package/packages/dd-trace/src/ci-visibility/test-api-manual/test-api-manual-plugin.js +5 -3
  112. package/packages/dd-trace/src/ci-visibility/test-optimization-cache.js +70 -6
  113. package/packages/dd-trace/src/config/generated-config-types.d.ts +7 -2
  114. package/packages/dd-trace/src/config/supported-configurations.json +36 -8
  115. package/packages/dd-trace/src/crashtracking/crashtracker.js +15 -3
  116. package/packages/dd-trace/src/datastreams/context.js +4 -2
  117. package/packages/dd-trace/src/datastreams/writer.js +2 -4
  118. package/packages/dd-trace/src/debugger/devtools_client/condition.js +5 -8
  119. package/packages/dd-trace/src/encode/0.4.js +124 -108
  120. package/packages/dd-trace/src/encode/0.5.js +114 -26
  121. package/packages/dd-trace/src/encode/agentless-ci-visibility.js +57 -42
  122. package/packages/dd-trace/src/encode/agentless-json.js +4 -2
  123. package/packages/dd-trace/src/encode/coverage-ci-visibility.js +32 -13
  124. package/packages/dd-trace/src/encode/span-stats.js +16 -16
  125. package/packages/dd-trace/src/encode/tags-processors.js +16 -0
  126. package/packages/dd-trace/src/exporters/common/agents.js +3 -1
  127. package/packages/dd-trace/src/exporters/common/request.js +3 -1
  128. package/packages/dd-trace/src/id.js +17 -4
  129. package/packages/dd-trace/src/lambda/handler.js +2 -4
  130. package/packages/dd-trace/src/llmobs/plugins/ai/util.js +1 -1
  131. package/packages/dd-trace/src/llmobs/plugins/genai/index.js +1 -1
  132. package/packages/dd-trace/src/llmobs/plugins/langchain/handlers/index.js +1 -1
  133. package/packages/dd-trace/src/llmobs/plugins/langchain/index.js +9 -7
  134. package/packages/dd-trace/src/llmobs/plugins/langgraph/index.js +1 -1
  135. package/packages/dd-trace/src/llmobs/plugins/openai/index.js +1 -1
  136. package/packages/dd-trace/src/llmobs/sdk.js +10 -16
  137. package/packages/dd-trace/src/llmobs/span_processor.js +3 -3
  138. package/packages/dd-trace/src/llmobs/tagger.js +9 -1
  139. package/packages/dd-trace/src/llmobs/telemetry.js +1 -1
  140. package/packages/dd-trace/src/llmobs/util.js +66 -3
  141. package/packages/dd-trace/src/log/index.js +1 -1
  142. package/packages/dd-trace/src/log/writer.js +3 -1
  143. package/packages/dd-trace/src/msgpack/chunk.js +394 -10
  144. package/packages/dd-trace/src/msgpack/index.js +96 -2
  145. package/packages/dd-trace/src/noop/span.js +3 -1
  146. package/packages/dd-trace/src/openfeature/encoding.js +70 -0
  147. package/packages/dd-trace/src/openfeature/flagging_provider.js +20 -0
  148. package/packages/dd-trace/src/openfeature/span-enrichment-hook.js +143 -0
  149. package/packages/dd-trace/src/openfeature/span-enrichment.js +149 -0
  150. package/packages/dd-trace/src/openfeature/writers/exposures.js +51 -20
  151. package/packages/dd-trace/src/opentelemetry/metrics/periodic_metric_reader.js +1 -1
  152. package/packages/dd-trace/src/opentelemetry/span-helpers.js +4 -3
  153. package/packages/dd-trace/src/opentelemetry/span.js +1 -1
  154. package/packages/dd-trace/src/opentracing/propagation/log.js +18 -7
  155. package/packages/dd-trace/src/opentracing/propagation/text_map.js +62 -67
  156. package/packages/dd-trace/src/opentracing/span.js +59 -19
  157. package/packages/dd-trace/src/opentracing/span_context.js +49 -0
  158. package/packages/dd-trace/src/plugins/apollo.js +3 -1
  159. package/packages/dd-trace/src/plugins/ci_plugin.js +23 -33
  160. package/packages/dd-trace/src/plugins/database.js +7 -6
  161. package/packages/dd-trace/src/plugins/index.js +4 -0
  162. package/packages/dd-trace/src/plugins/log_injection.js +56 -0
  163. package/packages/dd-trace/src/plugins/log_plugin.js +3 -46
  164. package/packages/dd-trace/src/plugins/outbound.js +1 -1
  165. package/packages/dd-trace/src/plugins/plugin.js +15 -17
  166. package/packages/dd-trace/src/plugins/tracing.js +48 -8
  167. package/packages/dd-trace/src/plugins/util/git.js +3 -1
  168. package/packages/dd-trace/src/plugins/util/test.js +318 -13
  169. package/packages/dd-trace/src/plugins/util/web.js +89 -64
  170. package/packages/dd-trace/src/priority_sampler.js +2 -2
  171. package/packages/dd-trace/src/profiling/profiler.js +2 -2
  172. package/packages/dd-trace/src/profiling/profilers/wall.js +10 -4
  173. package/packages/dd-trace/src/sampling_rule.js +7 -7
  174. package/packages/dd-trace/src/scope.js +7 -5
  175. package/packages/dd-trace/src/service-naming/extra-services.js +14 -0
  176. package/packages/dd-trace/src/service-naming/schemas/v0/messaging.js +10 -0
  177. package/packages/dd-trace/src/service-naming/schemas/v1/messaging.js +8 -0
  178. package/packages/dd-trace/src/service-naming/source-resolver.js +46 -0
  179. package/packages/dd-trace/src/span_format.js +190 -58
  180. package/packages/dd-trace/src/spanleak.js +1 -1
  181. package/packages/dd-trace/src/standalone/index.js +3 -3
  182. package/packages/dd-trace/src/tagger.js +0 -2
  183. package/vendor/dist/@apm-js-collab/code-transformer/index.js +70 -39
  184. package/vendor/dist/@datadog/sketches-js/LICENSE +10 -36
  185. package/vendor/dist/@datadog/sketches-js/index.js +1 -1
  186. package/vendor/dist/protobufjs/index.js +1 -1
  187. package/vendor/dist/protobufjs/minimal/index.js +1 -1
  188. package/packages/dd-trace/src/msgpack/encoder.js +0 -308
  189. package/packages/dd-trace/src/plugins/structured_log_plugin.js +0 -9
  190. package/vendor/dist/opentracing/LICENSE +0 -201
  191. package/vendor/dist/opentracing/binary_carrier.d.ts +0 -11
  192. package/vendor/dist/opentracing/constants.d.ts +0 -61
  193. package/vendor/dist/opentracing/examples/demo/demo.d.ts +0 -2
  194. package/vendor/dist/opentracing/ext/tags.d.ts +0 -90
  195. package/vendor/dist/opentracing/functions.d.ts +0 -20
  196. package/vendor/dist/opentracing/global_tracer.d.ts +0 -14
  197. package/vendor/dist/opentracing/index.d.ts +0 -12
  198. package/vendor/dist/opentracing/index.js +0 -1
  199. package/vendor/dist/opentracing/mock_tracer/index.d.ts +0 -5
  200. package/vendor/dist/opentracing/mock_tracer/mock_context.d.ts +0 -13
  201. package/vendor/dist/opentracing/mock_tracer/mock_report.d.ts +0 -16
  202. package/vendor/dist/opentracing/mock_tracer/mock_span.d.ts +0 -50
  203. package/vendor/dist/opentracing/mock_tracer/mock_tracer.d.ts +0 -26
  204. package/vendor/dist/opentracing/noop.d.ts +0 -8
  205. package/vendor/dist/opentracing/reference.d.ts +0 -33
  206. package/vendor/dist/opentracing/span.d.ts +0 -147
  207. package/vendor/dist/opentracing/span_context.d.ts +0 -26
  208. package/vendor/dist/opentracing/test/api_compatibility.d.ts +0 -16
  209. package/vendor/dist/opentracing/test/mocktracer_implemenation.d.ts +0 -3
  210. package/vendor/dist/opentracing/test/noop_implementation.d.ts +0 -4
  211. package/vendor/dist/opentracing/test/opentracing_api.d.ts +0 -3
  212. package/vendor/dist/opentracing/test/unittest.d.ts +0 -2
  213. package/vendor/dist/opentracing/tracer.d.ts +0 -127
@@ -1,102 +1,90 @@
1
- "component","origin","license","copyright"
2
- "@apm-js-collab/code-transformer","https://github.com/nodejs/orchestrion-js","['Apache-2.0']","['nodejs']"
3
- "@datadog/flagging-core","https://github.com/DataDog/openfeature-js-client","['Apache-2.0']","['DataDog']"
4
- "@datadog/libdatadog","https://github.com/DataDog/libdatadog-nodejs","['Apache-2.0']","['Datadog Inc.']"
5
- "@datadog/native-appsec","https://github.com/DataDog/dd-native-appsec-js","['Apache-2.0']","['Datadog Inc.']"
6
- "@datadog/native-iast-taint-tracking","https://github.com/DataDog/dd-native-iast-taint-tracking-js","['Apache-2.0']","['Datadog Inc.']"
7
- "@datadog/native-metrics","https://github.com/DataDog/dd-native-metrics-js","['Apache-2.0']","['Datadog Inc.']"
8
- "@datadog/openfeature-node-server","https://github.com/DataDog/openfeature-js-client","['Apache-2.0']","['DataDog']"
9
- "@datadog/pprof","https://github.com/DataDog/pprof-nodejs","['Apache-2.0']","['Google Inc.']"
10
- "@datadog/sketches-js","https://github.com/DataDog/sketches-js","['Apache-2.0']","['DataDog']"
11
- "@datadog/wasm-js-rewriter","https://github.com/DataDog/dd-wasm-js-rewriter","['Apache-2.0']","['Datadog Inc.']"
12
- "@emnapi/core","https://github.com/toyobayashi/emnapi","['MIT']","['toyobayashi']"
13
- "@emnapi/runtime","https://github.com/toyobayashi/emnapi","['MIT']","['toyobayashi']"
14
- "@emnapi/wasi-threads","https://github.com/toyobayashi/emnapi","['MIT']","['toyobayashi']"
15
- "@isaacs/ttlcache","https://github.com/isaacs/ttlcache","['BlueOak-1.0.0']","['Isaac Z. Schlueter']"
16
- "@jsep-plugin/assignment","https://github.com/EricSmekens/jsep","['MIT']","['Shelly']"
17
- "@jsep-plugin/regex","https://github.com/EricSmekens/jsep","['MIT']","['Shelly']"
18
- "@napi-rs/wasm-runtime","https://github.com/napi-rs/napi-rs","['MIT']","['LongYinan']"
19
- "@opentelemetry/api","https://github.com/open-telemetry/opentelemetry-js","['Apache-2.0']","['OpenTelemetry Authors']"
20
- "@opentelemetry/api-logs","https://github.com/open-telemetry/opentelemetry-js","['Apache-2.0']","['OpenTelemetry Authors']"
21
- "@opentelemetry/core","https://github.com/open-telemetry/opentelemetry-js","['Apache-2.0']","['OpenTelemetry Authors']"
22
- "@opentelemetry/resources","https://github.com/open-telemetry/opentelemetry-js","['Apache-2.0']","['OpenTelemetry Authors']"
23
- "@opentelemetry/semantic-conventions","https://github.com/open-telemetry/opentelemetry-js","['Apache-2.0']","['OpenTelemetry Authors']"
24
- "@oxc-parser/binding-android-arm-eabi","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
25
- "@oxc-parser/binding-android-arm64","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
26
- "@oxc-parser/binding-darwin-arm64","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
27
- "@oxc-parser/binding-darwin-x64","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
28
- "@oxc-parser/binding-freebsd-x64","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
29
- "@oxc-parser/binding-linux-arm-gnueabihf","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
30
- "@oxc-parser/binding-linux-arm-musleabihf","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
31
- "@oxc-parser/binding-linux-arm64-gnu","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
32
- "@oxc-parser/binding-linux-arm64-musl","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
33
- "@oxc-parser/binding-linux-ppc64-gnu","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
34
- "@oxc-parser/binding-linux-riscv64-gnu","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
35
- "@oxc-parser/binding-linux-riscv64-musl","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
36
- "@oxc-parser/binding-linux-s390x-gnu","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
37
- "@oxc-parser/binding-linux-x64-gnu","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
38
- "@oxc-parser/binding-linux-x64-musl","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
39
- "@oxc-parser/binding-openharmony-arm64","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
40
- "@oxc-parser/binding-wasm32-wasi","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
41
- "@oxc-parser/binding-win32-arm64-msvc","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
42
- "@oxc-parser/binding-win32-ia32-msvc","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
43
- "@oxc-parser/binding-win32-x64-msvc","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
44
- "@oxc-project/types","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
45
- "@protobufjs/aspromise","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
46
- "@protobufjs/base64","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
47
- "@protobufjs/codegen","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
48
- "@protobufjs/eventemitter","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
49
- "@protobufjs/fetch","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
50
- "@protobufjs/float","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
51
- "@protobufjs/inquire","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
52
- "@protobufjs/path","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
53
- "@protobufjs/pool","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
54
- "@protobufjs/utf8","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
55
- "@tybys/wasm-util","https://github.com/toyobayashi/wasm-util","['MIT']","['toyobayashi']"
56
- "@types/estree","https://github.com/DefinitelyTyped/DefinitelyTyped","['MIT']","['DefinitelyTyped']"
57
- "@types/node","https://github.com/DefinitelyTyped/DefinitelyTyped","['MIT']","['DefinitelyTyped']"
58
- "acorn","https://github.com/acornjs/acorn","['MIT']","['acornjs']"
59
- "acorn-import-attributes","https://github.com/xtuc/acorn-import-attributes","['MIT']","['Sven Sauleau']"
60
- "argparse","https://github.com/nodeca/argparse","['Python-2.0']","['nodeca']"
61
- "astring","https://github.com/davidbonnet/astring","['MIT']","['David Bonnet']"
62
- "cjs-module-lexer","https://github.com/nodejs/cjs-module-lexer","['MIT']","['Guy Bedford']"
63
- "crypto-randomuuid","npm:crypto-randomuuid","['MIT']","['Stephen Belanger']"
64
- "dc-polyfill","https://github.com/DataDog/dc-polyfill","['MIT']","['Thomas Hunter II']"
65
- "dd-trace","https://github.com/DataDog/dd-trace-js","['(Apache-2.0 OR BSD-3-Clause)']","['Datadog Inc. <info@datadoghq.com>']"
66
- "detect-newline","https://github.com/sindresorhus/detect-newline","['MIT']","['Sindre Sorhus']"
67
- "escape-string-regexp","https://github.com/sindresorhus/escape-string-regexp","['MIT']","['Sindre Sorhus']"
68
- "esquery","https://github.com/estools/esquery","['BSD-3-Clause']","['Joel Feenstra']"
69
- "estraverse","https://github.com/estools/estraverse","['BSD-2-Clause']","['estools']"
70
- "fast-fifo","https://github.com/mafintosh/fast-fifo","['MIT']","['Mathias Buus']"
71
- "import-in-the-middle","https://github.com/nodejs/import-in-the-middle","['Apache-2.0']","['Bryan English']"
72
- "istanbul-lib-coverage","https://github.com/istanbuljs/istanbuljs","['BSD-3-Clause']","['Krishnan Anantheswaran']"
73
- "jest-docblock","https://github.com/jestjs/jest","['MIT']","['jestjs']"
74
- "js-yaml","https://github.com/nodeca/js-yaml","['MIT']","['Vladimir Zapparov']"
75
- "jsep","https://github.com/EricSmekens/jsep","['MIT']","['Stephen Oney']"
76
- "jsonpath-plus","https://github.com/JSONPath-Plus/JSONPath","['MIT']","['Stefan Goessner']"
77
- "limiter","https://github.com/jhurliman/node-rate-limiter","['MIT']","['John Hurliman']"
78
- "lodash.sortby","https://github.com/lodash/lodash","['MIT']","['John-David Dalton']"
79
- "long","https://github.com/dcodeIO/long.js","['Apache-2.0']","['Daniel Wirtz']"
80
- "lru-cache","https://github.com/isaacs/node-lru-cache","['ISC']","['Isaac Z. Schlueter']"
81
- "meriyah","https://github.com/meriyah/meriyah","['ISC']","['Kenny F.']"
82
- "module-details-from-path","https://github.com/watson/module-details-from-path","['MIT']","['Thomas Watson']"
83
- "mutexify","https://github.com/mafintosh/mutexify","['MIT']","['Mathias Buus']"
84
- "node-addon-api","https://github.com/nodejs/node-addon-api","['MIT']","['nodejs']"
85
- "node-gyp-build","https://github.com/prebuild/node-gyp-build","['MIT']","['Mathias Buus']"
86
- "opentracing","https://github.com/opentracing/opentracing-javascript","['Apache-2.0']","['opentracing']"
87
- "oxc-parser","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
88
- "pprof-format","https://github.com/DataDog/pprof-format","['MIT']","['Datadog Inc.']"
89
- "protobufjs","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
90
- "queue-tick","https://github.com/mafintosh/queue-tick","['MIT']","['Mathias Buus']"
91
- "retry","https://github.com/tim-kos/node-retry","['MIT']","['Tim Koschützki']"
92
- "rfdc","https://github.com/davidmarkclements/rfdc","['MIT']","['David Mark Clements']"
93
- "semifies","https://github.com/holepunchto/semifies","['Apache-2.0']","['Holepunch Inc']"
94
- "shell-quote","https://github.com/ljharb/shell-quote","['MIT']","['James Halliday']"
95
- "source-map","https://github.com/mozilla/source-map","['BSD-3-Clause']","['Nick Fitzgerald']"
96
- "spark-md5","https://github.com/satazor/js-spark-md5","['(WTFPL OR MIT)']","['André Cruz']"
97
- "tlhunter-sorted-set","https://github.com/tlhunter/node-sorted-set","['MIT']","['Thomas Hunter II']"
98
- "tslib","https://github.com/microsoft/tslib","['0BSD']","['Microsoft Corp.']"
99
- "ttl-set","https://github.com/watson/ttl-set","['MIT']","['Thomas Watson']"
100
- "undici-types","https://github.com/nodejs/undici","['MIT']","['nodejs']"
101
- "aws-lambda-nodejs-runtime-interface-client","https://github.com/aws/aws-lambda-nodejs-runtime-interface-client/blob/v2.1.0/src/utils/UserFunction.ts","['Apache-2.0']","['Amazon.com Inc. or its affiliates']"
102
- "is-git-url","https://github.com/jonschlinkert/is-git-url/blob/396965ffabf2f46656c8af4c47bef1d69f09292e/index.js#L9C15-L9C87","['MIT']","['Jon Schlinkert']"
1
+ "component","origin","license","copyright"
2
+ "@apm-js-collab/code-transformer","https://github.com/nodejs/orchestrion-js","['Apache-2.0']","['nodejs']"
3
+ "@datadog/flagging-core","https://github.com/DataDog/openfeature-js-client","['Apache-2.0']","['DataDog']"
4
+ "@datadog/libdatadog","https://github.com/DataDog/libdatadog-nodejs","['Apache-2.0']","['Datadog Inc.']"
5
+ "@datadog/native-appsec","https://github.com/DataDog/dd-native-appsec-js","['Apache-2.0']","['Datadog Inc.']"
6
+ "@datadog/native-iast-taint-tracking","https://github.com/DataDog/dd-native-iast-taint-tracking-js","['Apache-2.0']","['Datadog Inc.']"
7
+ "@datadog/native-metrics","https://github.com/DataDog/dd-native-metrics-js","['Apache-2.0']","['Datadog Inc.']"
8
+ "@datadog/openfeature-node-server","https://github.com/DataDog/openfeature-js-client","['Apache-2.0']","['DataDog']"
9
+ "@datadog/pprof","https://github.com/DataDog/pprof-nodejs","['Apache-2.0']","['Google Inc.']"
10
+ "@datadog/sketches-js","https://github.com/DataDog/sketches-js","['Apache-2.0']","['DataDog']"
11
+ "@datadog/wasm-js-rewriter","https://github.com/DataDog/dd-wasm-js-rewriter","['Apache-2.0']","['Datadog Inc.']"
12
+ "@emnapi/core","https://github.com/toyobayashi/emnapi","['MIT']","['toyobayashi']"
13
+ "@emnapi/runtime","https://github.com/toyobayashi/emnapi","['MIT']","['toyobayashi']"
14
+ "@emnapi/wasi-threads","https://github.com/toyobayashi/emnapi","['MIT']","['toyobayashi']"
15
+ "@isaacs/ttlcache","https://github.com/isaacs/ttlcache","['BlueOak-1.0.0']","['Isaac Z. Schlueter']"
16
+ "@jsep-plugin/assignment","https://github.com/EricSmekens/jsep","['MIT']","['Shelly']"
17
+ "@jsep-plugin/regex","https://github.com/EricSmekens/jsep","['MIT']","['Shelly']"
18
+ "@napi-rs/wasm-runtime","https://github.com/napi-rs/napi-rs","['MIT']","['LongYinan']"
19
+ "@opentelemetry/api","https://github.com/open-telemetry/opentelemetry-js","['Apache-2.0']","['OpenTelemetry Authors']"
20
+ "@opentelemetry/api-logs","https://github.com/open-telemetry/opentelemetry-js","['Apache-2.0']","['OpenTelemetry Authors']"
21
+ "@opentelemetry/core","https://github.com/open-telemetry/opentelemetry-js","['Apache-2.0']","['OpenTelemetry Authors']"
22
+ "@opentelemetry/resources","https://github.com/open-telemetry/opentelemetry-js","['Apache-2.0']","['OpenTelemetry Authors']"
23
+ "@opentelemetry/semantic-conventions","https://github.com/open-telemetry/opentelemetry-js","['Apache-2.0']","['OpenTelemetry Authors']"
24
+ "@oxc-parser/binding-android-arm-eabi","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
25
+ "@oxc-parser/binding-android-arm64","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
26
+ "@oxc-parser/binding-darwin-arm64","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
27
+ "@oxc-parser/binding-darwin-x64","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
28
+ "@oxc-parser/binding-freebsd-x64","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
29
+ "@oxc-parser/binding-linux-arm-gnueabihf","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
30
+ "@oxc-parser/binding-linux-arm-musleabihf","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
31
+ "@oxc-parser/binding-linux-arm64-gnu","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
32
+ "@oxc-parser/binding-linux-arm64-musl","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
33
+ "@oxc-parser/binding-linux-ppc64-gnu","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
34
+ "@oxc-parser/binding-linux-riscv64-gnu","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
35
+ "@oxc-parser/binding-linux-riscv64-musl","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
36
+ "@oxc-parser/binding-linux-s390x-gnu","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
37
+ "@oxc-parser/binding-linux-x64-gnu","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
38
+ "@oxc-parser/binding-linux-x64-musl","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
39
+ "@oxc-parser/binding-openharmony-arm64","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
40
+ "@oxc-parser/binding-wasm32-wasi","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
41
+ "@oxc-parser/binding-win32-arm64-msvc","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
42
+ "@oxc-parser/binding-win32-ia32-msvc","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
43
+ "@oxc-parser/binding-win32-x64-msvc","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
44
+ "@oxc-project/types","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
45
+ "@tybys/wasm-util","https://github.com/toyobayashi/wasm-util","['MIT']","['toyobayashi']"
46
+ "@types/estree","https://github.com/DefinitelyTyped/DefinitelyTyped","['MIT']","['DefinitelyTyped']"
47
+ "acorn","https://github.com/acornjs/acorn","['MIT']","['acornjs']"
48
+ "acorn-import-attributes","https://github.com/xtuc/acorn-import-attributes","['MIT']","['Sven Sauleau']"
49
+ "argparse","https://github.com/nodeca/argparse","['Python-2.0']","['nodeca']"
50
+ "astring","https://github.com/davidbonnet/astring","['MIT']","['David Bonnet']"
51
+ "cjs-module-lexer","https://github.com/nodejs/cjs-module-lexer","['MIT']","['Guy Bedford']"
52
+ "crypto-randomuuid","npm:crypto-randomuuid","['MIT']","['Stephen Belanger']"
53
+ "dc-polyfill","https://github.com/DataDog/dc-polyfill","['MIT']","['Thomas Hunter II']"
54
+ "dd-trace","https://github.com/DataDog/dd-trace-js","['(Apache-2.0 OR BSD-3-Clause)']","['Datadog Inc. <info@datadoghq.com>']"
55
+ "detect-newline","https://github.com/sindresorhus/detect-newline","['MIT']","['Sindre Sorhus']"
56
+ "escape-string-regexp","https://github.com/sindresorhus/escape-string-regexp","['MIT']","['Sindre Sorhus']"
57
+ "esquery","https://github.com/estools/esquery","['BSD-3-Clause']","['Joel Feenstra']"
58
+ "estraverse","https://github.com/estools/estraverse","['BSD-2-Clause']","['estools']"
59
+ "fast-fifo","https://github.com/mafintosh/fast-fifo","['MIT']","['Mathias Buus']"
60
+ "import-in-the-middle","https://github.com/nodejs/import-in-the-middle","['Apache-2.0']","['Bryan English']"
61
+ "istanbul-lib-coverage","https://github.com/istanbuljs/istanbuljs","['BSD-3-Clause']","['Krishnan Anantheswaran']"
62
+ "jest-docblock","https://github.com/jestjs/jest","['MIT']","['jestjs']"
63
+ "js-yaml","https://github.com/nodeca/js-yaml","['MIT']","['Vladimir Zapparov']"
64
+ "jsep","https://github.com/EricSmekens/jsep","['MIT']","['Stephen Oney']"
65
+ "jsonpath-plus","https://github.com/JSONPath-Plus/JSONPath","['MIT']","['Stefan Goessner']"
66
+ "limiter","https://github.com/jhurliman/node-rate-limiter","['MIT']","['John Hurliman']"
67
+ "lodash.sortby","https://github.com/lodash/lodash","['MIT']","['John-David Dalton']"
68
+ "long","https://github.com/dcodeIO/long.js","['Apache-2.0']","['Daniel Wirtz']"
69
+ "lru-cache","https://github.com/isaacs/node-lru-cache","['ISC']","['Isaac Z. Schlueter']"
70
+ "meriyah","https://github.com/meriyah/meriyah","['ISC']","['Kenny F.']"
71
+ "module-details-from-path","https://github.com/watson/module-details-from-path","['MIT']","['Thomas Watson']"
72
+ "mutexify","https://github.com/mafintosh/mutexify","['MIT']","['Mathias Buus']"
73
+ "node-addon-api","https://github.com/nodejs/node-addon-api","['MIT']","['nodejs']"
74
+ "node-gyp-build","https://github.com/prebuild/node-gyp-build","['MIT']","['Mathias Buus']"
75
+ "opentracing","https://github.com/opentracing/opentracing-javascript","['Apache-2.0']","['opentracing']"
76
+ "oxc-parser","https://github.com/oxc-project/oxc","['MIT']","['Boshen and oxc contributors']"
77
+ "pprof-format","https://github.com/DataDog/pprof-format","['MIT']","['Datadog Inc.']"
78
+ "protobufjs","https://github.com/protobufjs/protobuf.js","['BSD-3-Clause']","['Daniel Wirtz']"
79
+ "queue-tick","https://github.com/mafintosh/queue-tick","['MIT']","['Mathias Buus']"
80
+ "retry","https://github.com/tim-kos/node-retry","['MIT']","['Tim Koschützki']"
81
+ "rfdc","https://github.com/davidmarkclements/rfdc","['MIT']","['David Mark Clements']"
82
+ "semifies","https://github.com/holepunchto/semifies","['Apache-2.0']","['Holepunch Inc']"
83
+ "shell-quote","https://github.com/ljharb/shell-quote","['MIT']","['James Halliday']"
84
+ "source-map","https://github.com/mozilla/source-map","['BSD-3-Clause']","['Nick Fitzgerald']"
85
+ "spark-md5","https://github.com/satazor/js-spark-md5","['(WTFPL OR MIT)']","['André Cruz']"
86
+ "tlhunter-sorted-set","https://github.com/tlhunter/node-sorted-set","['MIT']","['Thomas Hunter II']"
87
+ "tslib","https://github.com/microsoft/tslib","['0BSD']","['Microsoft Corp.']"
88
+ "ttl-set","https://github.com/watson/ttl-set","['MIT']","['Thomas Watson']"
89
+ "aws-lambda-nodejs-runtime-interface-client","https://github.com/aws/aws-lambda-nodejs-runtime-interface-client/blob/v2.1.0/src/utils/UserFunction.ts","['Apache-2.0']","['Amazon.com Inc. or its affiliates']"
90
+ "is-git-url","https://github.com/jonschlinkert/is-git-url/blob/396965ffabf2f46656c8af4c47bef1d69f09292e/index.js#L9C15-L9C87","['MIT']","['Jon Schlinkert']"
package/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { ClientRequest, IncomingMessage, OutgoingMessage, ServerResponse } from "http";
2
2
  import { LookupFunction } from 'net';
3
- import * as opentracing from "./vendor/dist/opentracing";
3
+ import * as opentracing from "opentracing";
4
4
  import * as otel from "@opentelemetry/api";
5
5
 
6
6
  /**
@@ -230,6 +230,7 @@ interface Plugins {
230
230
  "apollo": tracer.plugins.apollo;
231
231
  "avsc": tracer.plugins.avsc;
232
232
  "aws-sdk": tracer.plugins.aws_sdk;
233
+ "azure-cosmos": tracer.plugins.azure_cosmos;
233
234
  "azure-event-hubs": tracer.plugins.azure_event_hubs;
234
235
  "azure-functions": tracer.plugins.azure_functions;
235
236
  "azure-service-bus": tracer.plugins.azure_service_bus;
@@ -245,6 +246,7 @@ interface Plugins {
245
246
  "cypress": tracer.plugins.cypress;
246
247
  "dns": tracer.plugins.dns;
247
248
  "elasticsearch": tracer.plugins.elasticsearch;
249
+ "electron": tracer.plugins.electron;
248
250
  "express": tracer.plugins.express;
249
251
  "fastify": tracer.plugins.fastify;
250
252
  "fetch": tracer.plugins.fetch;
@@ -278,6 +280,7 @@ interface Plugins {
278
280
  "mongoose": tracer.plugins.mongoose;
279
281
  "mysql": tracer.plugins.mysql;
280
282
  "mysql2": tracer.plugins.mysql2;
283
+ "nats": tracer.plugins.nats;
281
284
  "net": tracer.plugins.net;
282
285
  "next": tracer.plugins.next;
283
286
  "nyc": tracer.plugins.nyc;
@@ -861,6 +864,21 @@ declare namespace tracer {
861
864
  * Programmatic configuration takes precedence over the environment variables listed above.
862
865
  */
863
866
  initializationTimeoutMs?: number
867
+ /**
868
+ * Configuration for span enrichment with feature flag evaluation data.
869
+ */
870
+ spanEnrichment?: {
871
+ /**
872
+ * Whether to enable span enrichment with feature flag data.
873
+ * When enabled, feature flag evaluation metadata is attached to APM spans.
874
+ * Can be configured via DD_EXPERIMENTAL_FLAGGING_PROVIDER_SPAN_ENRICHMENT_ENABLED environment variable.
875
+ *
876
+ * @default false
877
+ * @env DD_EXPERIMENTAL_FLAGGING_PROVIDER_SPAN_ENRICHMENT_ENABLED
878
+ * Programmatic configuration takes precedence over the environment variables listed above.
879
+ */
880
+ enabled?: boolean
881
+ }
864
882
  }
865
883
  };
866
884
 
@@ -908,11 +926,20 @@ declare namespace tracer {
908
926
 
909
927
  /**
910
928
  * Enables DBM to APM link using tag injection.
929
+ *
930
+ * - `disabled`: No SQL comment is injected (default).
931
+ * - `service`: Injects a SQL comment with service-level tags (database name, service, environment,
932
+ * host, tracer service, tracer version). Enables DBM–APM correlation without full trace linking.
933
+ * - `full`: Same as `service`, plus a W3C `traceparent` for full distributed trace correlation.
934
+ * - `dynamic_service`: Same as `service`, but also automatically injects the propagation hash
935
+ * (`ddsh`) when process tags are enabled (`DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED=true`).
936
+ * This is a convenience shorthand for `service` + `DD_DBM_INJECT_SQL_BASEHASH=true`.
937
+ *
911
938
  * @default 'disabled'
912
939
  * @env DD_DBM_PROPAGATION_MODE
913
940
  * Programmatic configuration takes precedence over the environment variables listed above.
914
941
  */
915
- dbmPropagationMode?: 'disabled' | 'service' | 'full'
942
+ dbmPropagationMode?: 'disabled' | 'service' | 'full' | 'dynamic_service'
916
943
 
917
944
  /**
918
945
  * Whether to enable Data Streams Monitoring.
@@ -1997,6 +2024,20 @@ declare namespace tracer {
1997
2024
  /** @hidden */
1998
2025
  interface Instrumentation extends Integration, Analyzable {}
1999
2026
 
2027
+ /** @hidden */
2028
+ interface DatabaseInstrumentation extends Instrumentation {
2029
+ /**
2030
+ * Truncate the resource name (e.g. the query) to the given length.
2031
+ * When set to `true`, truncates to 5000 characters (matching the
2032
+ * Datadog agent's default). When set to a number, truncates to that
2033
+ * many characters. This can help prevent large queries from blocking
2034
+ * the event loop during trace encoding.
2035
+ *
2036
+ * @default false
2037
+ */
2038
+ truncate?: boolean | number;
2039
+ }
2040
+
2000
2041
  /** @hidden */
2001
2042
  interface Http extends Instrumentation {
2002
2043
  /**
@@ -2217,7 +2258,7 @@ declare namespace tracer {
2217
2258
  }
2218
2259
 
2219
2260
  /** @hidden */
2220
- interface Prisma extends Instrumentation {}
2261
+ interface Prisma extends DatabaseInstrumentation {}
2221
2262
 
2222
2263
  /** @hidden */
2223
2264
  interface PrismaClient extends Prisma {}
@@ -2336,6 +2377,12 @@ declare namespace tracer {
2336
2377
  [key: string]: boolean | Object | undefined;
2337
2378
  }
2338
2379
 
2380
+ /**
2381
+ * This plugin automatically instruments the
2382
+ * @azure/cosmos module
2383
+ */
2384
+ interface azure_cosmos extends Integration {}
2385
+
2339
2386
  /**
2340
2387
  * This plugin automatically instruments the
2341
2388
  * @azure/event-hubs module
@@ -2443,6 +2490,26 @@ declare namespace tracer {
2443
2490
  };
2444
2491
  }
2445
2492
 
2493
+ /**
2494
+ * This plugin automatically instruments the
2495
+ * [electron](https://github.com/electron/electron) module.
2496
+ */
2497
+ interface electron extends Instrumentation {
2498
+ /**
2499
+ * Whether to enable instrumentation of ipc spans
2500
+ *
2501
+ * @default true
2502
+ */
2503
+ ipc?: boolean;
2504
+
2505
+ /**
2506
+ * Whether to enable instrumentation of net spans
2507
+ *
2508
+ * @default true
2509
+ */
2510
+ net?: boolean;
2511
+ }
2512
+
2446
2513
  /**
2447
2514
  * This plugin automatically instruments the
2448
2515
  * [express](http://expressjs.com/) module.
@@ -2849,13 +2916,13 @@ declare namespace tracer {
2849
2916
  * [mocha](https://mochajs.org/) module.
2850
2917
  */
2851
2918
  interface mocha extends Integration {}
2852
-
2919
+
2853
2920
  /**
2854
2921
  * This plugin automatically instruments the
2855
2922
  * [modelcontextprotocol-sdk](https://github.com/npmjs/package/@modelcontextprotocol/sdk) library.
2856
2923
  */
2857
2924
  interface modelcontextprotocol_sdk extends Instrumentation {}
2858
-
2925
+
2859
2926
  /**
2860
2927
  * This plugin automatically instruments the
2861
2928
  * [moleculer](https://moleculer.services/) module.
@@ -2887,6 +2954,24 @@ declare namespace tracer {
2887
2954
  */
2888
2955
  heartbeatEnabled?: boolean;
2889
2956
 
2957
+ /**
2958
+ * How to mask primitive query values in the `mongodb.query` tag and the
2959
+ * resource name (when `queryInResourceName` is also enabled). Keys,
2960
+ * operator names, and array / pipeline shape are preserved so the masked
2961
+ * query is still a usable query signature.
2962
+ *
2963
+ * - `'types'`: replace each primitive leaf with its `typeof` name
2964
+ * (`'string'`, `'number'`, `'boolean'`, `'bigint'`, `'object'`,
2965
+ * `'null'`). Keeps the same redaction guarantee as `'redact'` but
2966
+ * preserves the value types so the rendered query can still be used
2967
+ * to design indexes.
2968
+ * - `'redact'`: replace each primitive leaf with `'?'`. Strictest masking.
2969
+ * - `'none'`: do not mask. Values land verbatim on the span.
2970
+ *
2971
+ * @default 'none'
2972
+ */
2973
+ obfuscateQuery?: 'none' | 'types' | 'redact';
2974
+
2890
2975
  /**
2891
2976
  * Whether to include the query contents in the resource name.
2892
2977
  */
@@ -2913,6 +2998,13 @@ declare namespace tracer {
2913
2998
  */
2914
2999
  interface mysql2 extends mysql {}
2915
3000
 
3001
+ /**
3002
+ * This plugin automatically instruments the
3003
+ * [@nats-io/transport-node](https://github.com/nats-io/nats.js) and
3004
+ * [@nats-io/nats-core](https://github.com/nats-io/nats.js) modules.
3005
+ */
3006
+ interface nats extends Instrumentation {}
3007
+
2916
3008
  /**
2917
3009
  * This plugin automatically instruments the
2918
3010
  * [net](https://nodejs.org/api/net.html) module.
@@ -2982,7 +3074,7 @@ declare namespace tracer {
2982
3074
  * This plugin automatically instruments the
2983
3075
  * [pg](https://node-postgres.com/) module.
2984
3076
  */
2985
- interface pg extends Instrumentation {
3077
+ interface pg extends DatabaseInstrumentation {
2986
3078
  /**
2987
3079
  * The service name to be used for this plugin. If a function is used, it will be passed the connection parameters and its return value will be used as the service name.
2988
3080
  */
@@ -3584,11 +3676,15 @@ declare namespace tracer {
3584
3676
 
3585
3677
  /**
3586
3678
  * Enable LLM Observability tracing.
3679
+ *
3680
+ * @deprecated Enabling LLM Observability via `llmobs.enable()` is deprecated and will be removed in dd-trace@7.0.0. Please instantiate LLM Observability via DD_LLMOBS_ENABLED or `tracer.init({ llmobs: ...options })`.
3587
3681
  */
3588
3682
  enable (options: LLMObsEnableOptions): void,
3589
3683
 
3590
3684
  /**
3591
3685
  * Disable LLM Observability tracing.
3686
+ *
3687
+ * @deprecated Disabling LLM Observability via `llmobs.disable()` is deprecated and will be removed in dd-trace@7.0.0. Set DD_LLMOBS_ENABLED=false to disable LLM Observability.
3592
3688
  */
3593
3689
  disable (): void,
3594
3690
 
@@ -3723,6 +3819,11 @@ declare namespace tracer {
3723
3819
  }
3724
3820
 
3725
3821
  interface LLMObservabilitySpan {
3822
+ /**
3823
+ * The span kind
3824
+ */
3825
+ kind: spanKind,
3826
+
3726
3827
  /**
3727
3828
  * The input content associated with the span.
3728
3829
  */
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "dd-trace",
3
- "version": "5.103.0",
3
+ "version": "5.105.0",
4
4
  "description": "Datadog APM tracing client for JavaScript",
5
5
  "main": "index.js",
6
6
  "typings": "index.d.ts",
7
7
  "scripts": {
8
8
  "env": "bash ./plugin-env",
9
- "prepare": "cd vendor && npm ci --include=dev",
9
+ "prepare": "node scripts/patch-istanbul-lib-coverage.js && cd vendor && npm ci --include=dev",
10
10
  "preinstall": "node scripts/preinstall.js",
11
11
  "prepack": "node scripts/release/swap-v5-types.js",
12
12
  "bench": "node benchmark/index.js",
@@ -19,7 +19,7 @@
19
19
  "type:check": "tsc --noEmit -p tsconfig.dev.json",
20
20
  "type:doc:build": "cd docs && yarn && yarn build",
21
21
  "type:doc:test": "cd docs && yarn && yarn test",
22
- "lint": "node scripts/check_licenses.js && node scripts/check-no-coverage-artifacts.js && node scripts/check-no-mcr-images.js && node scripts/check-docker-image-shas.js && eslint . --concurrency=auto --max-warnings 0",
22
+ "lint": "node scripts/check_licenses.js && node scripts/check-no-coverage-artifacts.js && node scripts/check-no-mcr-images.js && node scripts/check-docker-image-shas.js && eslint . --concurrency=auto --max-warnings 0 && npm run lint:codeowners:ci && npm run verify-exercised-tests",
23
23
  "lint:fix": "node scripts/check_licenses.js && node scripts/check-no-coverage-artifacts.js && node scripts/check-no-mcr-images.js && node scripts/check-docker-image-shas.js && eslint . --concurrency=auto --max-warnings 0 --fix",
24
24
  "lint:inspect": "npx @eslint/config-inspector@latest",
25
25
  "lint:codeowners": "codeowners-audit",
@@ -72,6 +72,7 @@
72
72
  "test:integration:aiguard:coverage": "node ./integration-tests/coverage/run-suite.js --timeout 60000 \"integration-tests/aiguard/*.spec.js\"",
73
73
  "test:integration:appsec": "mocha --timeout 60000 \"integration-tests/appsec/*.spec.js\"",
74
74
  "test:integration:appsec:coverage": "node ./integration-tests/coverage/run-suite.js --timeout 60000 \"integration-tests/appsec/*.spec.js\"",
75
+ "test:integration:crashtracking": "mocha --timeout 60000 \"integration-tests/crashtracking/*.spec.js\"",
75
76
  "test:integration:bun": "mocha --timeout 60000 \"integration-tests/bun/*.spec.js\"",
76
77
  "test:integration:cucumber": "mocha --timeout 60000 \"integration-tests/cucumber/*.spec.js\"",
77
78
  "test:integration:cucumber:coverage": "node ./integration-tests/coverage/run-suite.js --timeout 60000 \"integration-tests/cucumber/*.spec.js\"",
@@ -128,7 +129,7 @@
128
129
  },
129
130
  "homepage": "https://github.com/DataDog/dd-trace-js#readme",
130
131
  "engines": {
131
- "node": ">=18 <26"
132
+ "node": ">=18 <27"
132
133
  },
133
134
  "files": [
134
135
  "/package.json",
@@ -161,19 +162,20 @@
161
162
  ],
162
163
  "dependencies": {
163
164
  "dc-polyfill": "^0.1.11",
164
- "import-in-the-middle": "^3.0.1"
165
+ "import-in-the-middle": "^3.0.1",
166
+ "opentracing": ">=0.14.7"
165
167
  },
166
168
  "optionalDependencies": {
167
169
  "@datadog/libdatadog": "0.9.3",
168
170
  "@datadog/native-appsec": "11.0.1",
169
- "@datadog/native-iast-taint-tracking": "4.1.0",
171
+ "@datadog/native-iast-taint-tracking": "4.2.0",
170
172
  "@datadog/native-metrics": "3.1.2",
171
- "@datadog/openfeature-node-server": "1.1.2",
172
- "@datadog/pprof": "5.14.1",
173
+ "@datadog/openfeature-node-server": "1.2.1",
174
+ "@datadog/pprof": "5.14.4",
173
175
  "@datadog/wasm-js-rewriter": "5.0.1",
174
176
  "@opentelemetry/api": ">=1.0.0 <1.10.0",
175
177
  "@opentelemetry/api-logs": "<1.0.0",
176
- "oxc-parser": "^0.129.0"
178
+ "oxc-parser": "^0.132.0"
177
179
  },
178
180
  "devDependencies": {
179
181
  "@actions/core": "^3.0.1",
@@ -188,16 +190,16 @@
188
190
  "@types/mocha": "^10.0.10",
189
191
  "@types/node": "^18.19.106",
190
192
  "@types/sinon": "^21.0.1",
191
- "axios": "^1.16.0",
193
+ "axios": "^1.16.1",
192
194
  "benchmark": "^2.1.4",
193
195
  "body-parser": "^2.2.2",
194
- "bun": "1.3.13",
196
+ "bun": "1.3.14",
195
197
  "codeowners-audit": "^2.9.0",
196
198
  "eslint": "^9.39.2",
197
199
  "eslint-plugin-cypress": "^6.4.1",
198
200
  "eslint-plugin-import": "^2.32.0",
199
- "eslint-plugin-jsdoc": "^62.9.0",
200
- "eslint-plugin-mocha": "^11.2.0",
201
+ "eslint-plugin-jsdoc": "^63.0.0",
202
+ "eslint-plugin-mocha": "^11.3.0",
201
203
  "eslint-plugin-n": "^18.0.1",
202
204
  "eslint-plugin-promise": "^7.3.0",
203
205
  "eslint-plugin-sonarjs": "^4.0.3",
@@ -210,7 +212,7 @@
210
212
  "istanbul-lib-report": "^3.0.0",
211
213
  "istanbul-reports": "^3.0.2",
212
214
  "jszip": "^3.10.1",
213
- "mocha": "^11.6.0",
215
+ "mocha": "^11.7.6",
214
216
  "mocha-junit-reporter": "^2.2.1",
215
217
  "mocha-multi-reporters": "^1.5.1",
216
218
  "multer": "^2.1.1",
@@ -218,17 +220,16 @@
218
220
  "node-preload": "^0.2.1",
219
221
  "nyc": "^18.0.0",
220
222
  "octokit": "^5.0.3",
221
- "opentracing": ">=0.14.7",
222
223
  "p-limit": "^7.2.0",
223
224
  "proxyquire": "^2.1.3",
224
225
  "retry": "^0.13.1",
225
226
  "semifies": "^1.0.0",
226
- "semver": "^7.7.2",
227
+ "semver": "^7.8.1",
227
228
  "sinon": "^22.0.0",
228
229
  "tiktoken": "^1.0.21",
229
230
  "typescript": "^6.0.3",
230
231
  "workerpool": "^10.0.2",
231
- "yaml": "^2.8.4",
232
+ "yaml": "^2.9.0",
232
233
  "yarn-deduplicate": "^6.0.2"
233
234
  }
234
235
  }
@@ -19,7 +19,7 @@ class DatadogStorage extends AsyncLocalStorage {
19
19
  * @override
20
20
  */
21
21
  enterWith (store) {
22
- const handle = {}
22
+ const handle = { noop: store?.noop }
23
23
  stores.set(handle, store)
24
24
  super.enterWith(handle)
25
25
  }
@@ -41,7 +41,7 @@ function wrapProcess (process) {
41
41
  addHook({
42
42
  name: 'aerospike',
43
43
  file: 'lib/commands/command.js',
44
- versions: ['4', '5', '6'],
44
+ versions: ['>=4'],
45
45
  },
46
46
  commandFactory => {
47
47
  return shimmer.wrapFunction(commandFactory, f => wrapCreateCommand(f))