dd-trace 5.43.0 → 5.44.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 (51) hide show
  1. package/package.json +4 -4
  2. package/packages/datadog-instrumentations/src/cucumber.js +61 -23
  3. package/packages/datadog-instrumentations/src/dd-trace-api.js +7 -0
  4. package/packages/datadog-instrumentations/src/helpers/hooks.js +1 -0
  5. package/packages/datadog-instrumentations/src/helpers/register.js +1 -1
  6. package/packages/datadog-instrumentations/src/jest.js +134 -48
  7. package/packages/datadog-instrumentations/src/mocha/main.js +20 -4
  8. package/packages/datadog-instrumentations/src/mocha/utils.js +89 -30
  9. package/packages/datadog-instrumentations/src/mocha/worker.js +3 -1
  10. package/packages/datadog-instrumentations/src/playwright.js +97 -17
  11. package/packages/datadog-instrumentations/src/router.js +1 -0
  12. package/packages/datadog-instrumentations/src/tedious.js +13 -10
  13. package/packages/datadog-instrumentations/src/vitest.js +77 -17
  14. package/packages/datadog-plugin-cucumber/src/index.js +24 -1
  15. package/packages/datadog-plugin-cypress/src/cypress-plugin.js +69 -20
  16. package/packages/datadog-plugin-cypress/src/support.js +39 -10
  17. package/packages/datadog-plugin-google-cloud-vertexai/src/index.js +8 -186
  18. package/packages/datadog-plugin-google-cloud-vertexai/src/tracing.js +186 -0
  19. package/packages/datadog-plugin-google-cloud-vertexai/src/utils.js +19 -0
  20. package/packages/datadog-plugin-jest/src/index.js +38 -5
  21. package/packages/datadog-plugin-mocha/src/index.js +28 -5
  22. package/packages/datadog-plugin-playwright/src/index.js +22 -2
  23. package/packages/datadog-plugin-tedious/src/index.js +14 -9
  24. package/packages/datadog-plugin-vitest/src/index.js +46 -14
  25. package/packages/dd-trace/src/appsec/blocking.js +2 -0
  26. package/packages/dd-trace/src/appsec/graphql.js +3 -1
  27. package/packages/dd-trace/src/appsec/reporter.js +13 -8
  28. package/packages/dd-trace/src/appsec/telemetry/common.js +6 -3
  29. package/packages/dd-trace/src/appsec/telemetry/index.js +20 -4
  30. package/packages/dd-trace/src/appsec/telemetry/waf.js +29 -9
  31. package/packages/dd-trace/src/appsec/waf/waf_manager.js +16 -7
  32. package/packages/dd-trace/src/ci-visibility/exporters/ci-visibility-exporter.js +5 -2
  33. package/packages/dd-trace/src/ci-visibility/requests/get-library-configuration.js +3 -1
  34. package/packages/dd-trace/src/ci-visibility/test-management/get-test-management-tests.js +4 -2
  35. package/packages/dd-trace/src/llmobs/constants/tags.js +2 -0
  36. package/packages/dd-trace/src/llmobs/noop.js +3 -3
  37. package/packages/dd-trace/src/llmobs/plugins/base.js +1 -1
  38. package/packages/dd-trace/src/llmobs/plugins/bedrockruntime.js +2 -1
  39. package/packages/dd-trace/src/llmobs/plugins/vertexai.js +196 -0
  40. package/packages/dd-trace/src/llmobs/sdk.js +2 -0
  41. package/packages/dd-trace/src/llmobs/span_processor.js +6 -0
  42. package/packages/dd-trace/src/llmobs/tagger.js +8 -2
  43. package/packages/dd-trace/src/llmobs/telemetry.js +82 -1
  44. package/packages/dd-trace/src/llmobs/writers/spans/base.js +10 -1
  45. package/packages/dd-trace/src/plugin_manager.js +0 -3
  46. package/packages/dd-trace/src/plugins/ci_plugin.js +16 -26
  47. package/packages/dd-trace/src/plugins/database.js +4 -4
  48. package/packages/dd-trace/src/plugins/plugin.js +2 -0
  49. package/packages/dd-trace/src/plugins/util/test.js +62 -1
  50. package/packages/dd-trace/src/runtime_metrics/runtime_metrics.js +7 -6
  51. package/packages/dd-trace/src/telemetry/send-data.js +5 -1
@@ -10,7 +10,8 @@ const Histogram = require('../histogram')
10
10
  const { performance, PerformanceObserver } = require('perf_hooks')
11
11
 
12
12
  const { NODE_MAJOR, NODE_MINOR } = require('../../../../version')
13
- const INTERVAL = 10 * 1000
13
+ const { DD_RUNTIME_METRICS_FLUSH_INTERVAL = '10000' } = process.env
14
+ const INTERVAL = parseInt(DD_RUNTIME_METRICS_FLUSH_INTERVAL, 10)
14
15
 
15
16
  // Node >=16 has PerformanceObserver with `gc` type, but <16.7 had a critical bug.
16
17
  // See: https://github.com/nodejs/node/issues/39548
@@ -270,12 +271,12 @@ function captureNativeMetrics () {
270
271
  })
271
272
 
272
273
  for (let i = 0, l = spaces.length; i < l; i++) {
273
- const tags = [`heap_space:${spaces[i].space_name}`]
274
+ const tag = `heap_space:${spaces[i].space_name}`
274
275
 
275
- client.gauge('runtime.node.heap.size.by.space', spaces[i].space_size, tags)
276
- client.gauge('runtime.node.heap.used_size.by.space', spaces[i].space_used_size, tags)
277
- client.gauge('runtime.node.heap.available_size.by.space', spaces[i].space_available_size, tags)
278
- client.gauge('runtime.node.heap.physical_size.by.space', spaces[i].physical_space_size, tags)
276
+ client.gauge('runtime.node.heap.size.by.space', spaces[i].space_size, tag)
277
+ client.gauge('runtime.node.heap.used_size.by.space', spaces[i].space_used_size, tag)
278
+ client.gauge('runtime.node.heap.available_size.by.space', spaces[i].space_available_size, tag)
279
+ client.gauge('runtime.node.heap.physical_size.by.space', spaces[i].physical_space_size, tag)
279
280
  }
280
281
  }
281
282
 
@@ -100,7 +100,11 @@ function sendData (config, application, host, reqType, payload = {}, cb = () =>
100
100
  path: '/api/v2/apmtelemetry'
101
101
  }
102
102
  if (backendUrl) {
103
- request(data, backendOptions, (error) => { log.error('Error sending telemetry data', error) })
103
+ request(data, backendOptions, (error) => {
104
+ if (error) {
105
+ log.error('Error sending telemetry data', error)
106
+ }
107
+ })
104
108
  } else {
105
109
  log.error('Invalid Telemetry URL')
106
110
  }