dd-trace 5.83.0 → 5.85.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 (630) hide show
  1. package/LICENSE-3rdparty.csv +0 -1
  2. package/ci/cypress/polyfills.js +1 -1
  3. package/ci/init.js +5 -5
  4. package/ext/exporters.js +1 -1
  5. package/ext/formats.js +1 -1
  6. package/ext/index.js +1 -1
  7. package/ext/kinds.js +1 -1
  8. package/ext/priority.js +1 -1
  9. package/ext/scopes.js +1 -1
  10. package/ext/tags.js +1 -1
  11. package/ext/types.js +1 -1
  12. package/index.d.ts +115 -2
  13. package/initialize.mjs +47 -31
  14. package/loader-hook.mjs +35 -22
  15. package/package.json +36 -33
  16. package/packages/datadog-code-origin/index.js +12 -10
  17. package/packages/datadog-core/src/utils/src/pick.js +2 -2
  18. package/packages/datadog-esbuild/index.js +75 -79
  19. package/packages/datadog-esbuild/src/log.js +32 -0
  20. package/packages/datadog-esbuild/src/utils.js +12 -8
  21. package/packages/datadog-instrumentations/src/aerospike.js +3 -3
  22. package/packages/datadog-instrumentations/src/ai.js +5 -5
  23. package/packages/datadog-instrumentations/src/amqp10.js +1 -1
  24. package/packages/datadog-instrumentations/src/amqplib.js +1 -1
  25. package/packages/datadog-instrumentations/src/anthropic.js +3 -3
  26. package/packages/datadog-instrumentations/src/apollo-server.js +4 -4
  27. package/packages/datadog-instrumentations/src/apollo.js +2 -2
  28. package/packages/datadog-instrumentations/src/avsc.js +1 -1
  29. package/packages/datadog-instrumentations/src/aws-sdk.js +4 -4
  30. package/packages/datadog-instrumentations/src/azure-event-hubs.js +2 -2
  31. package/packages/datadog-instrumentations/src/azure-functions.js +1 -1
  32. package/packages/datadog-instrumentations/src/azure-service-bus.js +1 -1
  33. package/packages/datadog-instrumentations/src/body-parser.js +2 -2
  34. package/packages/datadog-instrumentations/src/bunyan.js +1 -1
  35. package/packages/datadog-instrumentations/src/cassandra-driver.js +1 -1
  36. package/packages/datadog-instrumentations/src/child_process.js +7 -7
  37. package/packages/datadog-instrumentations/src/confluentinc-kafka-javascript.js +17 -16
  38. package/packages/datadog-instrumentations/src/cookie-parser.js +1 -1
  39. package/packages/datadog-instrumentations/src/couchbase.js +8 -6
  40. package/packages/datadog-instrumentations/src/crypto.js +1 -1
  41. package/packages/datadog-instrumentations/src/cucumber.js +19 -19
  42. package/packages/datadog-instrumentations/src/cypress.js +1 -1
  43. package/packages/datadog-instrumentations/src/dns.js +2 -2
  44. package/packages/datadog-instrumentations/src/elasticsearch.js +2 -2
  45. package/packages/datadog-instrumentations/src/express-mongo-sanitize.js +2 -2
  46. package/packages/datadog-instrumentations/src/express-session.js +1 -1
  47. package/packages/datadog-instrumentations/src/express.js +4 -4
  48. package/packages/datadog-instrumentations/src/fastify.js +1 -1
  49. package/packages/datadog-instrumentations/src/fetch.js +2 -2
  50. package/packages/datadog-instrumentations/src/fs.js +7 -7
  51. package/packages/datadog-instrumentations/src/generic-pool.js +2 -2
  52. package/packages/datadog-instrumentations/src/google-cloud-pubsub.js +8 -8
  53. package/packages/datadog-instrumentations/src/google-cloud-vertexai.js +4 -4
  54. package/packages/datadog-instrumentations/src/google-genai.js +1 -1
  55. package/packages/datadog-instrumentations/src/graphql.js +10 -10
  56. package/packages/datadog-instrumentations/src/grpc/client.js +9 -13
  57. package/packages/datadog-instrumentations/src/grpc/types.js +1 -1
  58. package/packages/datadog-instrumentations/src/helpers/bundler-register.js +1 -1
  59. package/packages/datadog-instrumentations/src/helpers/check-require-cache.js +1 -1
  60. package/packages/datadog-instrumentations/src/helpers/extract-package-and-module-path.js +2 -2
  61. package/packages/datadog-instrumentations/src/helpers/hooks.js +1 -1
  62. package/packages/datadog-instrumentations/src/helpers/register.js +7 -7
  63. package/packages/datadog-instrumentations/src/helpers/rewriter/compiler.js +6 -0
  64. package/packages/datadog-instrumentations/src/helpers/rewriter/index.js +1 -0
  65. package/packages/datadog-instrumentations/src/helpers/rewriter/instrumentations/index.js +1 -1
  66. package/packages/datadog-instrumentations/src/helpers/rewriter/instrumentations/langchain.js +55 -55
  67. package/packages/datadog-instrumentations/src/helpers/rewriter/transforms.js +74 -17
  68. package/packages/datadog-instrumentations/src/helpers/router-helper.js +7 -7
  69. package/packages/datadog-instrumentations/src/helpers/shared-utils.js +1 -1
  70. package/packages/datadog-instrumentations/src/hono.js +6 -6
  71. package/packages/datadog-instrumentations/src/http/client.js +1 -1
  72. package/packages/datadog-instrumentations/src/http/server.js +4 -4
  73. package/packages/datadog-instrumentations/src/http2/server.js +1 -1
  74. package/packages/datadog-instrumentations/src/ioredis.js +1 -1
  75. package/packages/datadog-instrumentations/src/iovalkey.js +1 -1
  76. package/packages/datadog-instrumentations/src/jest.js +250 -106
  77. package/packages/datadog-instrumentations/src/kafkajs.js +9 -8
  78. package/packages/datadog-instrumentations/src/knex.js +2 -2
  79. package/packages/datadog-instrumentations/src/koa.js +3 -1
  80. package/packages/datadog-instrumentations/src/ldapjs.js +1 -1
  81. package/packages/datadog-instrumentations/src/light-my-request.js +1 -1
  82. package/packages/datadog-instrumentations/src/limitd-client.js +1 -1
  83. package/packages/datadog-instrumentations/src/mariadb.js +1 -1
  84. package/packages/datadog-instrumentations/src/memcached.js +1 -1
  85. package/packages/datadog-instrumentations/src/mocha/common.js +3 -3
  86. package/packages/datadog-instrumentations/src/mocha/main.js +24 -24
  87. package/packages/datadog-instrumentations/src/mocha/utils.js +15 -11
  88. package/packages/datadog-instrumentations/src/mocha/worker.js +4 -4
  89. package/packages/datadog-instrumentations/src/moleculer/server.js +1 -1
  90. package/packages/datadog-instrumentations/src/mongodb-core.js +3 -3
  91. package/packages/datadog-instrumentations/src/mongodb.js +7 -7
  92. package/packages/datadog-instrumentations/src/mongoose.js +10 -10
  93. package/packages/datadog-instrumentations/src/mquery.js +6 -6
  94. package/packages/datadog-instrumentations/src/multer.js +1 -1
  95. package/packages/datadog-instrumentations/src/mysql.js +1 -1
  96. package/packages/datadog-instrumentations/src/net.js +6 -6
  97. package/packages/datadog-instrumentations/src/next.js +6 -6
  98. package/packages/datadog-instrumentations/src/nyc.js +34 -2
  99. package/packages/datadog-instrumentations/src/openai.js +24 -24
  100. package/packages/datadog-instrumentations/src/oracledb.js +2 -2
  101. package/packages/datadog-instrumentations/src/otel-sdk-trace.js +1 -1
  102. package/packages/datadog-instrumentations/src/passport-http.js +1 -1
  103. package/packages/datadog-instrumentations/src/passport-local.js +1 -1
  104. package/packages/datadog-instrumentations/src/passport-utils.js +1 -1
  105. package/packages/datadog-instrumentations/src/passport.js +1 -1
  106. package/packages/datadog-instrumentations/src/pg.js +3 -3
  107. package/packages/datadog-instrumentations/src/pino.js +2 -2
  108. package/packages/datadog-instrumentations/src/playwright.js +71 -67
  109. package/packages/datadog-instrumentations/src/prisma.js +24 -78
  110. package/packages/datadog-instrumentations/src/promise-js.js +1 -1
  111. package/packages/datadog-instrumentations/src/promise.js +1 -1
  112. package/packages/datadog-instrumentations/src/protobufjs.js +6 -6
  113. package/packages/datadog-instrumentations/src/q.js +2 -2
  114. package/packages/datadog-instrumentations/src/redis.js +2 -2
  115. package/packages/datadog-instrumentations/src/rhea.js +5 -5
  116. package/packages/datadog-instrumentations/src/router.js +8 -8
  117. package/packages/datadog-instrumentations/src/selenium.js +3 -3
  118. package/packages/datadog-instrumentations/src/sequelize.js +1 -1
  119. package/packages/datadog-instrumentations/src/sharedb.js +2 -2
  120. package/packages/datadog-instrumentations/src/tedious.js +1 -1
  121. package/packages/datadog-instrumentations/src/undici.js +2 -2
  122. package/packages/datadog-instrumentations/src/url.js +5 -5
  123. package/packages/datadog-instrumentations/src/vitest.js +56 -45
  124. package/packages/datadog-instrumentations/src/when.js +1 -1
  125. package/packages/datadog-instrumentations/src/winston.js +1 -1
  126. package/packages/datadog-instrumentations/src/ws.js +128 -41
  127. package/packages/datadog-plugin-aerospike/src/index.js +4 -4
  128. package/packages/datadog-plugin-ai/src/index.js +1 -1
  129. package/packages/datadog-plugin-ai/src/tracing.js +2 -2
  130. package/packages/datadog-plugin-ai/src/utils.js +1 -1
  131. package/packages/datadog-plugin-amqp10/src/consumer.js +2 -2
  132. package/packages/datadog-plugin-amqp10/src/index.js +1 -1
  133. package/packages/datadog-plugin-amqp10/src/producer.js +2 -2
  134. package/packages/datadog-plugin-amqplib/src/client.js +2 -2
  135. package/packages/datadog-plugin-amqplib/src/consumer.js +2 -2
  136. package/packages/datadog-plugin-amqplib/src/index.js +1 -1
  137. package/packages/datadog-plugin-amqplib/src/producer.js +2 -2
  138. package/packages/datadog-plugin-amqplib/src/util.js +1 -1
  139. package/packages/datadog-plugin-anthropic/src/index.js +1 -1
  140. package/packages/datadog-plugin-anthropic/src/tracing.js +2 -2
  141. package/packages/datadog-plugin-apollo/src/gateway/fetch.js +1 -1
  142. package/packages/datadog-plugin-apollo/src/gateway/index.js +1 -1
  143. package/packages/datadog-plugin-apollo/src/gateway/request.js +5 -5
  144. package/packages/datadog-plugin-apollo/src/index.js +1 -1
  145. package/packages/datadog-plugin-avsc/src/schema_iterator.js +3 -3
  146. package/packages/datadog-plugin-aws-sdk/src/base.js +11 -10
  147. package/packages/datadog-plugin-aws-sdk/src/services/bedrockruntime/index.js +1 -1
  148. package/packages/datadog-plugin-aws-sdk/src/services/bedrockruntime/tracing.js +1 -1
  149. package/packages/datadog-plugin-aws-sdk/src/services/bedrockruntime/utils.js +24 -24
  150. package/packages/datadog-plugin-aws-sdk/src/services/cloudwatchlogs.js +1 -1
  151. package/packages/datadog-plugin-aws-sdk/src/services/eventbridge.js +1 -1
  152. package/packages/datadog-plugin-aws-sdk/src/services/kinesis.js +6 -6
  153. package/packages/datadog-plugin-aws-sdk/src/services/lambda.js +3 -3
  154. package/packages/datadog-plugin-aws-sdk/src/services/redshift.js +1 -1
  155. package/packages/datadog-plugin-aws-sdk/src/services/s3.js +1 -1
  156. package/packages/datadog-plugin-aws-sdk/src/services/sns.js +5 -5
  157. package/packages/datadog-plugin-aws-sdk/src/services/sqs.js +12 -12
  158. package/packages/datadog-plugin-aws-sdk/src/util.js +1 -1
  159. package/packages/datadog-plugin-azure-event-hubs/src/index.js +1 -1
  160. package/packages/datadog-plugin-azure-event-hubs/src/producer.js +3 -3
  161. package/packages/datadog-plugin-azure-functions/src/index.js +11 -10
  162. package/packages/datadog-plugin-azure-service-bus/src/index.js +1 -1
  163. package/packages/datadog-plugin-azure-service-bus/src/producer.js +3 -3
  164. package/packages/datadog-plugin-bullmq/src/consumer.js +2 -2
  165. package/packages/datadog-plugin-bullmq/src/index.js +1 -1
  166. package/packages/datadog-plugin-bullmq/src/producer.js +11 -11
  167. package/packages/datadog-plugin-cassandra-driver/src/index.js +2 -2
  168. package/packages/datadog-plugin-child_process/src/index.js +2 -2
  169. package/packages/datadog-plugin-child_process/src/scrub-cmd-params.js +5 -5
  170. package/packages/datadog-plugin-confluentinc-kafka-javascript/src/index.js +1 -1
  171. package/packages/datadog-plugin-couchbase/src/index.js +3 -3
  172. package/packages/datadog-plugin-cucumber/src/index.js +46 -45
  173. package/packages/datadog-plugin-cypress/src/cypress-plugin.js +68 -55
  174. package/packages/datadog-plugin-cypress/src/plugin.js +1 -1
  175. package/packages/datadog-plugin-cypress/src/support.js +56 -9
  176. package/packages/datadog-plugin-dd-trace-api/src/index.js +1 -1
  177. package/packages/datadog-plugin-dns/src/index.js +1 -1
  178. package/packages/datadog-plugin-dns/src/lookup.js +2 -2
  179. package/packages/datadog-plugin-dns/src/lookup_service.js +3 -3
  180. package/packages/datadog-plugin-dns/src/resolve.js +2 -2
  181. package/packages/datadog-plugin-dns/src/reverse.js +2 -2
  182. package/packages/datadog-plugin-elasticsearch/src/index.js +2 -2
  183. package/packages/datadog-plugin-express/src/index.js +1 -1
  184. package/packages/datadog-plugin-fastify/src/index.js +1 -1
  185. package/packages/datadog-plugin-fs/src/index.js +2 -2
  186. package/packages/datadog-plugin-google-cloud-pubsub/src/client.js +2 -2
  187. package/packages/datadog-plugin-google-cloud-pubsub/src/consumer.js +8 -6
  188. package/packages/datadog-plugin-google-cloud-pubsub/src/index.js +1 -1
  189. package/packages/datadog-plugin-google-cloud-pubsub/src/producer.js +11 -10
  190. package/packages/datadog-plugin-google-cloud-pubsub/src/pubsub-push-subscription.js +6 -6
  191. package/packages/datadog-plugin-google-cloud-vertexai/src/index.js +1 -1
  192. package/packages/datadog-plugin-google-cloud-vertexai/src/tracing.js +2 -2
  193. package/packages/datadog-plugin-google-cloud-vertexai/src/utils.js +1 -1
  194. package/packages/datadog-plugin-google-genai/src/index.js +1 -1
  195. package/packages/datadog-plugin-google-genai/src/tracing.js +2 -2
  196. package/packages/datadog-plugin-graphql/src/execute.js +2 -2
  197. package/packages/datadog-plugin-graphql/src/index.js +2 -2
  198. package/packages/datadog-plugin-graphql/src/parse.js +1 -1
  199. package/packages/datadog-plugin-graphql/src/resolve.js +6 -6
  200. package/packages/datadog-plugin-graphql/src/utils.js +1 -1
  201. package/packages/datadog-plugin-graphql/src/validate.js +2 -2
  202. package/packages/datadog-plugin-grpc/src/client.js +3 -3
  203. package/packages/datadog-plugin-grpc/src/index.js +1 -1
  204. package/packages/datadog-plugin-grpc/src/server.js +3 -3
  205. package/packages/datadog-plugin-grpc/src/util.js +2 -2
  206. package/packages/datadog-plugin-http/src/client.js +10 -10
  207. package/packages/datadog-plugin-http/src/index.js +1 -1
  208. package/packages/datadog-plugin-http2/src/client.js +6 -6
  209. package/packages/datadog-plugin-http2/src/index.js +1 -1
  210. package/packages/datadog-plugin-http2/src/server.js +1 -1
  211. package/packages/datadog-plugin-jest/src/index.js +39 -22
  212. package/packages/datadog-plugin-jest/src/util.js +1 -1
  213. package/packages/datadog-plugin-kafkajs/src/consumer.js +5 -5
  214. package/packages/datadog-plugin-kafkajs/src/index.js +1 -1
  215. package/packages/datadog-plugin-kafkajs/src/producer.js +5 -5
  216. package/packages/datadog-plugin-kafkajs/src/utils.js +1 -1
  217. package/packages/datadog-plugin-langchain/src/tokens.js +2 -2
  218. package/packages/datadog-plugin-langchain/src/tracing.js +4 -4
  219. package/packages/datadog-plugin-memcached/src/index.js +2 -2
  220. package/packages/datadog-plugin-mocha/src/index.js +12 -12
  221. package/packages/datadog-plugin-moleculer/src/client.js +1 -1
  222. package/packages/datadog-plugin-moleculer/src/index.js +1 -1
  223. package/packages/datadog-plugin-moleculer/src/server.js +2 -2
  224. package/packages/datadog-plugin-moleculer/src/util.js +1 -1
  225. package/packages/datadog-plugin-mongodb-core/src/index.js +5 -5
  226. package/packages/datadog-plugin-mysql/src/index.js +2 -2
  227. package/packages/datadog-plugin-net/src/ipc.js +2 -2
  228. package/packages/datadog-plugin-net/src/tcp.js +4 -4
  229. package/packages/datadog-plugin-next/src/index.js +4 -4
  230. package/packages/datadog-plugin-nyc/src/index.js +60 -0
  231. package/packages/datadog-plugin-openai/src/index.js +1 -1
  232. package/packages/datadog-plugin-openai/src/services.js +3 -3
  233. package/packages/datadog-plugin-openai/src/stream-helpers.js +1 -1
  234. package/packages/datadog-plugin-openai/src/tracing.js +10 -10
  235. package/packages/datadog-plugin-oracledb/src/connection-parser.js +1 -1
  236. package/packages/datadog-plugin-oracledb/src/index.js +1 -1
  237. package/packages/datadog-plugin-pg/src/index.js +2 -2
  238. package/packages/datadog-plugin-playwright/src/index.js +42 -42
  239. package/packages/datadog-plugin-prisma/src/datadog-tracing-helper.js +95 -0
  240. package/packages/datadog-plugin-prisma/src/index.js +129 -10
  241. package/packages/datadog-plugin-protobufjs/src/schema_iterator.js +3 -3
  242. package/packages/datadog-plugin-redis/src/index.js +2 -2
  243. package/packages/datadog-plugin-restify/src/index.js +1 -1
  244. package/packages/datadog-plugin-rhea/src/consumer.js +2 -2
  245. package/packages/datadog-plugin-rhea/src/index.js +1 -1
  246. package/packages/datadog-plugin-rhea/src/producer.js +2 -2
  247. package/packages/datadog-plugin-router/src/index.js +3 -3
  248. package/packages/datadog-plugin-selenium/src/index.js +2 -2
  249. package/packages/datadog-plugin-sharedb/src/index.js +2 -2
  250. package/packages/datadog-plugin-tedious/src/index.js +2 -2
  251. package/packages/datadog-plugin-undici/src/index.js +5 -5
  252. package/packages/datadog-plugin-vitest/src/index.js +39 -18
  253. package/packages/datadog-plugin-ws/src/close.js +10 -11
  254. package/packages/datadog-plugin-ws/src/index.js +1 -1
  255. package/packages/datadog-plugin-ws/src/producer.js +8 -9
  256. package/packages/datadog-plugin-ws/src/receiver.js +8 -9
  257. package/packages/datadog-plugin-ws/src/server.js +17 -12
  258. package/packages/datadog-plugin-ws/src/util.js +48 -16
  259. package/packages/datadog-shimmer/src/shimmer.js +5 -8
  260. package/packages/dd-trace/index.js +2 -2
  261. package/packages/dd-trace/src/agent/info.js +57 -0
  262. package/packages/dd-trace/src/agent/url.js +28 -0
  263. package/packages/dd-trace/src/aiguard/client.js +3 -3
  264. package/packages/dd-trace/src/aiguard/sdk.js +6 -6
  265. package/packages/dd-trace/src/aiguard/tags.js +1 -1
  266. package/packages/dd-trace/src/analytics_sampler.js +1 -1
  267. package/packages/dd-trace/src/appsec/activation.js +1 -1
  268. package/packages/dd-trace/src/appsec/addresses.js +1 -1
  269. package/packages/dd-trace/src/appsec/api_security_sampler.js +1 -1
  270. package/packages/dd-trace/src/appsec/blocked_templates.js +1 -1
  271. package/packages/dd-trace/src/appsec/blocking.js +5 -5
  272. package/packages/dd-trace/src/appsec/channels.js +1 -1
  273. package/packages/dd-trace/src/appsec/graphql.js +13 -13
  274. package/packages/dd-trace/src/appsec/iast/analyzers/analyzers.js +1 -1
  275. package/packages/dd-trace/src/appsec/iast/analyzers/cookie-analyzer.js +1 -1
  276. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-base-analyzer.js +6 -5
  277. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-password-rules.js +2 -2
  278. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-rule-type.js +1 -1
  279. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-secret-rules.js +148 -148
  280. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-secrets-rules.js +148 -148
  281. package/packages/dd-trace/src/appsec/iast/analyzers/index.js +1 -1
  282. package/packages/dd-trace/src/appsec/iast/analyzers/missing-header-analyzer.js +1 -1
  283. package/packages/dd-trace/src/appsec/iast/analyzers/nosql-injection-mongodb-analyzer.js +7 -8
  284. package/packages/dd-trace/src/appsec/iast/analyzers/path-traversal-analyzer.js +2 -2
  285. package/packages/dd-trace/src/appsec/iast/analyzers/set-cookies-header-interceptor.js +2 -2
  286. package/packages/dd-trace/src/appsec/iast/analyzers/unvalidated-redirect-analyzer.js +2 -2
  287. package/packages/dd-trace/src/appsec/iast/analyzers/vulnerability-analyzer.js +3 -3
  288. package/packages/dd-trace/src/appsec/iast/analyzers/weak-cipher-analyzer.js +1 -1
  289. package/packages/dd-trace/src/appsec/iast/analyzers/weak-hash-analyzer.js +2 -2
  290. package/packages/dd-trace/src/appsec/iast/context/context-plugin.js +3 -3
  291. package/packages/dd-trace/src/appsec/iast/iast-context.js +6 -3
  292. package/packages/dd-trace/src/appsec/iast/iast-plugin.js +17 -9
  293. package/packages/dd-trace/src/appsec/iast/index.js +2 -2
  294. package/packages/dd-trace/src/appsec/iast/overhead-controller.js +9 -9
  295. package/packages/dd-trace/src/appsec/iast/path-line.js +6 -6
  296. package/packages/dd-trace/src/appsec/iast/security-controls/index.js +11 -11
  297. package/packages/dd-trace/src/appsec/iast/security-controls/parser.js +49 -17
  298. package/packages/dd-trace/src/appsec/iast/tags.js +1 -1
  299. package/packages/dd-trace/src/appsec/iast/taint-tracking/constants.js +1 -1
  300. package/packages/dd-trace/src/appsec/iast/taint-tracking/csi-methods.js +2 -2
  301. package/packages/dd-trace/src/appsec/iast/taint-tracking/filter.js +1 -1
  302. package/packages/dd-trace/src/appsec/iast/taint-tracking/index.js +2 -2
  303. package/packages/dd-trace/src/appsec/iast/taint-tracking/operations-taint-object.js +3 -6
  304. package/packages/dd-trace/src/appsec/iast/taint-tracking/operations.js +2 -2
  305. package/packages/dd-trace/src/appsec/iast/taint-tracking/plugin.js +5 -5
  306. package/packages/dd-trace/src/appsec/iast/taint-tracking/rewriter-esm.mjs +4 -4
  307. package/packages/dd-trace/src/appsec/iast/taint-tracking/rewriter.js +5 -5
  308. package/packages/dd-trace/src/appsec/iast/taint-tracking/secure-marks.js +6 -4
  309. package/packages/dd-trace/src/appsec/iast/taint-tracking/source-types.js +1 -1
  310. package/packages/dd-trace/src/appsec/iast/taint-tracking/taint-tracking-impl.js +8 -8
  311. package/packages/dd-trace/src/appsec/iast/telemetry/iast-metric.js +4 -4
  312. package/packages/dd-trace/src/appsec/iast/telemetry/namespaces.js +2 -2
  313. package/packages/dd-trace/src/appsec/iast/telemetry/span-tags.js +6 -6
  314. package/packages/dd-trace/src/appsec/iast/telemetry/verbosity.js +2 -2
  315. package/packages/dd-trace/src/appsec/iast/utils.js +3 -3
  316. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/constants.js +1 -1
  317. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/range-utils.js +1 -1
  318. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-analyzers/hardcoded-password-analyzer.js +1 -1
  319. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-analyzers/sql-sensitive-analyzer.js +6 -6
  320. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-analyzers/tainted-range-based-sensitive-analyzer.js +1 -1
  321. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-handler.js +8 -8
  322. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-regex.js +1 -1
  323. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/index.js +12 -11
  324. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/utils.js +5 -5
  325. package/packages/dd-trace/src/appsec/iast/vulnerabilities.js +1 -1
  326. package/packages/dd-trace/src/appsec/iast/vulnerability-reporter.js +4 -4
  327. package/packages/dd-trace/src/appsec/index.js +65 -27
  328. package/packages/dd-trace/src/appsec/rasp/command_injection.js +3 -3
  329. package/packages/dd-trace/src/appsec/rasp/fs-plugin.js +4 -4
  330. package/packages/dd-trace/src/appsec/rasp/index.js +2 -2
  331. package/packages/dd-trace/src/appsec/rasp/lfi.js +5 -5
  332. package/packages/dd-trace/src/appsec/rasp/sql_injection.js +2 -2
  333. package/packages/dd-trace/src/appsec/rasp/ssrf.js +1 -1
  334. package/packages/dd-trace/src/appsec/rasp/utils.js +4 -4
  335. package/packages/dd-trace/src/appsec/rc-products.js +1 -1
  336. package/packages/dd-trace/src/appsec/remote_config.js +3 -3
  337. package/packages/dd-trace/src/appsec/reporter.js +11 -11
  338. package/packages/dd-trace/src/appsec/rule_manager.js +1 -1
  339. package/packages/dd-trace/src/appsec/sdk/index.js +1 -1
  340. package/packages/dd-trace/src/appsec/sdk/set_user.js +2 -2
  341. package/packages/dd-trace/src/appsec/sdk/track_event.js +7 -7
  342. package/packages/dd-trace/src/appsec/sdk/user_blocking.js +1 -1
  343. package/packages/dd-trace/src/appsec/sdk/utils.js +1 -1
  344. package/packages/dd-trace/src/appsec/stack_trace.js +5 -5
  345. package/packages/dd-trace/src/appsec/telemetry/common.js +3 -3
  346. package/packages/dd-trace/src/appsec/telemetry/index.js +5 -5
  347. package/packages/dd-trace/src/appsec/telemetry/rasp.js +3 -3
  348. package/packages/dd-trace/src/appsec/telemetry/user.js +4 -4
  349. package/packages/dd-trace/src/appsec/telemetry/waf.js +3 -3
  350. package/packages/dd-trace/src/appsec/user_tracking.js +7 -7
  351. package/packages/dd-trace/src/appsec/waf/diagnostics.js +2 -2
  352. package/packages/dd-trace/src/appsec/waf/index.js +1 -1
  353. package/packages/dd-trace/src/appsec/waf/waf_context_wrapper.js +2 -2
  354. package/packages/dd-trace/src/azure_metadata.js +16 -9
  355. package/packages/dd-trace/src/baggage.js +1 -1
  356. package/packages/dd-trace/src/ci-visibility/coverage-report-discovery.js +82 -0
  357. package/packages/dd-trace/src/ci-visibility/dynamic-instrumentation/index.js +5 -5
  358. package/packages/dd-trace/src/ci-visibility/dynamic-instrumentation/worker/index.js +9 -9
  359. package/packages/dd-trace/src/ci-visibility/early-flake-detection/get-known-tests.js +8 -8
  360. package/packages/dd-trace/src/ci-visibility/exporters/agent-proxy/index.js +11 -11
  361. package/packages/dd-trace/src/ci-visibility/exporters/agentless/coverage-writer.js +4 -3
  362. package/packages/dd-trace/src/ci-visibility/exporters/agentless/di-logs-writer.js +8 -6
  363. package/packages/dd-trace/src/ci-visibility/exporters/agentless/index.js +2 -0
  364. package/packages/dd-trace/src/ci-visibility/exporters/agentless/writer.js +4 -3
  365. package/packages/dd-trace/src/ci-visibility/exporters/ci-visibility-exporter.js +39 -20
  366. package/packages/dd-trace/src/ci-visibility/exporters/git/git_metadata.js +22 -22
  367. package/packages/dd-trace/src/ci-visibility/exporters/test-worker/index.js +1 -1
  368. package/packages/dd-trace/src/ci-visibility/exporters/test-worker/writer.js +1 -1
  369. package/packages/dd-trace/src/ci-visibility/intelligent-test-runner/get-skippable-suites.js +8 -8
  370. package/packages/dd-trace/src/ci-visibility/log-submission/log-submission-plugin.js +3 -3
  371. package/packages/dd-trace/src/ci-visibility/requests/get-library-configuration.js +17 -12
  372. package/packages/dd-trace/src/ci-visibility/requests/upload-coverage-report.js +92 -0
  373. package/packages/dd-trace/src/ci-visibility/telemetry.js +8 -4
  374. package/packages/dd-trace/src/ci-visibility/test-api-manual/test-api-manual-plugin.js +1 -1
  375. package/packages/dd-trace/src/ci-visibility/test-management/get-test-management-tests.js +6 -6
  376. package/packages/dd-trace/src/ci-visibility/test-optimization-cache.js +61 -0
  377. package/packages/dd-trace/src/config/defaults.js +1 -1
  378. package/packages/dd-trace/src/config/git_properties.js +1 -1
  379. package/packages/dd-trace/src/config/helper.js +2 -2
  380. package/packages/dd-trace/src/config/index.js +645 -641
  381. package/packages/dd-trace/src/config/remote_config.js +2 -1
  382. package/packages/dd-trace/src/config/stable.js +2 -2
  383. package/packages/dd-trace/src/config/supported-configurations.json +2 -1
  384. package/packages/dd-trace/src/constants.js +3 -3
  385. package/packages/dd-trace/src/crashtracking/crashtracker.js +8 -11
  386. package/packages/dd-trace/src/datastreams/checkpointer.js +1 -1
  387. package/packages/dd-trace/src/datastreams/context.js +1 -1
  388. package/packages/dd-trace/src/datastreams/encoding.js +1 -1
  389. package/packages/dd-trace/src/datastreams/fnv.js +1 -1
  390. package/packages/dd-trace/src/datastreams/index.js +8 -8
  391. package/packages/dd-trace/src/datastreams/pathway.js +5 -3
  392. package/packages/dd-trace/src/datastreams/processor.js +14 -12
  393. package/packages/dd-trace/src/datastreams/schemas/schema_builder.js +27 -25
  394. package/packages/dd-trace/src/datastreams/schemas/schema_sampler.js +1 -1
  395. package/packages/dd-trace/src/datastreams/size.js +3 -3
  396. package/packages/dd-trace/src/datastreams/writer.js +5 -11
  397. package/packages/dd-trace/src/debugger/config.js +2 -1
  398. package/packages/dd-trace/src/debugger/constants.js +7 -0
  399. package/packages/dd-trace/src/debugger/devtools_client/breakpoints.js +14 -10
  400. package/packages/dd-trace/src/debugger/devtools_client/condition.js +2 -2
  401. package/packages/dd-trace/src/debugger/devtools_client/config.js +6 -12
  402. package/packages/dd-trace/src/debugger/devtools_client/defaults.js +1 -1
  403. package/packages/dd-trace/src/debugger/devtools_client/index.js +32 -25
  404. package/packages/dd-trace/src/debugger/devtools_client/inspector_promises_polyfill.js +1 -1
  405. package/packages/dd-trace/src/debugger/devtools_client/json-buffer.js +10 -11
  406. package/packages/dd-trace/src/debugger/devtools_client/log.js +1 -1
  407. package/packages/dd-trace/src/debugger/devtools_client/send.js +54 -10
  408. package/packages/dd-trace/src/debugger/devtools_client/snapshot/collector.js +94 -37
  409. package/packages/dd-trace/src/debugger/devtools_client/snapshot/index.js +4 -4
  410. package/packages/dd-trace/src/debugger/devtools_client/snapshot/processor.js +7 -7
  411. package/packages/dd-trace/src/debugger/devtools_client/snapshot/redaction.js +2 -2
  412. package/packages/dd-trace/src/debugger/devtools_client/snapshot/symbols.js +1 -1
  413. package/packages/dd-trace/src/debugger/devtools_client/snapshot-pruner.js +1 -1
  414. package/packages/dd-trace/src/debugger/devtools_client/source-maps.js +10 -1
  415. package/packages/dd-trace/src/debugger/devtools_client/state.js +65 -8
  416. package/packages/dd-trace/src/debugger/devtools_client/status.js +9 -8
  417. package/packages/dd-trace/src/debugger/index.js +95 -37
  418. package/packages/dd-trace/src/dogstatsd.js +17 -18
  419. package/packages/dd-trace/src/encode/0.4.js +7 -6
  420. package/packages/dd-trace/src/encode/agentless-ci-visibility.js +8 -8
  421. package/packages/dd-trace/src/encode/coverage-ci-visibility.js +3 -3
  422. package/packages/dd-trace/src/encode/span-stats.js +2 -2
  423. package/packages/dd-trace/src/encode/tags-processors.js +1 -1
  424. package/packages/dd-trace/src/exporters/agent/index.js +5 -9
  425. package/packages/dd-trace/src/exporters/agent/writer.js +5 -4
  426. package/packages/dd-trace/src/exporters/common/agents.js +1 -1
  427. package/packages/dd-trace/src/exporters/common/{agent-info-exporter.js → buffering-exporter.js} +12 -39
  428. package/packages/dd-trace/src/exporters/common/docker.js +11 -7
  429. package/packages/dd-trace/src/exporters/common/request.js +28 -8
  430. package/packages/dd-trace/src/exporters/common/url-to-http-options-polyfill.js +2 -2
  431. package/packages/dd-trace/src/exporters/common/writer.js +2 -0
  432. package/packages/dd-trace/src/exporters/span-stats/index.js +4 -11
  433. package/packages/dd-trace/src/exporters/span-stats/writer.js +3 -3
  434. package/packages/dd-trace/src/external-logger/src/index.js +4 -4
  435. package/packages/dd-trace/src/flare/index.js +3 -3
  436. package/packages/dd-trace/src/guardrails/telemetry.js +1 -1
  437. package/packages/dd-trace/src/heap_snapshots.js +1 -1
  438. package/packages/dd-trace/src/id.js +1 -1
  439. package/packages/dd-trace/src/iitm.js +1 -1
  440. package/packages/dd-trace/src/lambda/handler.js +1 -1
  441. package/packages/dd-trace/src/lambda/runtime/errors.js +1 -1
  442. package/packages/dd-trace/src/lambda/runtime/ritm.js +3 -3
  443. package/packages/dd-trace/src/llmobs/constants/tags.js +1 -1
  444. package/packages/dd-trace/src/llmobs/constants/text.js +1 -1
  445. package/packages/dd-trace/src/llmobs/constants/writers.js +1 -1
  446. package/packages/dd-trace/src/llmobs/index.js +2 -4
  447. package/packages/dd-trace/src/llmobs/noop.js +2 -2
  448. package/packages/dd-trace/src/llmobs/plugins/ai/index.js +8 -8
  449. package/packages/dd-trace/src/llmobs/plugins/ai/util.js +2 -2
  450. package/packages/dd-trace/src/llmobs/plugins/anthropic.js +5 -5
  451. package/packages/dd-trace/src/llmobs/plugins/base.js +1 -1
  452. package/packages/dd-trace/src/llmobs/plugins/bedrockruntime.js +8 -8
  453. package/packages/dd-trace/src/llmobs/plugins/genai/index.js +2 -2
  454. package/packages/dd-trace/src/llmobs/plugins/genai/util.js +15 -15
  455. package/packages/dd-trace/src/llmobs/plugins/langchain/handlers/chat_model.js +2 -2
  456. package/packages/dd-trace/src/llmobs/plugins/langchain/handlers/index.js +5 -5
  457. package/packages/dd-trace/src/llmobs/plugins/langchain/handlers/vectorstore.js +1 -1
  458. package/packages/dd-trace/src/llmobs/plugins/langchain/index.js +3 -3
  459. package/packages/dd-trace/src/llmobs/plugins/openai/constants.js +1 -1
  460. package/packages/dd-trace/src/llmobs/plugins/openai/index.js +17 -17
  461. package/packages/dd-trace/src/llmobs/plugins/openai/utils.js +3 -3
  462. package/packages/dd-trace/src/llmobs/plugins/vertexai.js +6 -6
  463. package/packages/dd-trace/src/llmobs/sdk.js +11 -11
  464. package/packages/dd-trace/src/llmobs/span_processor.js +6 -6
  465. package/packages/dd-trace/src/llmobs/tagger.js +4 -4
  466. package/packages/dd-trace/src/llmobs/telemetry.js +8 -8
  467. package/packages/dd-trace/src/llmobs/util.js +1 -1
  468. package/packages/dd-trace/src/llmobs/writers/base.js +11 -17
  469. package/packages/dd-trace/src/llmobs/writers/evaluations.js +5 -5
  470. package/packages/dd-trace/src/llmobs/writers/spans.js +3 -3
  471. package/packages/dd-trace/src/llmobs/writers/util.js +4 -10
  472. package/packages/dd-trace/src/log/channels.js +2 -2
  473. package/packages/dd-trace/src/log/index.js +46 -31
  474. package/packages/dd-trace/src/log/log.js +1 -1
  475. package/packages/dd-trace/src/log/writer.js +14 -79
  476. package/packages/dd-trace/src/noop/span.js +2 -2
  477. package/packages/dd-trace/src/openfeature/constants/constants.js +1 -1
  478. package/packages/dd-trace/src/openfeature/flagging_provider.js +4 -4
  479. package/packages/dd-trace/src/openfeature/index.js +2 -2
  480. package/packages/dd-trace/src/openfeature/noop.js +3 -3
  481. package/packages/dd-trace/src/openfeature/remote_config.js +1 -1
  482. package/packages/dd-trace/src/openfeature/writers/base.js +14 -20
  483. package/packages/dd-trace/src/openfeature/writers/exposures.js +10 -10
  484. package/packages/dd-trace/src/openfeature/writers/util.js +4 -9
  485. package/packages/dd-trace/src/opentelemetry/context_manager.js +48 -29
  486. package/packages/dd-trace/src/opentelemetry/logs/index.js +2 -2
  487. package/packages/dd-trace/src/opentelemetry/logs/logger_provider.js +2 -2
  488. package/packages/dd-trace/src/opentelemetry/logs/otlp_transformer.js +10 -10
  489. package/packages/dd-trace/src/opentelemetry/metrics/constants.js +3 -3
  490. package/packages/dd-trace/src/opentelemetry/metrics/index.js +2 -2
  491. package/packages/dd-trace/src/opentelemetry/metrics/instruments.js +3 -3
  492. package/packages/dd-trace/src/opentelemetry/metrics/meter.js +1 -1
  493. package/packages/dd-trace/src/opentelemetry/metrics/otlp_transformer.js +11 -11
  494. package/packages/dd-trace/src/opentelemetry/metrics/periodic_metric_reader.js +18 -18
  495. package/packages/dd-trace/src/opentelemetry/otlp/otlp_http_exporter_base.js +6 -6
  496. package/packages/dd-trace/src/opentelemetry/otlp/otlp_transformer_base.js +10 -7
  497. package/packages/dd-trace/src/opentelemetry/otlp/protobuf_loader.js +3 -3
  498. package/packages/dd-trace/src/opentelemetry/span.js +8 -8
  499. package/packages/dd-trace/src/opentelemetry/span_context.js +1 -1
  500. package/packages/dd-trace/src/opentelemetry/span_processor.js +1 -1
  501. package/packages/dd-trace/src/opentelemetry/tracer.js +4 -4
  502. package/packages/dd-trace/src/opentracing/propagation/log.js +2 -2
  503. package/packages/dd-trace/src/opentracing/propagation/text_map.js +14 -12
  504. package/packages/dd-trace/src/opentracing/propagation/text_map_dsm.js +2 -0
  505. package/packages/dd-trace/src/opentracing/span.js +20 -20
  506. package/packages/dd-trace/src/opentracing/span_context.js +3 -3
  507. package/packages/dd-trace/src/opentracing/tracer.js +3 -3
  508. package/packages/dd-trace/src/payload-tagging/config/index.js +1 -1
  509. package/packages/dd-trace/src/payload-tagging/index.js +1 -1
  510. package/packages/dd-trace/src/payload-tagging/tagging.js +2 -2
  511. package/packages/dd-trace/src/plugin_manager.js +6 -6
  512. package/packages/dd-trace/src/plugins/apollo.js +4 -4
  513. package/packages/dd-trace/src/plugins/ci_plugin.js +101 -36
  514. package/packages/dd-trace/src/plugins/database.js +1 -1
  515. package/packages/dd-trace/src/plugins/index.js +1 -1
  516. package/packages/dd-trace/src/plugins/log_plugin.js +2 -2
  517. package/packages/dd-trace/src/plugins/outbound.js +9 -8
  518. package/packages/dd-trace/src/plugins/plugin.js +17 -7
  519. package/packages/dd-trace/src/plugins/producer.js +6 -5
  520. package/packages/dd-trace/src/plugins/tracing.js +37 -8
  521. package/packages/dd-trace/src/plugins/util/ci.js +40 -40
  522. package/packages/dd-trace/src/plugins/util/env.js +2 -2
  523. package/packages/dd-trace/src/plugins/util/git-cache.js +2 -2
  524. package/packages/dd-trace/src/plugins/util/git.js +20 -18
  525. package/packages/dd-trace/src/plugins/util/inferred_proxy.js +6 -6
  526. package/packages/dd-trace/src/plugins/util/ip_extractor.js +3 -3
  527. package/packages/dd-trace/src/plugins/util/llm.js +1 -1
  528. package/packages/dd-trace/src/plugins/util/stacktrace.js +3 -3
  529. package/packages/dd-trace/src/plugins/util/tags.js +1 -1
  530. package/packages/dd-trace/src/plugins/util/test.js +46 -40
  531. package/packages/dd-trace/src/plugins/util/url.js +1 -1
  532. package/packages/dd-trace/src/plugins/util/urlfilter.js +1 -1
  533. package/packages/dd-trace/src/plugins/util/user-provided-git.js +2 -2
  534. package/packages/dd-trace/src/plugins/util/web.js +12 -12
  535. package/packages/dd-trace/src/priority_sampler.js +4 -4
  536. package/packages/dd-trace/src/process-tags/index.js +2 -2
  537. package/packages/dd-trace/src/profiler.js +1 -1
  538. package/packages/dd-trace/src/profiling/config.js +11 -14
  539. package/packages/dd-trace/src/profiling/constants.js +2 -2
  540. package/packages/dd-trace/src/profiling/exporter_cli.js +3 -3
  541. package/packages/dd-trace/src/profiling/exporters/agent.js +5 -5
  542. package/packages/dd-trace/src/profiling/exporters/event_serializer.js +8 -8
  543. package/packages/dd-trace/src/profiling/index.js +1 -1
  544. package/packages/dd-trace/src/profiling/libuv-size.js +1 -1
  545. package/packages/dd-trace/src/profiling/loggers/console.js +1 -1
  546. package/packages/dd-trace/src/profiling/profiler.js +21 -23
  547. package/packages/dd-trace/src/profiling/profilers/event_plugins/event.js +1 -1
  548. package/packages/dd-trace/src/profiling/profilers/event_plugins/fs.js +3 -3
  549. package/packages/dd-trace/src/profiling/profilers/events.js +27 -19
  550. package/packages/dd-trace/src/profiling/profilers/shared.js +2 -2
  551. package/packages/dd-trace/src/profiling/profilers/wall.js +4 -4
  552. package/packages/dd-trace/src/profiling/tagger.js +1 -1
  553. package/packages/dd-trace/src/profiling/webspan-utils.js +2 -2
  554. package/packages/dd-trace/src/proxy.js +13 -13
  555. package/packages/dd-trace/src/remote_config/apply_states.js +1 -1
  556. package/packages/dd-trace/src/remote_config/capabilities.js +1 -0
  557. package/packages/dd-trace/src/remote_config/index.js +17 -22
  558. package/packages/dd-trace/src/remote_config/scheduler.js +1 -1
  559. package/packages/dd-trace/src/ritm.js +1 -1
  560. package/packages/dd-trace/src/runtime_metrics/index.js +2 -2
  561. package/packages/dd-trace/src/runtime_metrics/runtime_metrics.js +3 -3
  562. package/packages/dd-trace/src/serverless.js +1 -1
  563. package/packages/dd-trace/src/service-naming/extra-services.js +1 -1
  564. package/packages/dd-trace/src/service-naming/index.js +1 -1
  565. package/packages/dd-trace/src/service-naming/schemas/v0/graphql.js +3 -3
  566. package/packages/dd-trace/src/service-naming/schemas/v0/messaging.js +25 -25
  567. package/packages/dd-trace/src/service-naming/schemas/v0/serverless.js +3 -3
  568. package/packages/dd-trace/src/service-naming/schemas/v0/storage.js +18 -18
  569. package/packages/dd-trace/src/service-naming/schemas/v0/web.js +23 -23
  570. package/packages/dd-trace/src/service-naming/schemas/v0/websocket.js +9 -9
  571. package/packages/dd-trace/src/service-naming/schemas/v1/graphql.js +3 -3
  572. package/packages/dd-trace/src/service-naming/schemas/v1/messaging.js +21 -21
  573. package/packages/dd-trace/src/service-naming/schemas/v1/serverless.js +3 -3
  574. package/packages/dd-trace/src/service-naming/schemas/v1/storage.js +17 -17
  575. package/packages/dd-trace/src/service-naming/schemas/v1/web.js +23 -23
  576. package/packages/dd-trace/src/service-naming/schemas/v1/websocket.js +9 -9
  577. package/packages/dd-trace/src/span_format.js +4 -4
  578. package/packages/dd-trace/src/span_sampler.js +1 -1
  579. package/packages/dd-trace/src/span_stats.js +11 -11
  580. package/packages/dd-trace/src/spanleak.js +1 -1
  581. package/packages/dd-trace/src/standalone/index.js +1 -1
  582. package/packages/dd-trace/src/standalone/product.js +2 -2
  583. package/packages/dd-trace/src/standalone/tracesource.js +1 -1
  584. package/packages/dd-trace/src/startup-log.js +4 -4
  585. package/packages/dd-trace/src/tagger.js +3 -1
  586. package/packages/dd-trace/src/telemetry/dependencies.js +4 -4
  587. package/packages/dd-trace/src/telemetry/endpoints.js +4 -4
  588. package/packages/dd-trace/src/telemetry/index.js +1 -1
  589. package/packages/dd-trace/src/telemetry/logs/index.js +2 -2
  590. package/packages/dd-trace/src/telemetry/logs/log-collector.js +2 -2
  591. package/packages/dd-trace/src/telemetry/metrics.js +6 -6
  592. package/packages/dd-trace/src/telemetry/send-data.js +5 -5
  593. package/packages/dd-trace/src/telemetry/telemetry.js +10 -10
  594. package/packages/dd-trace/src/tracer.js +3 -2
  595. package/packages/dd-trace/src/util.js +1 -1
  596. package/scripts/preinstall.js +1 -1
  597. package/vendor/dist/@datadog/sketches-js/index.js +1 -1
  598. package/vendor/dist/@datadog/source-map/index.js +1 -1
  599. package/vendor/dist/@isaacs/ttlcache/index.js +1 -1
  600. package/vendor/dist/@opentelemetry/core/index.js +1 -1
  601. package/vendor/dist/@opentelemetry/resources/index.js +1 -1
  602. package/vendor/dist/astring/index.js +1 -1
  603. package/vendor/dist/crypto-randomuuid/index.js +1 -1
  604. package/vendor/dist/escape-string-regexp/index.js +1 -1
  605. package/vendor/dist/esquery/index.js +1 -1
  606. package/vendor/dist/ignore/index.js +1 -1
  607. package/vendor/dist/istanbul-lib-coverage/index.js +1 -1
  608. package/vendor/dist/jest-docblock/index.js +1 -1
  609. package/vendor/dist/jsonpath-plus/index.js +1 -1
  610. package/vendor/dist/limiter/index.js +1 -1
  611. package/vendor/dist/lodash.sortby/index.js +1 -1
  612. package/vendor/dist/lru-cache/index.js +1 -1
  613. package/vendor/dist/meriyah/index.js +1 -1
  614. package/vendor/dist/module-details-from-path/index.js +1 -1
  615. package/vendor/dist/mutexify/promise/index.js +1 -1
  616. package/vendor/dist/opentracing/index.js +1 -1
  617. package/vendor/dist/path-to-regexp/index.js +1 -1
  618. package/vendor/dist/pprof-format/index.js +1 -1
  619. package/vendor/dist/protobufjs/index.js +1 -1
  620. package/vendor/dist/protobufjs/minimal/index.js +1 -1
  621. package/vendor/dist/retry/index.js +1 -1
  622. package/vendor/dist/rfdc/index.js +1 -1
  623. package/vendor/dist/semifies/index.js +1 -1
  624. package/vendor/dist/shell-quote/index.js +1 -1
  625. package/vendor/dist/source-map/index.js +1 -1
  626. package/vendor/dist/source-map/lib/util/index.js +1 -1
  627. package/vendor/dist/tlhunter-sorted-set/index.js +1 -1
  628. package/vendor/dist/ttl-set/index.js +1 -1
  629. package/packages/datadog-plugin-prisma/src/client.js +0 -60
  630. package/packages/datadog-plugin-prisma/src/engine.js +0 -81
@@ -4,7 +4,7 @@ const RemoteConfigCapabilities = require('../remote_config/capabilities')
4
4
  const log = require('../log')
5
5
 
6
6
  module.exports = {
7
- enable
7
+ enable,
8
8
  }
9
9
 
10
10
  /**
@@ -169,6 +169,7 @@ function enable (rc, config, onConfigUpdated) {
169
169
 
170
170
  // Debugger
171
171
  rc.updateCapabilities(RemoteConfigCapabilities.APM_TRACING_ENABLE_DYNAMIC_INSTRUMENTATION, true)
172
+ rc.updateCapabilities(RemoteConfigCapabilities.APM_TRACING_ENABLE_LIVE_DEBUGGING, true)
172
173
 
173
174
  // Code Origin
174
175
  rc.updateCapabilities(RemoteConfigCapabilities.APM_TRACING_ENABLE_CODE_ORIGIN, true)
@@ -43,13 +43,13 @@ class StableConfig {
43
43
  // eslint-disable-next-line eslint-rules/eslint-process-env
44
44
  configurator.set_envp(Object.entries(process.env).map(([key, value]) => `${key}=${value}`))
45
45
  configurator.set_args(process.argv)
46
- configurator.get_configuration(localConfig, fleetConfig).forEach((entry) => {
46
+ for (const entry of configurator.get_configuration(localConfig, fleetConfig)) {
47
47
  if (entry.source === 'local_stable_config') {
48
48
  this.localEntries[entry.name] = entry.value
49
49
  } else if (entry.source === 'fleet_stable_config') {
50
50
  this.fleetEntries[entry.name] = entry.value
51
51
  }
52
- })
52
+ }
53
53
  } catch (e) {
54
54
  this.warnings.push(`Error parsing configuration from file: ${e.message}`)
55
55
  }
@@ -73,11 +73,11 @@
73
73
  "DD_ENV": ["A"],
74
74
  "DD_EXPERIMENTAL_APPSEC_STANDALONE_ENABLED": ["A"],
75
75
  "DD_EXPERIMENTAL_FLAGGING_PROVIDER_ENABLED": ["A"],
76
+ "DD_EXPERIMENTAL_FLAGGING_PROVIDER_INITIALIZATION_TIMEOUT_MS": ["A"],
76
77
  "DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED": ["A"],
77
78
  "DD_EXPERIMENTAL_TEST_OPT_GIT_CACHE_ENABLED": ["A"],
78
79
  "DD_EXPERIMENTAL_TEST_OPT_GIT_CACHE_DIR": ["A"],
79
80
  "DD_EXTERNAL_ENV": ["A"],
80
- "DD_FLAGGING_PROVIDER_ENABLED": ["A"],
81
81
  "DD_GIT_BRANCH": ["A"],
82
82
  "DD_GIT_COMMIT_AUTHOR_DATE": ["A"],
83
83
  "DD_GIT_COMMIT_AUTHOR_EMAIL": ["A"],
@@ -183,6 +183,7 @@
183
183
  "DD_TEST_LOCAL_CONFIG_PATH": ["A"],
184
184
  "DD_TEST_MANAGEMENT_ATTEMPT_TO_FIX_RETRIES": ["A"],
185
185
  "DD_TEST_MANAGEMENT_ENABLED": ["A"],
186
+ "DD_EXPERIMENTAL_TEST_OPT_SETTINGS_CACHE": ["A"],
186
187
  "DD_TEST_SESSION_NAME": ["A"],
187
188
  "DD_TRACE_128_BIT_TRACEID_GENERATION_ENABLED": ["A"],
188
189
  "DD_TRACE_128_BIT_TRACEID_LOGGING_ENABLED": ["A"],
@@ -53,10 +53,10 @@ module.exports = {
53
53
  WEBSOCKET_PTR_KIND: 'websocket',
54
54
  SPAN_POINTER_DIRECTION: Object.freeze({
55
55
  UPSTREAM: 'u',
56
- DOWNSTREAM: 'd'
56
+ DOWNSTREAM: 'd',
57
57
  }),
58
58
  SPAN_POINTER_DIRECTION_NAME: Object.freeze({
59
59
  UPSTREAM: 'span-pointer-up',
60
- DOWNSTREAM: 'span-pointer-down'
61
- })
60
+ DOWNSTREAM: 'span-pointer-down',
61
+ }),
62
62
  }
@@ -1,13 +1,11 @@
1
1
  'use strict'
2
2
 
3
- const { URL } = require('url')
4
-
5
3
  // Load binding first to not import other modules if it throws
6
4
  const libdatadog = require('@datadog/libdatadog')
7
5
  const binding = libdatadog.load('crashtracker')
8
6
 
9
7
  const log = require('../log')
10
- const defaults = require('../config/defaults')
8
+ const { getAgentUrl } = require('../agent/url')
11
9
  const pkg = require('../../../../package.json')
12
10
  const processTags = require('../process-tags')
13
11
 
@@ -52,8 +50,7 @@ class Crashtracker {
52
50
 
53
51
  // TODO: Send only configured values when defaults are fixed.
54
52
  #getConfig (config) {
55
- const { hostname = defaults.hostname, port = defaults.port } = config
56
- const url = config.url || new URL(`http://${hostname}:${port}`)
53
+ const url = getAgentUrl(config)
57
54
 
58
55
  return {
59
56
  additional_files: [],
@@ -66,13 +63,13 @@ class Crashtracker {
66
63
  authority: url.protocol === 'unix:'
67
64
  ? Buffer.from(url.pathname).toString('hex')
68
65
  : url.host,
69
- path_and_query: ''
66
+ path_and_query: '',
70
67
  },
71
- timeout_ms: 3000
68
+ timeout_ms: 3000,
72
69
  },
73
70
  timeout_ms: 5000,
74
71
  // TODO: Use `EnabledWithSymbolsInReceiver` instead for Linux when fixed.
75
- resolve_frames: 'EnabledWithInprocessSymbols'
72
+ resolve_frames: 'EnabledWithInprocessSymbols',
76
73
  }
77
74
  }
78
75
 
@@ -97,8 +94,8 @@ class Crashtracker {
97
94
  `library_version:${pkg.version}`,
98
95
  'runtime:nodejs',
99
96
  `runtime_version:${process.versions.node}`,
100
- 'severity:crash'
101
- ]
97
+ 'severity:crash',
98
+ ],
102
99
  }
103
100
  }
104
101
 
@@ -108,7 +105,7 @@ class Crashtracker {
108
105
  env: [],
109
106
  path_to_receiver_binary: libdatadog.find('crashtracker-receiver', true),
110
107
  stderr_filename: null,
111
- stdout_filename: null
108
+ stdout_filename: null,
112
109
  }
113
110
  }
114
111
  }
@@ -63,5 +63,5 @@ class DataStreamsCheckpointer {
63
63
  }
64
64
 
65
65
  module.exports = {
66
- DataStreamsCheckpointer
66
+ DataStreamsCheckpointer,
67
67
  }
@@ -16,5 +16,5 @@ function setDataStreamsContext (dataStreamsContext) {
16
16
 
17
17
  module.exports = {
18
18
  getDataStreamsContext,
19
- setDataStreamsContext
19
+ setDataStreamsContext,
20
20
  }
@@ -95,5 +95,5 @@ function decodeUvarint64 (
95
95
 
96
96
  module.exports = {
97
97
  encodeVarint,
98
- decodeVarint
98
+ decodeVarint,
99
99
  }
@@ -21,5 +21,5 @@ function fnv64 (data) {
21
21
  }
22
22
 
23
23
  module.exports = {
24
- fnv64
24
+ fnv64,
25
25
  }
@@ -4,7 +4,7 @@ const {
4
4
  getAmqpMessageSize,
5
5
  getHeadersSize,
6
6
  getMessageSize,
7
- getSizeOrZero
7
+ getSizeOrZero,
8
8
  } = require('./size')
9
9
 
10
10
  // This is only needed because DSM code is spread across existing tracing
@@ -62,7 +62,7 @@ function lazyClass (classGetter, methods = [], staticMethods = []) {
62
62
  */
63
63
  const DsmPathwayCodec = lazyClass(() => require('./pathway').DsmPathwayCodec, [], [
64
64
  'encode',
65
- 'decode'
65
+ 'decode',
66
66
  ])
67
67
 
68
68
  /**
@@ -70,7 +70,7 @@ const DsmPathwayCodec = lazyClass(() => require('./pathway').DsmPathwayCodec, []
70
70
  */
71
71
  const DataStreamsCheckpointer = lazyClass(() => require('./checkpointer').DataStreamsCheckpointer, [
72
72
  'setProduceCheckpoint',
73
- 'setConsumeCheckpoint'
73
+ 'setConsumeCheckpoint',
74
74
  ])
75
75
 
76
76
  /**
@@ -78,7 +78,7 @@ const DataStreamsCheckpointer = lazyClass(() => require('./checkpointer').DataSt
78
78
  */
79
79
  const DataStreamsManager = lazyClass(() => require('./manager').DataStreamsManager, [
80
80
  'setCheckpoint',
81
- 'decodeDataStreamsContext'
81
+ 'decodeDataStreamsContext',
82
82
  ])
83
83
 
84
84
  // TODO: Are all those methods actually public?
@@ -95,7 +95,7 @@ const DataStreamsProcessor = lazyClass(() => require('./processor').DataStreamsP
95
95
  'setUrl',
96
96
  'trySampleSchema',
97
97
  'canSampleSchema',
98
- 'getSchema'
98
+ 'getSchema',
99
99
  ])
100
100
 
101
101
  /**
@@ -104,11 +104,11 @@ const DataStreamsProcessor = lazyClass(() => require('./processor').DataStreamsP
104
104
  const SchemaBuilder = lazyClass(() => require('./schemas/schema_builder').SchemaBuilder, [
105
105
  'build',
106
106
  'addProperty',
107
- 'shouldExtractSchema'
107
+ 'shouldExtractSchema',
108
108
  ], [
109
109
  'getCache',
110
110
  'getSchemaDefinition',
111
- 'getSchema'
111
+ 'getSchema',
112
112
  ])
113
113
 
114
114
  module.exports = {
@@ -122,5 +122,5 @@ module.exports = {
122
122
  getAmqpMessageSize,
123
123
  getHeadersSize,
124
124
  getMessageSize,
125
- getSizeOrZero
125
+ getSizeOrZero,
126
126
  }
@@ -54,7 +54,7 @@ function encodePathwayContext (dataStreamsContext) {
54
54
  return Buffer.concat([
55
55
  dataStreamsContext.hash,
56
56
  Buffer.from(encodeVarint(Math.round(dataStreamsContext.pathwayStartNs / 1e6))),
57
- Buffer.from(encodeVarint(Math.round(dataStreamsContext.edgeStartNs / 1e6)))
57
+ Buffer.from(encodeVarint(Math.round(dataStreamsContext.edgeStartNs / 1e6))),
58
58
  ], 20)
59
59
  }
60
60
 
@@ -123,6 +123,7 @@ const DsmPathwayCodec = {
123
123
  }
124
124
  carrier[CONTEXT_PROPAGATION_KEY_BASE64] = encodePathwayContextBase64(dataStreamsContext)
125
125
 
126
+ // eslint-disable-next-line eslint-rules/eslint-log-printf-style
126
127
  log.debug(() => `Injected into DSM carrier: ${JSON.stringify(pick(carrier, logKeys))}.`)
127
128
  },
128
129
 
@@ -131,6 +132,7 @@ const DsmPathwayCodec = {
131
132
  * @returns {ReturnType<typeof decodePathwayContext>|undefined}
132
133
  */
133
134
  decode (carrier) {
135
+ // eslint-disable-next-line eslint-rules/eslint-log-printf-style
134
136
  log.debug(() => `Attempting extract from DSM carrier: ${JSON.stringify(pick(carrier, logKeys))}.`)
135
137
 
136
138
  if (carrier == null) return
@@ -153,7 +155,7 @@ const DsmPathwayCodec = {
153
155
  }
154
156
 
155
157
  return ctx
156
- }
158
+ },
157
159
  }
158
160
 
159
161
  module.exports = {
@@ -162,5 +164,5 @@ module.exports = {
162
164
  decodePathwayContext,
163
165
  encodePathwayContextBase64,
164
166
  decodePathwayContextBase64,
165
- DsmPathwayCodec
167
+ DsmPathwayCodec,
166
168
  }
@@ -41,7 +41,7 @@ class StatsPoint {
41
41
  EdgeTags: this.edgeTags,
42
42
  EdgeLatency: this.edgeLatency.toProto(),
43
43
  PathwayLatency: this.pathwayLatency.toProto(),
44
- PayloadSize: this.payloadSize.toProto()
44
+ PayloadSize: this.payloadSize.toProto(),
45
45
  }
46
46
  }
47
47
  }
@@ -62,7 +62,7 @@ class Backlog {
62
62
  encode () {
63
63
  return {
64
64
  Tags: this.tags,
65
- Value: this.offset
65
+ Value: this.offset,
66
66
  }
67
67
  }
68
68
  }
@@ -133,12 +133,12 @@ class DataStreamsProcessor {
133
133
  tags,
134
134
  version,
135
135
  service,
136
- flushInterval
136
+ flushInterval,
137
137
  } = {}) {
138
138
  this.writer = new DataStreamsWriter({
139
139
  hostname,
140
140
  port,
141
- url
141
+ url,
142
142
  })
143
143
  this.bucketSizeNs = 1e10
144
144
  this.buckets = new TimeBuckets()
@@ -169,7 +169,7 @@ class DataStreamsProcessor {
169
169
  TracerVersion: pkg.version,
170
170
  Version: this.version,
171
171
  Lang: 'javascript',
172
- Tags: Object.entries(this.tags).map(([key, value]) => `${key}:${value}`)
172
+ Tags: Object.entries(this.tags).map(([key, value]) => `${key}:${value}`),
173
173
  }
174
174
  this.writer.flush(payload)
175
175
  }
@@ -229,7 +229,9 @@ class DataStreamsProcessor {
229
229
  closestOppositeDirectionEdgeStart = edgeStartNs
230
230
  }
231
231
  log.debug(
232
- () => `Setting DSM Checkpoint from extracted parent context with hash: ${parentHash} and edge tags: ${edgeTags}`
232
+ 'Setting DSM Checkpoint from extracted parent context with hash: %s and edge tags: %s',
233
+ parentHash,
234
+ edgeTags
233
235
  )
234
236
  }
235
237
  const hash = computePathwayHash(this.service, this.env, edgeTags, parentHash)
@@ -241,7 +243,7 @@ class DataStreamsProcessor {
241
243
  pathwayStartNs,
242
244
  previousDirection: direction,
243
245
  closestOppositeDirectionHash,
244
- closestOppositeDirectionEdgeStart
246
+ closestOppositeDirectionEdgeStart,
245
247
  }
246
248
  if (direction === 'direction:out') {
247
249
  // Add the header for this now, as the callee doesn't have access to context when producing
@@ -257,7 +259,7 @@ class DataStreamsProcessor {
257
259
  edgeTags,
258
260
  edgeLatencyNs,
259
261
  pathwayLatencyNs,
260
- payloadSize
262
+ payloadSize,
261
263
  }
262
264
  this.recordCheckpoint(checkpoint, span)
263
265
  return dataStreamsContext
@@ -274,7 +276,7 @@ class DataStreamsProcessor {
274
276
  const nowNs = Date.now() * 1e6
275
277
  const backlogData = {
276
278
  ...offsetObj,
277
- timestamp: nowNs
279
+ timestamp: nowNs,
278
280
  }
279
281
  this.recordOffset(backlogData)
280
282
  }
@@ -300,14 +302,14 @@ class DataStreamsProcessor {
300
302
  Start: BigInt(timeNs),
301
303
  Duration: BigInt(this.bucketSizeNs),
302
304
  Stats: points,
303
- Backlogs: backlogs
305
+ Backlogs: backlogs,
304
306
  })
305
307
  }
306
308
 
307
309
  this.buckets.clear()
308
310
 
309
311
  return {
310
- Stats: serializedBuckets
312
+ Stats: serializedBuckets,
311
313
  }
312
314
  }
313
315
 
@@ -352,5 +354,5 @@ module.exports = {
352
354
  getHeadersSize,
353
355
  getSizeOrZero,
354
356
  getAmqpMessageSize,
355
- ENTRY_PARENT_HASH
357
+ ENTRY_PARENT_HASH,
356
358
  }
@@ -98,38 +98,40 @@ class OpenApiComponents {
98
98
  // TODO: Add tests to verify this behavior. A couple of cases are not
99
99
  // covered by the existing tests.
100
100
  function toJSON (value) {
101
- // eslint-disable-next-line eslint-rules/eslint-safe-typeof-object
102
- if (typeof value === 'object') {
103
- if (value === null) {
104
- return 'null'
105
- }
106
- if (Array.isArray(value)) {
107
- let result = '['
108
- for (let i = 0; i < value.length; i++) {
109
- if (value[i] !== null) {
110
- if (i !== 0) {
111
- result += ', '
112
- }
113
- result += value[i] === undefined ? 'null' : toJSON(value[i])
101
+ if (typeof value !== 'object') {
102
+ return JSON.stringify(value)
103
+ }
104
+
105
+ if (value === null) {
106
+ return 'null'
107
+ }
108
+
109
+ if (Array.isArray(value)) {
110
+ let result = '['
111
+ for (let i = 0; i < value.length; i++) {
112
+ if (value[i] !== null) {
113
+ if (i !== 0) {
114
+ result += ', '
114
115
  }
116
+ result += value[i] === undefined ? 'null' : toJSON(value[i])
115
117
  }
116
- return `${result}]`
117
118
  }
118
- let result = '{'
119
- for (const [key, objectValue] of Object.entries(value)) {
120
- if (objectValue != null && typeof key === 'string') {
121
- const converted = toJSON(objectValue)
122
- if (converted !== undefined) {
123
- if (result !== '{') {
124
- result += ', '
125
- }
126
- result += `"${key}": ${converted}`
119
+ return `${result}]`
120
+ }
121
+
122
+ let result = '{'
123
+ for (const [key, objectValue] of Object.entries(value)) {
124
+ if (objectValue != null && typeof key === 'string') {
125
+ const converted = toJSON(objectValue)
126
+ if (converted !== undefined) {
127
+ if (result !== '{') {
128
+ result += ', '
127
129
  }
130
+ result += `"${key}": ${converted}`
128
131
  }
129
132
  }
130
- return `${result}}`
131
133
  }
132
- return JSON.stringify(value)
134
+ return `${result}}`
133
135
  }
134
136
 
135
137
  module.exports = {
@@ -23,5 +23,5 @@ class SchemaSampler {
23
23
  }
24
24
 
25
25
  module.exports = {
26
- SchemaSampler
26
+ SchemaSampler,
27
27
  }
@@ -15,9 +15,9 @@ function getSizeOrZero (obj) {
15
15
  if (Array.isArray(obj) && obj.length > 0) {
16
16
  if (typeof obj[0] === 'number') return Buffer.from(obj).length
17
17
  let payloadSize = 0
18
- obj.forEach(item => {
18
+ for (const item of obj) {
19
19
  payloadSize += getSizeOrZero(item)
20
- })
20
+ }
21
21
  return payloadSize
22
22
  }
23
23
  if (obj !== null && typeof obj === 'object') {
@@ -49,5 +49,5 @@ module.exports = {
49
49
  getMessageSize,
50
50
  getHeadersSize,
51
51
  getSizeOrZero,
52
- getAmqpMessageSize
52
+ getAmqpMessageSize,
53
53
  }
@@ -1,12 +1,11 @@
1
1
  'use strict'
2
2
 
3
- const { URL, format } = require('url')
4
3
  const zlib = require('zlib')
5
4
  const pkg = require('../../../../package.json')
6
5
  const log = require('../log')
7
6
  const request = require('../exporters/common/request')
8
7
  const { MsgpackEncoder } = require('../msgpack')
9
- const defaults = require('../config/defaults')
8
+ const { getAgentUrl } = require('../agent/url')
10
9
 
11
10
  const msgpack = new MsgpackEncoder()
12
11
 
@@ -18,9 +17,9 @@ function makeRequest (data, url, cb) {
18
17
  'Datadog-Meta-Lang': 'javascript',
19
18
  'Datadog-Meta-Tracer-Version': pkg.version,
20
19
  'Content-Type': 'application/msgpack',
21
- 'Content-Encoding': 'gzip'
20
+ 'Content-Encoding': 'gzip',
22
21
  },
23
- url
22
+ url,
24
23
  }
25
24
 
26
25
  log.debug('Request to the intake: %j', options)
@@ -32,12 +31,7 @@ function makeRequest (data, url, cb) {
32
31
 
33
32
  class DataStreamsWriter {
34
33
  constructor (config) {
35
- const { hostname = defaults.hostname, port = defaults.port, url } = config
36
- this._url = url || new URL(format({
37
- protocol: 'http:',
38
- hostname,
39
- port
40
- }))
34
+ this._url = getAgentUrl(config)
41
35
  }
42
36
 
43
37
  flush (payload) {
@@ -72,5 +66,5 @@ class DataStreamsWriter {
72
66
  }
73
67
 
74
68
  module.exports = {
75
- DataStreamsWriter
69
+ DataStreamsWriter,
76
70
  }
@@ -1,6 +1,6 @@
1
1
  'use strict'
2
2
 
3
- module.exports = function getDebuggerConfig (config) {
3
+ module.exports = function getDebuggerConfig (config, inputPath) {
4
4
  return {
5
5
  commitSHA: config.commitSHA,
6
6
  debug: config.debug,
@@ -13,5 +13,6 @@ module.exports = function getDebuggerConfig (config) {
13
13
  runtimeId: config.tags['runtime-id'],
14
14
  service: config.service,
15
15
  url: config.url?.toString(),
16
+ inputPath,
16
17
  }
17
18
  }
@@ -0,0 +1,7 @@
1
+ 'use strict'
2
+
3
+ module.exports = {
4
+ DEBUGGER_DIAGNOSTICS_V1: '/debugger/v1/diagnostics',
5
+ DEBUGGER_INPUT_V1: '/debugger/v1/input',
6
+ DEBUGGER_INPUT_V2: '/debugger/v2/input',
7
+ }
@@ -10,10 +10,14 @@ const {
10
10
  clearState,
11
11
  locationToBreakpoint,
12
12
  breakpointToProbes,
13
- probeToLocation
13
+ probeToLocation,
14
14
  } = require('./state')
15
15
  const log = require('./log')
16
16
 
17
+ /**
18
+ * @typedef {import('inspector').Debugger.SetBreakpointReturnType} SetBreakpointResponse
19
+ */
20
+
17
21
  let sessionStarted = false
18
22
  const probes = new Map()
19
23
  let scriptLoadingStabilizedResolve
@@ -38,7 +42,7 @@ session.on('scriptLoadingStabilized', () => {
38
42
  module.exports = {
39
43
  addBreakpoint: lock(addBreakpoint),
40
44
  removeBreakpoint: lock(removeBreakpoint),
41
- modifyBreakpoint: lock(modifyBreakpoint)
45
+ modifyBreakpoint: lock(modifyBreakpoint),
42
46
  }
43
47
 
44
48
  async function addBreakpoint (probe) {
@@ -50,7 +54,7 @@ async function addBreakpoint (probe) {
50
54
  let lineNumber = Number(probe.where.lines[0]) // Tracer doesn't support multiple-line breakpoints
51
55
  let columnNumber = 0 // Probes do not contain/support column information
52
56
 
53
- // Optimize for sending data to /debugger/v1/input endpoint
57
+ // Optimize for sending data to debugger input endpoint
54
58
  probe.location = { file, lines: [String(lineNumber)] }
55
59
 
56
60
  // Optimize for fast calculations when probe is hit
@@ -119,14 +123,14 @@ async function addBreakpoint (probe) {
119
123
  const location = {
120
124
  scriptId,
121
125
  lineNumber: lineNumber - 1, // Beware! lineNumber is zero-indexed
122
- columnNumber
126
+ columnNumber,
123
127
  }
124
128
  let result
125
129
  try {
126
- result = await session.post('Debugger.setBreakpoint', {
130
+ result = /** @type {SetBreakpointResponse} */ (await session.post('Debugger.setBreakpoint', {
127
131
  location,
128
- condition: probe.condition
129
- })
132
+ condition: probe.condition,
133
+ }))
130
134
  } catch (err) {
131
135
  throw new Error(`Error setting breakpoint for probe ${probe.id} (version: ${probe.version})`, { cause: err })
132
136
  }
@@ -200,10 +204,10 @@ async function updateBreakpointInternal (breakpoint, probe) {
200
204
  breakpointToProbes.delete(breakpoint.id)
201
205
  let result
202
206
  try {
203
- result = await session.post('Debugger.setBreakpoint', {
207
+ result = /** @type {SetBreakpointResponse} */ (await session.post('Debugger.setBreakpoint', {
204
208
  location: breakpoint.location,
205
- condition
206
- })
209
+ condition,
210
+ }))
207
211
  } catch (err) {
208
212
  throw new Error(`Error setting breakpoint for probe ${probe.id} (version: ${probe.version})`, { cause: err })
209
213
  }
@@ -3,7 +3,7 @@
3
3
  module.exports = {
4
4
  compile,
5
5
  compileSegments,
6
- templateRequiresEvaluation
6
+ templateRequiresEvaluation,
7
7
  }
8
8
 
9
9
  const identifierRegex = /^[@a-zA-Z_$][\w$]*$/
@@ -34,7 +34,7 @@ const reservedWords = new Set([
34
34
  'implements', 'interface', 'package', 'private', 'protected', 'public',
35
35
 
36
36
  // Literals
37
- 'NaN'
37
+ 'NaN',
38
38
  ])
39
39
 
40
40
  const PRIMITIVE_TYPES = new Set(['string', 'number', 'bigint', 'boolean', 'undefined', 'symbol', 'null'])
@@ -1,29 +1,23 @@
1
1
  'use strict'
2
2
 
3
3
  const { workerData: { config: parentConfig, parentThreadId, configPort } } = require('node:worker_threads')
4
- const { format } = require('node:url')
5
- const defaults = require('../../config/defaults')
4
+ const { getAgentUrl } = require('../../agent/url')
6
5
  const log = require('./log')
7
6
 
8
7
  const config = module.exports = {
9
8
  ...parentConfig,
10
9
  parentThreadId,
11
- maxTotalPayloadSize: 5 * 1024 * 1024 // 5MB
10
+ maxTotalPayloadSize: 5 * 1024 * 1024, // 5MB
12
11
  }
13
12
 
14
- updateUrl(parentConfig)
13
+ updateConfig(parentConfig)
15
14
 
16
- configPort.on('message', updateUrl)
15
+ configPort.on('message', updateConfig)
17
16
  configPort.on('messageerror', (err) =>
18
17
  log.error('[debugger:devtools_client] received "messageerror" on config port', err)
19
18
  )
20
19
 
21
- function updateUrl (updates) {
22
- config.url = updates.url || format({
23
- protocol: 'http:',
24
- hostname: updates.hostname || defaults.hostname,
25
- port: updates.port
26
- })
27
-
20
+ function updateConfig (updates) {
21
+ config.url = getAgentUrl(updates)
28
22
  config.dynamicInstrumentation.captureTimeoutNs = BigInt(updates.dynamicInstrumentation.captureTimeoutMs) * 1_000_000n
29
23
  }
@@ -3,5 +3,5 @@
3
3
  module.exports = {
4
4
  MAX_SNAPSHOTS_PER_SECOND_GLOBALLY: 25,
5
5
  MAX_SNAPSHOTS_PER_SECOND_PER_PROBE: 1,
6
- MAX_NON_SNAPSHOTS_PER_SECOND_PER_PROBE: 5000
6
+ MAX_NON_SNAPSHOTS_PER_SECOND_PER_PROBE: 5000,
7
7
  }