dd-trace 5.54.0 → 5.55.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 (178) hide show
  1. package/ci/cypress/plugin.js +8 -0
  2. package/ci/cypress/polyfills.js +23 -0
  3. package/ci/init.js +8 -7
  4. package/initialize.mjs +2 -2
  5. package/package.json +6 -6
  6. package/packages/datadog-code-origin/index.js +22 -4
  7. package/packages/datadog-core/src/utils/src/kebabcase.js +3 -3
  8. package/packages/datadog-instrumentations/src/cassandra-driver.js +5 -6
  9. package/packages/datadog-instrumentations/src/confluentinc-kafka-javascript.js +2 -3
  10. package/packages/datadog-instrumentations/src/cookie-parser.js +1 -1
  11. package/packages/datadog-instrumentations/src/couchbase.js +3 -6
  12. package/packages/datadog-instrumentations/src/cucumber.js +21 -28
  13. package/packages/datadog-instrumentations/src/dns.js +4 -4
  14. package/packages/datadog-instrumentations/src/elasticsearch.js +9 -10
  15. package/packages/datadog-instrumentations/src/fastify.js +7 -9
  16. package/packages/datadog-instrumentations/src/google-cloud-pubsub.js +14 -16
  17. package/packages/datadog-instrumentations/src/hapi.js +10 -11
  18. package/packages/datadog-instrumentations/src/helpers/fetch.js +4 -5
  19. package/packages/datadog-instrumentations/src/helpers/hook.js +1 -2
  20. package/packages/datadog-instrumentations/src/helpers/register.js +6 -5
  21. package/packages/datadog-instrumentations/src/jest.js +67 -98
  22. package/packages/datadog-instrumentations/src/koa.js +2 -3
  23. package/packages/datadog-instrumentations/src/mariadb.js +11 -4
  24. package/packages/datadog-instrumentations/src/mocha/main.js +79 -75
  25. package/packages/datadog-instrumentations/src/mocha.js +3 -1
  26. package/packages/datadog-instrumentations/src/mysql.js +11 -2
  27. package/packages/datadog-instrumentations/src/nyc.js +2 -1
  28. package/packages/datadog-instrumentations/src/openai.js +2 -2
  29. package/packages/datadog-instrumentations/src/otel-sdk-trace.js +4 -3
  30. package/packages/datadog-instrumentations/src/pg.js +2 -3
  31. package/packages/datadog-instrumentations/src/playwright.js +19 -22
  32. package/packages/datadog-instrumentations/src/protobufjs.js +3 -4
  33. package/packages/datadog-instrumentations/src/redis.js +1 -1
  34. package/packages/datadog-instrumentations/src/restify.js +9 -13
  35. package/packages/datadog-instrumentations/src/router.js +12 -11
  36. package/packages/datadog-instrumentations/src/tedious.js +1 -2
  37. package/packages/datadog-instrumentations/src/vitest.js +15 -29
  38. package/packages/datadog-plugin-avsc/src/schema_iterator.js +12 -12
  39. package/packages/datadog-plugin-aws-sdk/src/base.js +12 -8
  40. package/packages/datadog-plugin-aws-sdk/src/services/cloudwatchlogs.js +3 -5
  41. package/packages/datadog-plugin-aws-sdk/src/services/dynamodb.js +12 -20
  42. package/packages/datadog-plugin-aws-sdk/src/services/kinesis.js +4 -5
  43. package/packages/datadog-plugin-aws-sdk/src/services/lambda.js +3 -5
  44. package/packages/datadog-plugin-aws-sdk/src/services/redshift.js +3 -5
  45. package/packages/datadog-plugin-aws-sdk/src/services/s3.js +3 -5
  46. package/packages/datadog-plugin-aws-sdk/src/services/sns.js +1 -2
  47. package/packages/datadog-plugin-aws-sdk/src/services/sqs.js +7 -10
  48. package/packages/datadog-plugin-cucumber/src/index.js +3 -2
  49. package/packages/datadog-plugin-cypress/src/cypress-plugin.js +2 -1
  50. package/packages/datadog-plugin-dd-trace-api/src/index.js +2 -1
  51. package/packages/datadog-plugin-elasticsearch/src/index.js +1 -1
  52. package/packages/datadog-plugin-google-cloud-vertexai/src/tracing.js +1 -1
  53. package/packages/datadog-plugin-graphql/src/index.js +3 -2
  54. package/packages/datadog-plugin-graphql/src/resolve.js +17 -10
  55. package/packages/datadog-plugin-http/src/client.js +5 -6
  56. package/packages/datadog-plugin-http2/src/client.js +7 -8
  57. package/packages/datadog-plugin-jest/src/index.js +3 -2
  58. package/packages/datadog-plugin-mocha/src/index.js +6 -1
  59. package/packages/datadog-plugin-mongodb-core/src/index.js +2 -1
  60. package/packages/datadog-plugin-mysql/src/index.js +11 -0
  61. package/packages/datadog-plugin-next/src/index.js +1 -1
  62. package/packages/datadog-plugin-openai/src/tracing.js +2 -4
  63. package/packages/datadog-plugin-playwright/src/index.js +3 -2
  64. package/packages/datadog-plugin-protobufjs/src/schema_iterator.js +8 -9
  65. package/packages/datadog-plugin-redis/src/index.js +1 -3
  66. package/packages/datadog-plugin-vitest/src/index.js +5 -4
  67. package/packages/dd-trace/src/appsec/iast/analyzers/analyzers.js +0 -1
  68. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-password-rules.js +0 -1
  69. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-secret-rules.js +0 -1
  70. package/packages/dd-trace/src/appsec/iast/analyzers/hardcoded-secrets-rules.js +0 -1
  71. package/packages/dd-trace/src/appsec/iast/analyzers/missing-header-analyzer.js +1 -2
  72. package/packages/dd-trace/src/appsec/iast/security-controls/index.js +11 -12
  73. package/packages/dd-trace/src/appsec/iast/taint-tracking/plugin.js +1 -1
  74. package/packages/dd-trace/src/appsec/iast/taint-tracking/rewriter.js +2 -1
  75. package/packages/dd-trace/src/appsec/iast/telemetry/span-tags.js +1 -1
  76. package/packages/dd-trace/src/appsec/iast/telemetry/verbosity.js +1 -2
  77. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/range-utils.js +10 -11
  78. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-handler.js +0 -4
  79. package/packages/dd-trace/src/appsec/iast/vulnerabilities.js +0 -1
  80. package/packages/dd-trace/src/appsec/index.js +4 -4
  81. package/packages/dd-trace/src/appsec/reporter.js +5 -7
  82. package/packages/dd-trace/src/appsec/sdk/set_user.js +2 -2
  83. package/packages/dd-trace/src/appsec/sdk/track_event.js +3 -3
  84. package/packages/dd-trace/src/appsec/telemetry/index.js +31 -1
  85. package/packages/dd-trace/src/appsec/waf/waf_context_wrapper.js +6 -2
  86. package/packages/dd-trace/src/azure_metadata.js +8 -3
  87. package/packages/dd-trace/src/ci-visibility/dynamic-instrumentation/index.js +8 -7
  88. package/packages/dd-trace/src/ci-visibility/early-flake-detection/get-known-tests.js +2 -1
  89. package/packages/dd-trace/src/ci-visibility/exporters/agentless/coverage-writer.js +2 -1
  90. package/packages/dd-trace/src/ci-visibility/exporters/agentless/di-logs-writer.js +2 -1
  91. package/packages/dd-trace/src/ci-visibility/exporters/agentless/writer.js +2 -1
  92. package/packages/dd-trace/src/ci-visibility/exporters/git/git_metadata.js +4 -3
  93. package/packages/dd-trace/src/ci-visibility/exporters/test-worker/index.js +7 -6
  94. package/packages/dd-trace/src/ci-visibility/intelligent-test-runner/get-skippable-suites.js +2 -1
  95. package/packages/dd-trace/src/ci-visibility/log-submission/log-submission-plugin.js +4 -3
  96. package/packages/dd-trace/src/ci-visibility/requests/get-library-configuration.js +4 -3
  97. package/packages/dd-trace/src/ci-visibility/test-management/get-test-management-tests.js +2 -1
  98. package/packages/dd-trace/src/config-helper.js +89 -0
  99. package/packages/dd-trace/src/config.js +77 -78
  100. package/packages/dd-trace/src/config_stable.js +7 -4
  101. package/packages/dd-trace/src/datastreams/fnv.js +1 -1
  102. package/packages/dd-trace/src/datastreams/schemas/schema_builder.js +6 -6
  103. package/packages/dd-trace/src/debugger/devtools_client/breakpoints.js +1 -2
  104. package/packages/dd-trace/src/debugger/devtools_client/condition.js +1 -2
  105. package/packages/dd-trace/src/debugger/devtools_client/index.js +2 -1
  106. package/packages/dd-trace/src/debugger/devtools_client/send.js +3 -2
  107. package/packages/dd-trace/src/debugger/devtools_client/snapshot/collector.js +1 -2
  108. package/packages/dd-trace/src/debugger/devtools_client/snapshot/processor.js +3 -4
  109. package/packages/dd-trace/src/debugger/devtools_client/snapshot/redaction.js +1 -1
  110. package/packages/dd-trace/src/debugger/index.js +1 -0
  111. package/packages/dd-trace/src/dogstatsd.js +2 -2
  112. package/packages/dd-trace/src/encode/0.4.js +5 -2
  113. package/packages/dd-trace/src/encode/0.5.js +3 -5
  114. package/packages/dd-trace/src/encode/agentless-ci-visibility.js +5 -5
  115. package/packages/dd-trace/src/exporter.js +2 -1
  116. package/packages/dd-trace/src/exporters/common/docker.js +3 -2
  117. package/packages/dd-trace/src/exporters/common/request.js +4 -1
  118. package/packages/dd-trace/src/exporters/common/util.js +3 -1
  119. package/packages/dd-trace/src/id.js +3 -3
  120. package/packages/dd-trace/src/index.js +4 -3
  121. package/packages/dd-trace/src/lambda/handler.js +2 -1
  122. package/packages/dd-trace/src/lambda/index.js +2 -1
  123. package/packages/dd-trace/src/lambda/runtime/patch.js +3 -2
  124. package/packages/dd-trace/src/lambda/runtime/ritm.js +3 -2
  125. package/packages/dd-trace/src/llmobs/constants/tags.js +1 -0
  126. package/packages/dd-trace/src/llmobs/index.js +21 -5
  127. package/packages/dd-trace/src/llmobs/noop.js +18 -20
  128. package/packages/dd-trace/src/llmobs/plugins/langchain/handlers/index.js +11 -13
  129. package/packages/dd-trace/src/llmobs/plugins/openai.js +1 -2
  130. package/packages/dd-trace/src/llmobs/sdk.js +2 -1
  131. package/packages/dd-trace/src/llmobs/span_processor.js +1 -1
  132. package/packages/dd-trace/src/llmobs/tagger.js +19 -6
  133. package/packages/dd-trace/src/llmobs/writers/base.js +1 -1
  134. package/packages/dd-trace/src/log/index.js +5 -4
  135. package/packages/dd-trace/src/log/writer.js +1 -2
  136. package/packages/dd-trace/src/msgpack/encoder.js +3 -3
  137. package/packages/dd-trace/src/noop/span.js +1 -1
  138. package/packages/dd-trace/src/opentelemetry/tracer.js +1 -1
  139. package/packages/dd-trace/src/opentracing/propagation/log.js +4 -5
  140. package/packages/dd-trace/src/opentracing/propagation/text_map.js +17 -18
  141. package/packages/dd-trace/src/opentracing/span.js +7 -6
  142. package/packages/dd-trace/src/payload-tagging/config/index.js +17 -21
  143. package/packages/dd-trace/src/plugin_manager.js +4 -3
  144. package/packages/dd-trace/src/plugins/ci_plugin.js +25 -1
  145. package/packages/dd-trace/src/plugins/plugin.js +1 -1
  146. package/packages/dd-trace/src/plugins/util/ci.js +7 -7
  147. package/packages/dd-trace/src/plugins/util/git.js +1 -1
  148. package/packages/dd-trace/src/plugins/util/llm.js +2 -2
  149. package/packages/dd-trace/src/plugins/util/stacktrace.js +8 -1
  150. package/packages/dd-trace/src/plugins/util/test.js +4 -3
  151. package/packages/dd-trace/src/plugins/util/user-provided-git.js +2 -1
  152. package/packages/dd-trace/src/plugins/util/web.js +3 -4
  153. package/packages/dd-trace/src/priority_sampler.js +46 -35
  154. package/packages/dd-trace/src/profiling/config.js +12 -32
  155. package/packages/dd-trace/src/profiling/exporter_cli.js +20 -20
  156. package/packages/dd-trace/src/profiling/exporters/agent.js +1 -1
  157. package/packages/dd-trace/src/profiling/exporters/event_serializer.js +2 -1
  158. package/packages/dd-trace/src/profiling/index.js +2 -1
  159. package/packages/dd-trace/src/profiling/profiler.js +7 -4
  160. package/packages/dd-trace/src/profiling/ssi-telemetry-mock-profiler.js +3 -1
  161. package/packages/dd-trace/src/profiling/tagger.js +22 -12
  162. package/packages/dd-trace/src/proxy.js +2 -1
  163. package/packages/dd-trace/src/ritm.js +4 -4
  164. package/packages/dd-trace/src/runtime_metrics/runtime_metrics.js +3 -2
  165. package/packages/dd-trace/src/sampler.js +10 -2
  166. package/packages/dd-trace/src/serverless.js +11 -4
  167. package/packages/dd-trace/src/span_processor.js +2 -1
  168. package/packages/dd-trace/src/standalone/tracesource.js +1 -2
  169. package/packages/dd-trace/src/standalone/tracesource_priority_sampler.js +1 -2
  170. package/packages/dd-trace/src/startup-log.js +5 -17
  171. package/packages/dd-trace/src/supported-configurations.json +439 -0
  172. package/packages/dd-trace/src/telemetry/dependencies.js +62 -57
  173. package/packages/dd-trace/src/telemetry/send-data.js +7 -6
  174. package/packages/dd-trace/src/telemetry/telemetry.js +12 -25
  175. package/packages/dd-trace/src/tracer.js +3 -7
  176. package/packages/dd-trace/src/util.js +0 -5
  177. package/packages/dd-trace/src/appsec/iast/analyzers/header-injection-analyzer.js +0 -120
  178. package/packages/dd-trace/src/appsec/iast/vulnerabilities-formatter/evidence-redaction/sensitive-analyzers/header-sensitive-analyzer.js +0 -20
@@ -0,0 +1,439 @@
1
+ {
2
+ "supportedConfigurations": {
3
+ "DD_AAS_DOTNET_EXTENSION_VERSION": ["A"],
4
+ "DD_AGENT_HOST": ["A"],
5
+ "DD_AGENTLESS_LOG_SUBMISSION_ENABLED": ["A"],
6
+ "DD_AGENTLESS_LOG_SUBMISSION_URL": ["A"],
7
+ "DD_API_KEY": ["A"],
8
+ "DD_API_SECURITY_ENABLED": ["A"],
9
+ "DD_API_SECURITY_SAMPLE_DELAY": ["A"],
10
+ "DD_APM_FLUSH_DEADLINE_MILLISECONDS": ["A"],
11
+ "DD_APM_TRACING_ENABLED": ["A"],
12
+ "DD_APPSEC_AUTO_USER_INSTRUMENTATION_MODE": ["A"],
13
+ "DD_APPSEC_COLLECT_ALL_HEADERS": ["A"],
14
+ "DD_APPSEC_ENABLED": ["A"],
15
+ "DD_APPSEC_GRAPHQL_BLOCKED_TEMPLATE_JSON": ["A"],
16
+ "DD_APPSEC_HEADER_COLLECTION_REDACTION_ENABLED": ["A"],
17
+ "DD_APPSEC_HTTP_BLOCKED_TEMPLATE_HTML": ["A"],
18
+ "DD_APPSEC_HTTP_BLOCKED_TEMPLATE_JSON": ["A"],
19
+ "DD_APPSEC_MAX_COLLECTED_HEADERS": ["A"],
20
+ "DD_APPSEC_MAX_STACK_TRACE_DEPTH": ["A"],
21
+ "DD_APPSEC_MAX_STACK_TRACES": ["A"],
22
+ "DD_APPSEC_OBFUSCATION_PARAMETER_KEY_REGEXP": ["A"],
23
+ "DD_APPSEC_OBFUSCATION_PARAMETER_VALUE_REGEXP": ["A"],
24
+ "DD_APPSEC_RASP_COLLECT_REQUEST_BODY": ["A"],
25
+ "DD_APPSEC_RASP_ENABLED": ["A"],
26
+ "DD_APPSEC_RULES": ["A"],
27
+ "DD_APPSEC_SCA_ENABLED": ["A"],
28
+ "DD_APPSEC_STACK_TRACE_ENABLED": ["A"],
29
+ "DD_APPSEC_TRACE_RATE_LIMIT": ["A"],
30
+ "DD_APPSEC_WAF_TIMEOUT": ["A"],
31
+ "DD_AZURE_APP_SERVICES": ["A"],
32
+ "DD_CIVISIBILITY_AGENTLESS_ENABLED": ["A"],
33
+ "DD_CIVISIBILITY_AGENTLESS_URL": ["A"],
34
+ "DD_CIVISIBILITY_AUTO_INSTRUMENTATION_PROVIDER": ["A"],
35
+ "DD_CIVISIBILITY_DANGEROUSLY_FORCE_COVERAGE": ["A"],
36
+ "DD_CIVISIBILITY_DANGEROUSLY_FORCE_TEST_SKIPPING": ["A"],
37
+ "DD_CIVISIBILITY_EARLY_FLAKE_DETECTION_ENABLED": ["A"],
38
+ "DD_CIVISIBILITY_ENABLED": ["A"],
39
+ "DD_CIVISIBILITY_FLAKY_RETRY_COUNT": ["A"],
40
+ "DD_CIVISIBILITY_FLAKY_RETRY_ENABLED": ["A"],
41
+ "DD_CIVISIBILITY_GIT_UNSHALLOW_ENABLED": ["A"],
42
+ "DD_CIVISIBILITY_GIT_UPLOAD_ENABLED": ["A"],
43
+ "DD_CIVISIBILITY_IMPACTED_TESTS_DETECTION_ENABLED": ["A"],
44
+ "DD_CIVISIBILITY_ITR_ENABLED": ["A"],
45
+ "DD_CIVISIBILITY_MANUAL_API_ENABLED": ["A"],
46
+ "DD_CIVISIBILITY_TEST_COMMAND": ["A"],
47
+ "DD_CIVISIBILITY_TEST_MODULE_ID": ["A"],
48
+ "DD_CIVISIBILITY_TEST_SESSION_ID": ["A"],
49
+ "DD_CODE_ORIGIN_FOR_SPANS_ENABLED": ["A"],
50
+ "DD_CODE_ORIGIN_FOR_SPANS_EXPERIMENTAL_EXIT_SPANS_ENABLED": ["A"],
51
+ "DD_CRASHTRACKING_ENABLED": ["A"],
52
+ "DD_DATA_STREAMS_ENABLED": ["A"],
53
+ "DD_DBM_PROPAGATION_MODE": ["A"],
54
+ "DD_DOGSTATSD_HOST": ["A"],
55
+ "DD_DOGSTATSD_PORT": ["A"],
56
+ "DD_DYNAMIC_INSTRUMENTATION_ENABLED": ["A"],
57
+ "DD_DYNAMIC_INSTRUMENTATION_REDACTED_IDENTIFIERS": ["A"],
58
+ "DD_DYNAMIC_INSTRUMENTATION_REDACTION_EXCLUDED_IDENTIFIERS": ["A"],
59
+ "DD_ENV": ["A"],
60
+ "DD_EXPERIMENTAL_APPSEC_STANDALONE_ENABLED": ["A"],
61
+ "DD_EXTERNAL_ENV": ["A"],
62
+ "DD_GIT_BRANCH": ["A"],
63
+ "DD_GIT_COMMIT_AUTHOR_DATE": ["A"],
64
+ "DD_GIT_COMMIT_AUTHOR_EMAIL": ["A"],
65
+ "DD_GIT_COMMIT_AUTHOR_NAME": ["A"],
66
+ "DD_GIT_COMMIT_COMMITTER_DATE": ["A"],
67
+ "DD_GIT_COMMIT_COMMITTER_EMAIL": ["A"],
68
+ "DD_GIT_COMMIT_COMMITTER_NAME": ["A"],
69
+ "DD_GIT_COMMIT_MESSAGE": ["A"],
70
+ "DD_GIT_COMMIT_SHA": ["A"],
71
+ "DD_GIT_PROPERTIES_FILE": ["A"],
72
+ "DD_GIT_REPOSITORY_URL": ["A"],
73
+ "DD_GIT_TAG": ["A"],
74
+ "DD_GRPC_CLIENT_ERROR_STATUSES": ["A"],
75
+ "DD_GRPC_SERVER_ERROR_STATUSES": ["A"],
76
+ "DD_IAST_DB_ROWS_TO_TAINT": ["A"],
77
+ "DD_IAST_DEDUPLICATION_ENABLED": ["A"],
78
+ "DD_IAST_ENABLED": ["A"],
79
+ "DD_IAST_MAX_CONCURRENT_REQUESTS": ["A"],
80
+ "DD_IAST_MAX_CONTEXT_OPERATIONS": ["A"],
81
+ "DD_IAST_REDACTION_ENABLED": ["A"],
82
+ "DD_IAST_REDACTION_NAME_PATTERN": ["A"],
83
+ "DD_IAST_REDACTION_VALUE_PATTERN": ["A"],
84
+ "DD_IAST_REQUEST_SAMPLING": ["A"],
85
+ "DD_IAST_SECURITY_CONTROLS_CONFIGURATION": ["A"],
86
+ "DD_IAST_STACK_TRACE_ENABLED": ["A"],
87
+ "DD_IAST_TELEMETRY_VERBOSITY": ["A"],
88
+ "DD_INJECT_FORCE": ["A"],
89
+ "DD_INJECTION_ENABLED": ["A"],
90
+ "DD_INSTRUMENTATION_CONFIG_ID": ["A"],
91
+ "DD_INSTRUMENTATION_INSTALL_ID": ["A"],
92
+ "DD_INSTRUMENTATION_INSTALL_TIME": ["A"],
93
+ "DD_INSTRUMENTATION_INSTALL_TYPE": ["A"],
94
+ "DD_INSTRUMENTATION_TELEMETRY_ENABLED": ["A"],
95
+ "DD_INTERNAL_PROFILING_LONG_LIVED_THRESHOLD": ["A"],
96
+ "DD_INTERNAL_PROFILING_TIMELINE_SAMPLING_ENABLED": ["A"],
97
+ "DD_LAMBDA_HANDLER": ["A"],
98
+ "DD_LANGCHAIN_SPAN_CHAR_LIMIT": ["A"],
99
+ "DD_LANGCHAIN_SPAN_PROMPT_COMPLETION_SAMPLE_RATE": ["A"],
100
+ "DD_LLMOBS_AGENTLESS_ENABLED": ["A"],
101
+ "DD_LLMOBS_ENABLED": ["A"],
102
+ "DD_LLMOBS_ML_APP": ["A"],
103
+ "DD_LOG_LEVEL": ["A"],
104
+ "DD_LOGS_INJECTION": ["A"],
105
+ "DD_MINI_AGENT_PATH": ["A"],
106
+ "DD_OPENAI_LOGS_ENABLED": ["A"],
107
+ "DD_OPENAI_SPAN_CHAR_LIMIT": ["A"],
108
+ "DD_PLAYWRIGHT_WORKER": ["A"],
109
+ "DD_PROFILING_CODEHOTSPOTS_ENABLED": ["A"],
110
+ "DD_PROFILING_CPU_ENABLED": ["A"],
111
+ "DD_PROFILING_DEBUG_UPLOAD_COMPRESSION": ["A"],
112
+ "DD_PROFILING_ENABLED": ["A"],
113
+ "DD_PROFILING_ENDPOINT_COLLECTION_ENABLED": ["A"],
114
+ "DD_PROFILING_EXPERIMENTAL_OOM_EXPORT_STRATEGIES": ["A"],
115
+ "DD_PROFILING_EXPERIMENTAL_OOM_HEAP_LIMIT_EXTENSION_SIZE": ["A"],
116
+ "DD_PROFILING_EXPERIMENTAL_OOM_MAX_HEAP_EXTENSION_COUNT": ["A"],
117
+ "DD_PROFILING_EXPERIMENTAL_OOM_MONITORING_ENABLED": ["A"],
118
+ "DD_PROFILING_EXPORTERS": ["A"],
119
+ "DD_PROFILING_HEAP_ENABLED": ["A"],
120
+ "DD_PROFILING_PROFILERS": ["A"],
121
+ "DD_PROFILING_SOURCE_MAP": ["A"],
122
+ "DD_PROFILING_UPLOAD_PERIOD": ["A"],
123
+ "DD_PROFILING_V8_PROFILER_BUG_WORKAROUND": ["A"],
124
+ "DD_PROFILING_WALLTIME_ENABLED": ["A"],
125
+ "DD_REMOTE_CONFIG_POLL_INTERVAL_SECONDS": ["A"],
126
+ "DD_REMOTE_CONFIGURATION_ENABLED": ["A"],
127
+ "DD_RUNTIME_METRICS_ENABLED": ["A"],
128
+ "DD_RUNTIME_METRICS_FLUSH_INTERVAL": ["A"],
129
+ "DD_SERVICE_MAPPING": ["A"],
130
+ "DD_SERVICE": ["A"],
131
+ "DD_SITE": ["A"],
132
+ "DD_SPAN_SAMPLING_RULES_FILE": ["A"],
133
+ "DD_SPAN_SAMPLING_RULES": ["A"],
134
+ "DD_TAGS": ["A"],
135
+ "DD_TELEMETRY_DEBUG": ["A"],
136
+ "DD_TELEMETRY_DEPENDENCY_COLLECTION_ENABLED": ["A"],
137
+ "DD_TELEMETRY_FORWARDER_PATH": ["A"],
138
+ "DD_TELEMETRY_HEARTBEAT_INTERVAL": ["A"],
139
+ "DD_TELEMETRY_LOG_COLLECTION_ENABLED": ["A"],
140
+ "DD_TELEMETRY_METRICS_ENABLED": ["A"],
141
+ "DD_TEST_FAILED_TEST_REPLAY_ENABLED": ["A"],
142
+ "DD_TEST_FLEET_CONFIG_PATH": ["A"],
143
+ "DD_TEST_LOCAL_CONFIG_PATH": ["A"],
144
+ "DD_TEST_MANAGEMENT_ATTEMPT_TO_FIX_RETRIES": ["A"],
145
+ "DD_TEST_MANAGEMENT_ENABLED": ["A"],
146
+ "DD_TEST_SESSION_NAME": ["A"],
147
+ "DD_TRACE__CONFLUENTINC_KAFKA_JAVASCRIPT_ENABLED": ["A"],
148
+ "DD_TRACE_128_BIT_TRACEID_GENERATION_ENABLED": ["A"],
149
+ "DD_TRACE_128_BIT_TRACEID_LOGGING_ENABLED": ["A"],
150
+ "DD_TRACE_AEROSPIKE_ENABLED": ["A"],
151
+ "DD_TRACE_AGENT_PORT": ["A"],
152
+ "DD_TRACE_AGENT_PROTOCOL_VERSION": ["A"],
153
+ "DD_TRACE_AGENT_URL": ["A"],
154
+ "DD_TRACE_AMQP10_ENABLED": ["A"],
155
+ "DD_TRACE_AMQPLIB_ENABLED": ["A"],
156
+ "DD_TRACE_APOLLO_ENABLED": ["A"],
157
+ "DD_TRACE_APOLLO_GATEWAY_ENABLED": ["A"],
158
+ "DD_TRACE_APOLLO_SERVER_CORE_ENABLED": ["A"],
159
+ "DD_TRACE_APOLLO_SERVER_ENABLED": ["A"],
160
+ "DD_TRACE_APOLLO_SERVER_EXPRESS_ENABLED": ["A"],
161
+ "DD_TRACE_APOLLO_SERVER_FASTIFY_ENABLED": ["A"],
162
+ "DD_TRACE_APOLLO_SUBGRAPH_ENABLED": ["A"],
163
+ "DD_TRACE_AVSC_ENABLED": ["A"],
164
+ "DD_TRACE_AWS_ADD_SPAN_POINTERS": ["A"],
165
+ "DD_TRACE_AWS_SDK_AWS_BATCH_PROPAGATION_ENABLED": ["A"],
166
+ "DD_TRACE_AWS_SDK_AWS_ENABLED": ["A"],
167
+ "DD_TRACE_AWS_SDK_BATCH_PROPAGATION_ENABLED": ["A"],
168
+ "DD_TRACE_AWS_SDK_BEDROCKRUNTIME_BATCH_PROPAGATION_ENABLED": ["A"],
169
+ "DD_TRACE_AWS_SDK_BEDROCKRUNTIME_ENABLED": ["A"],
170
+ "DD_TRACE_AWS_SDK_CLOUDWATCHLOGS_BATCH_PROPAGATION_ENABLED": ["A"],
171
+ "DD_TRACE_AWS_SDK_CLOUDWATCHLOGS_ENABLED": ["A"],
172
+ "DD_TRACE_AWS_SDK_DYNAMODB_BATCH_PROPAGATION_ENABLED": ["A"],
173
+ "DD_TRACE_AWS_SDK_DYNAMODB_ENABLED": ["A"],
174
+ "DD_TRACE_AWS_SDK_ENABLED": ["A"],
175
+ "DD_TRACE_AWS_SDK_EVENTBRIDGE_BATCH_PROPAGATION_ENABLED": ["A"],
176
+ "DD_TRACE_AWS_SDK_EVENTBRIDGE_ENABLED": ["A"],
177
+ "DD_TRACE_AWS_SDK_KINESIS_BATCH_PROPAGATION_ENABLED": ["A"],
178
+ "DD_TRACE_AWS_SDK_KINESIS_ENABLED": ["A"],
179
+ "DD_TRACE_AWS_SDK_LAMBDA_BATCH_PROPAGATION_ENABLED": ["A"],
180
+ "DD_TRACE_AWS_SDK_LAMBDA_ENABLED": ["A"],
181
+ "DD_TRACE_AWS_SDK_NODE_HTTP_HANDLER_ENABLED": ["A"],
182
+ "DD_TRACE_AWS_SDK_REDSHIFT_BATCH_PROPAGATION_ENABLED": ["A"],
183
+ "DD_TRACE_AWS_SDK_REDSHIFT_ENABLED": ["A"],
184
+ "DD_TRACE_AWS_SDK_S3_BATCH_PROPAGATION_ENABLED": ["A"],
185
+ "DD_TRACE_AWS_SDK_S3_ENABLED": ["A"],
186
+ "DD_TRACE_AWS_SDK_SFN_BATCH_PROPAGATION_ENABLED": ["A"],
187
+ "DD_TRACE_AWS_SDK_SFN_CLIENT_ENABLED": ["A"],
188
+ "DD_TRACE_AWS_SDK_SFN_ENABLED": ["A"],
189
+ "DD_TRACE_AWS_SDK_SMITHY_CLIENT_ENABLED": ["A"],
190
+ "DD_TRACE_AWS_SDK_SNS_BATCH_PROPAGATION_ENABLED": ["A"],
191
+ "DD_TRACE_AWS_SDK_SNS_ENABLED": ["A"],
192
+ "DD_TRACE_AWS_SDK_SQS_BATCH_PROPAGATION_ENABLED": ["A"],
193
+ "DD_TRACE_AWS_SDK_SQS_ENABLED": ["A"],
194
+ "DD_TRACE_AWS_SDK_STATES_BATCH_PROPAGATION_ENABLED": ["A"],
195
+ "DD_TRACE_AWS_SDK_STATES_ENABLED": ["A"],
196
+ "DD_TRACE_AWS_SDK_STEPFUNCTIONS_BATCH_PROPAGATION_ENABLED": ["A"],
197
+ "DD_TRACE_AWS_SDK_STEPFUNCTIONS_ENABLED": ["A"],
198
+ "DD_TRACE_AXIOS_ENABLED": ["A"],
199
+ "DD_TRACE_AZURE_FUNCTIONS_ENABLED": ["A"],
200
+ "DD_TRACE_BAGGAGE_MAX_BYTES": ["A"],
201
+ "DD_TRACE_BAGGAGE_MAX_ITEMS": ["A"],
202
+ "DD_TRACE_BAGGAGE_TAG_KEYS": ["A"],
203
+ "DD_TRACE_BEAUTIFUL_LOGS": ["A"],
204
+ "DD_TRACE_BLUEBIRD_ENABLED": ["A"],
205
+ "DD_TRACE_BODY_PARSER_ENABLED": ["A"],
206
+ "DD_TRACE_BSON_ENABLED": ["A"],
207
+ "DD_TRACE_BUNYAN_ENABLED": ["A"],
208
+ "DD_TRACE_CASSANDRA_DRIVER_ENABLED": ["A"],
209
+ "DD_TRACE_CHILD_PROCESS_ENABLED": ["A"],
210
+ "DD_TRACE_CLIENT_IP_ENABLED": ["A"],
211
+ "DD_TRACE_CLIENT_IP_HEADER": ["A"],
212
+ "DD_TRACE_CLOUD_PAYLOAD_TAGGING_MAX_DEPTH": ["A"],
213
+ "DD_TRACE_CLOUD_REQUEST_PAYLOAD_TAGGING": ["A"],
214
+ "DD_TRACE_CLOUD_RESPONSE_PAYLOAD_TAGGING": ["A"],
215
+ "DD_TRACE_COLLECTIONS_ENABLED": ["A"],
216
+ "DD_TRACE_COMMONPLUGIN_ENABLED": ["A"],
217
+ "DD_TRACE_CONFLUENTINC_KAFKA_JAVASCRIPT_ENABLED": ["A"],
218
+ "DD_TRACE_CONNECT_ENABLED": ["A"],
219
+ "DD_TRACE_COOKIE_ENABLED": ["A"],
220
+ "DD_TRACE_COOKIE_PARSER_ENABLED": ["A"],
221
+ "DD_TRACE_COUCHBASE_ENABLED": ["A"],
222
+ "DD_TRACE_CRYPTO_ENABLED": ["A"],
223
+ "DD_TRACE_CUCUMBER_CUCUMBER_ENABLED": ["A"],
224
+ "DD_TRACE_CUCUMBER_ENABLED": ["A"],
225
+ "DD_TRACE_CYPRESS_ENABLED": ["A"],
226
+ "DD_TRACE_DD_TRACE_API_ENABLED": ["A"],
227
+ "DD_TRACE_DEBUG": ["A"],
228
+ "DD_TRACE_DISABLED_INSTRUMENTATIONS": ["A"],
229
+ "DD_TRACE_DISABLED_PLUGINS": ["A"],
230
+ "DD_TRACE_DNS_ENABLED": ["A"],
231
+ "DD_TRACE_DYNAMODB_TABLE_PRIMARY_KEYS": ["A"],
232
+ "DD_TRACE_ELASTIC_ELASTICSEARCH_ENABLED": ["A"],
233
+ "DD_TRACE_ELASTIC_TRANSPORT_ENABLED": ["A"],
234
+ "DD_TRACE_ELASTICSEARCH_ENABLED": ["A"],
235
+ "DD_TRACE_ENABLED": ["A"],
236
+ "DD_TRACE_ENCODING_DEBUG": ["A"],
237
+ "DD_TRACE_EXPERIMENTAL_B3_ENABLED": ["A"],
238
+ "DD_TRACE_EXPERIMENTAL_EXPORTER": ["A"],
239
+ "DD_TRACE_EXPERIMENTAL_GET_RUM_DATA_ENABLED": ["A"],
240
+ "DD_TRACE_EXPERIMENTAL_RUNTIME_ID_ENABLED": ["A"],
241
+ "DD_TRACE_EXPERIMENTAL_SPAN_COUNTS": ["A"],
242
+ "DD_TRACE_EXPERIMENTAL_STATE_TRACKING": ["A"],
243
+ "DD_TRACE_EXPRESS_ENABLED": ["A"],
244
+ "DD_TRACE_EXPRESS_MONGO_SANITIZE_ENABLED": ["A"],
245
+ "DD_TRACE_EXPRESS_SESSION_ENABLED": ["A"],
246
+ "DD_TRACE_FASTIFY_ENABLED": ["A"],
247
+ "DD_TRACE_FETCH_ENABLED": ["A"],
248
+ "DD_TRACE_FIND_MY_WAY_ENABLED": ["A"],
249
+ "DD_TRACE_FS_ENABLED": ["A"],
250
+ "DD_TRACE_GENERIC_POOL_ENABLED": ["A"],
251
+ "DD_TRACE_GIT_METADATA_ENABLED": ["A"],
252
+ "DD_TRACE_GLOBAL_TAGS": ["A"],
253
+ "DD_TRACE_GOOGLE_CLOUD_PUBSUB_ENABLED": ["A"],
254
+ "DD_TRACE_GOOGLE_CLOUD_VERTEXAI_ENABLED": ["A"],
255
+ "DD_TRACE_GOOGLE_GAX_ENABLED": ["A"],
256
+ "DD_TRACE_GRAPHQL_ENABLED": ["A"],
257
+ "DD_TRACE_GRAPHQL_ERROR_EXTENSIONS": ["A"],
258
+ "DD_TRACE_GRAPHQL_TAG_ENABLED": ["A"],
259
+ "DD_TRACE_GRAPHQL_TOOLS_ENABLED": ["A"],
260
+ "DD_TRACE_GRAPHQL_TOOLS_EXECUTOR_ENABLED": ["A"],
261
+ "DD_TRACE_GRAPHQL_YOGA_ENABLED": ["A"],
262
+ "DD_TRACE_GRPC_ENABLED": ["A"],
263
+ "DD_TRACE_GRPC_GRPC_JS_ENABLED": ["A"],
264
+ "DD_TRACE_GRPC_PROTO_LOADER_ENABLED": ["A"],
265
+ "DD_TRACE_HANDLEBARS_ENABLED": ["A"],
266
+ "DD_TRACE_HAPI_BOOM_ENABLED": ["A"],
267
+ "DD_TRACE_HAPI_ENABLED": ["A"],
268
+ "DD_TRACE_HAPI_HAPI_ENABLED": ["A"],
269
+ "DD_TRACE_HEADER_TAGS": ["A"],
270
+ "DD_TRACE_HTTP_ENABLED": ["A"],
271
+ "DD_TRACE_HTTP2_ENABLED": ["A"],
272
+ "DD_TRACE_HTTPS_ENABLED": ["A"],
273
+ "DD_TRACE_INFERRED_PROXY_SERVICES_ENABLED": ["A"],
274
+ "DD_TRACE_IOREDIS_ENABLED": ["A"],
275
+ "DD_TRACE_IOVALKEY_ENABLED": ["A"],
276
+ "DD_TRACE_JEST_CIRCUS_ENABLED": ["A"],
277
+ "DD_TRACE_JEST_CONFIG_ENABLED": ["A"],
278
+ "DD_TRACE_JEST_CORE_ENABLED": ["A"],
279
+ "DD_TRACE_JEST_ENABLED": ["A"],
280
+ "DD_TRACE_JEST_ENVIRONMENT_JSDOM_ENABLED": ["A"],
281
+ "DD_TRACE_JEST_ENVIRONMENT_NODE_ENABLED": ["A"],
282
+ "DD_TRACE_JEST_GLOBALS_ENABLED": ["A"],
283
+ "DD_TRACE_JEST_REPORTERS_ENABLED": ["A"],
284
+ "DD_TRACE_JEST_RUNTIME_ENABLED": ["A"],
285
+ "DD_TRACE_JEST_TEST_SEQUENCER_ENABLED": ["A"],
286
+ "DD_TRACE_JEST_TRANSFORM_ENABLED": ["A"],
287
+ "DD_TRACE_JEST_WORKER_ENABLED": ["A"],
288
+ "DD_TRACE_KAFKAJS_ENABLED": ["A"],
289
+ "DD_TRACE_KNEX_ENABLED": ["A"],
290
+ "DD_TRACE_KOA_ENABLED": ["A"],
291
+ "DD_TRACE_KOA_ROUTE_ENABLED": ["A"],
292
+ "DD_TRACE_KOA_ROUTER_ENABLED": ["A"],
293
+ "DD_TRACE_KOA_WEBSOCKET_ENABLED": ["A"],
294
+ "DD_TRACE_LANGCHAIN_ANTHROPIC_ENABLED": ["A"],
295
+ "DD_TRACE_LANGCHAIN_COHERE_ENABLED": ["A"],
296
+ "DD_TRACE_LANGCHAIN_CORE_ENABLED": ["A"],
297
+ "DD_TRACE_LANGCHAIN_ENABLED": ["A"],
298
+ "DD_TRACE_LANGCHAIN_GOOGLE_GENAI_ENABLED": ["A"],
299
+ "DD_TRACE_LANGCHAIN_OPENAI_ENABLED": ["A"],
300
+ "DD_TRACE_LDAPJS_ENABLED": ["A"],
301
+ "DD_TRACE_LDAPJS_PROMISE_ENABLED": ["A"],
302
+ "DD_TRACE_LEGACY_BAGGAGE_ENABLED": ["A"],
303
+ "DD_TRACE_LIMITD_CLIENT_ENABLED": ["A"],
304
+ "DD_TRACE_LODASH_ENABLED": ["A"],
305
+ "DD_TRACE_LOG_LEVEL": ["A"],
306
+ "DD_TRACE_LOOPBACK_ENABLED": ["A"],
307
+ "DD_TRACE_MARIADB_ENABLED": ["A"],
308
+ "DD_TRACE_MEMCACHED_COMMAND_ENABLED": ["A"],
309
+ "DD_TRACE_MEMCACHED_ENABLED": ["A"],
310
+ "DD_TRACE_MICROGATEWAY_CORE_ENABLED": ["A"],
311
+ "DD_TRACE_MIDDIE_ENABLED": ["A"],
312
+ "DD_TRACE_MIDDLEWARE_TRACING_ENABLED": ["A"],
313
+ "DD_TRACE_MOCHA_EACH_ENABLED": ["A"],
314
+ "DD_TRACE_MOCHA_ENABLED": ["A"],
315
+ "DD_TRACE_MOLECULER_ENABLED": ["A"],
316
+ "DD_TRACE_MONGODB_CORE_ENABLED": ["A"],
317
+ "DD_TRACE_MONGODB_ENABLED": ["A"],
318
+ "DD_TRACE_MONGODB_HEARTBEAT_ENABLED": ["A"],
319
+ "DD_TRACE_MONGOOSE_ENABLED": ["A"],
320
+ "DD_TRACE_MQUERY_ENABLED": ["A"],
321
+ "DD_TRACE_MULTER_ENABLED": ["A"],
322
+ "DD_TRACE_MYSQL_ENABLED": ["A"],
323
+ "DD_TRACE_MYSQL2_ENABLED": ["A"],
324
+ "DD_TRACE_NATIVE_SPAN_EVENTS": ["A"],
325
+ "DD_TRACE_NET_ENABLED": ["A"],
326
+ "DD_TRACE_NEXT_ENABLED": ["A"],
327
+ "DD_TRACE_NODE_CHILD_PROCESS_ENABLED": ["A"],
328
+ "DD_TRACE_NODE_REDIS_CLIENT_ENABLED": ["A"],
329
+ "DD_TRACE_NODE_SERIALIZE_ENABLED": ["A"],
330
+ "DD_TRACE_NYC_ENABLED": ["A"],
331
+ "DD_TRACE_OBFUSCATION_QUERY_STRING_REGEXP": ["A"],
332
+ "DD_TRACE_OPENAI_ENABLED": ["A"],
333
+ "DD_TRACE_OPENSEARCH_ENABLED": ["A"],
334
+ "DD_TRACE_OPENSEARCH_PROJECT_OPENSEARCH_ENABLED": ["A"],
335
+ "DD_TRACE_OPENTELEMETRY_SDK_TRACE_NODE_ENABLED": ["A"],
336
+ "DD_TRACE_ORACLEDB_ENABLED": ["A"],
337
+ "DD_TRACE_OTEL_ENABLED": ["A"],
338
+ "DD_TRACE_PARTIAL_FLUSH_MIN_SPANS": ["A"],
339
+ "DD_TRACE_PASSPORT_ENABLED": ["A"],
340
+ "DD_TRACE_PASSPORT_HTTP_ENABLED": ["A"],
341
+ "DD_TRACE_PASSPORT_LOCAL_ENABLED": ["A"],
342
+ "DD_TRACE_PEER_SERVICE_DEFAULTS_ENABLED": ["A"],
343
+ "DD_TRACE_PEER_SERVICE_MAPPING": ["A"],
344
+ "DD_TRACE_PG_CURSOR_ENABLED": ["A"],
345
+ "DD_TRACE_PG_ENABLED": ["A"],
346
+ "DD_TRACE_PG_NATIVE_ENABLED": ["A"],
347
+ "DD_TRACE_PG_QUERY_STREAM_ENABLED": ["A"],
348
+ "DD_TRACE_PINO_ENABLED": ["A"],
349
+ "DD_TRACE_PINO_PRETTY_ENABLED": ["A"],
350
+ "DD_TRACE_PLAYWRIGHT_CORE_ENABLED": ["A"],
351
+ "DD_TRACE_PLAYWRIGHT_ENABLED": ["A"],
352
+ "DD_TRACE_PLAYWRIGHT_TEST_ENABLED": ["A"],
353
+ "DD_TRACE_PROCESS_ENABLED": ["A"],
354
+ "DD_TRACE_PROMISE_ENABLED": ["A"],
355
+ "DD_TRACE_PROMISE_JS_ENABLED": ["A"],
356
+ "DD_TRACE_PROPAGATION_BEHAVIOR_EXTRACT": ["A"],
357
+ "DD_TRACE_PROPAGATION_EXTRACT_FIRST": ["A"],
358
+ "DD_TRACE_PROPAGATION_STYLE_EXTRACT": ["A"],
359
+ "DD_TRACE_PROPAGATION_STYLE_INJECT": ["A"],
360
+ "DD_TRACE_PROPAGATION_STYLE": ["A"],
361
+ "DD_TRACE_PROTOBUFJS_ENABLED": ["A"],
362
+ "DD_TRACE_PUG_ENABLED": ["A"],
363
+ "DD_TRACE_Q_ENABLED": ["A"],
364
+ "DD_TRACE_RATE_LIMIT": ["A"],
365
+ "DD_TRACE_REACT_DOM_ENABLED": ["A"],
366
+ "DD_TRACE_REACT_ENABLED": ["A"],
367
+ "DD_TRACE_REDIS_CLIENT_ENABLED": ["A"],
368
+ "DD_TRACE_REDIS_ENABLED": ["A"],
369
+ "DD_TRACE_REMOVE_INTEGRATION_SERVICE_NAMES_ENABLED": ["A"],
370
+ "DD_TRACE_REPORT_HOSTNAME": ["A"],
371
+ "DD_TRACE_REQUEST_ENABLED": ["A"],
372
+ "DD_TRACE_RESTIFY_ENABLED": ["A"],
373
+ "DD_TRACE_RHEA_ENABLED": ["A"],
374
+ "DD_TRACE_ROUTER_ENABLED": ["A"],
375
+ "DD_TRACE_SAMPLE_RATE": ["A"],
376
+ "DD_TRACE_SAMPLING_RULES": ["A"],
377
+ "DD_TRACE_SCOPE": ["A"],
378
+ "DD_TRACE_SELENIUM_ENABLED": ["A"],
379
+ "DD_TRACE_SELENIUM_WEBDRIVER_ENABLED": ["A"],
380
+ "DD_TRACE_SEQUELIZE_ENABLED": ["A"],
381
+ "DD_TRACE_SHAREDB_ENABLED": ["A"],
382
+ "DD_TRACE_SMITHY_SMITHY_CLIENT_ENABLED": ["A"],
383
+ "DD_TRACE_SPAN_ATTRIBUTE_SCHEMA": ["A"],
384
+ "DD_TRACE_SPAN_LEAK_DEBUG": ["A"],
385
+ "DD_TRACE_SQLITE3_ENABLED": ["A"],
386
+ "DD_TRACE_STARTUP_LOGS": ["A"],
387
+ "DD_TRACE_STATS_COMPUTATION_ENABLED": ["A"],
388
+ "DD_TRACE_SUFFIXPLUGIN_ENABLED": ["A"],
389
+ "DD_TRACE_TAGS": ["A"],
390
+ "DD_TRACE_TEDIOUS_ENABLED": ["A"],
391
+ "DD_TRACE_UNDICI_ENABLED": ["A"],
392
+ "DD_TRACE_URL_ENABLED": ["A"],
393
+ "DD_TRACE_VITEST_ENABLED": ["A"],
394
+ "DD_TRACE_VITEST_RUNNER_ENABLED": ["A"],
395
+ "DD_TRACE_VM_ENABLED": ["A"],
396
+ "DD_TRACE_WHEN_ENABLED": ["A"],
397
+ "DD_TRACE_WINSTON_ENABLED": ["A"],
398
+ "DD_TRACE_WORKERPOOL_ENABLED": ["A"],
399
+ "DD_TRACE_WS_ENABLED": ["A"],
400
+ "DD_TRACE_X_DATADOG_TAGS_MAX_LENGTH": ["A"],
401
+ "DD_TRACING_ENABLED": ["A"],
402
+ "DD_VERSION": ["A"],
403
+ "DD_VERTEXAI_SPAN_CHAR_LIMIT": ["A"],
404
+ "DD_VERTEXAI_SPAN_PROMPT_COMPLETION_SAMPLE_RATE": ["A"],
405
+ "OTEL_LOG_LEVEL": ["A"],
406
+ "OTEL_LOGS_EXPORTER": ["A"],
407
+ "OTEL_METRICS_EXPORTER": ["A"],
408
+ "OTEL_PROPAGATORS": ["A"],
409
+ "OTEL_RESOURCE_ATTRIBUTES": ["A"],
410
+ "OTEL_SDK_DISABLED": ["A"],
411
+ "OTEL_SERVICE_NAME": ["A"],
412
+ "OTEL_TRACES_EXPORTER": ["A"],
413
+ "OTEL_TRACES_SAMPLER_ARG": ["A"],
414
+ "OTEL_TRACES_SAMPLER": ["A"]
415
+ },
416
+ "aliases": {
417
+ "DD_AGENT_HOST": ["DD_TRACE_AGENT_HOSTNAME"],
418
+ "DD_API_KEY": ["DATADOG_API_KEY"],
419
+ "DD_API_SECURITY_ENABLED": ["DD_EXPERIMENTAL_API_SECURITY_ENABLED"],
420
+ "DD_APPSEC_AUTO_USER_INSTRUMENTATION_MODE": ["DD_APPSEC_AUTOMATED_USER_EVENTS_TRACKING"],
421
+ "DD_DOGSTATSD_HOST": ["DD_DOGSTATSD_HOSTNAME"],
422
+ "DD_INSTRUMENTATION_TELEMETRY_ENABLED": ["DD_TRACE_TELEMETRY_ENABLED"],
423
+ "DD_PROFILING_CODEHOTSPOTS_ENABLED": ["DD_PROFILING_EXPERIMENTAL_CODEHOTSPOTS_ENABLED"],
424
+ "DD_PROFILING_CPU_ENABLED": ["DD_PROFILING_EXPERIMENTAL_CPU_ENABLED"],
425
+ "DD_PROFILING_ENABLED": ["DD_EXPERIMENTAL_PROFILING_ENABLED"],
426
+ "DD_PROFILING_ENDPOINT_COLLECTION_ENABLED": ["DD_PROFILING_EXPERIMENTAL_ENDPOINT_COLLECTION_ENABLED"],
427
+ "DD_PROFILING_TIMELINE_ENABLED": ["DD_PROFILING_EXPERIMENTAL_TIMELINE_ENABLED"],
428
+ "DD_REMOTE_CONFIGURATION_ENABLED": ["DD_REMOTE_CONFIG_ENABLED" ],
429
+ "DD_SERVICE": ["DD_SERVICE_NAME"],
430
+ "DD_TRACE_AGENT_URL": ["DD_TRACE_URL"]
431
+ },
432
+ "deprecations": {
433
+ "DD_PROFILING_EXPERIMENTAL_ENDPOINT_COLLECTION_ENABLED": "DD_PROFILING_ENDPOINT_COLLECTION_ENABLED",
434
+ "DD_PROFILING_EXPERIMENTAL_CPU_ENABLED": "DD_PROFILING_CPU_ENABLED",
435
+ "DD_EXPERIMENTAL_PROFILING_ENABLED": "DD_PROFILING_ENABLED",
436
+ "DD_PROFILING_EXPERIMENTAL_CODEHOTSPOTS_ENABLED": "DD_PROFILING_CODEHOTSPOTS_ENABLED",
437
+ "DD_PROFILING_EXPERIMENTAL_TIMELINE_ENABLED": "DD_PROFILING_TIMELINE_ENABLED"
438
+ }
439
+ }
@@ -8,6 +8,7 @@ const dc = require('dc-polyfill')
8
8
  const { fileURLToPath } = require('url')
9
9
  const { isTrue } = require('../../src/util')
10
10
 
11
+ /** @type {Set<string>} */
11
12
  const savedDependenciesToSend = new Set()
12
13
  const detectedDependencyKeys = new Set()
13
14
  const detectedDependencyVersions = new Set()
@@ -15,63 +16,66 @@ const detectedDependencyVersions = new Set()
15
16
  const FILE_URI_START = 'file://'
16
17
  const moduleLoadStartChannel = dc.channel('dd-trace:moduleLoadStart')
17
18
 
18
- let immediate, config, application, host, initialLoad
19
+ let config, application, host, initialLoad
19
20
  let isFirstModule = true
20
21
  let getRetryData
21
22
  let updateRetryData
22
23
 
23
- function createBatchPayload (payload) {
24
- const batchPayload = payload.map(item => {
25
- return {
26
- request_type: item.reqType,
27
- payload: item.payload
28
- }
29
- })
30
-
31
- return batchPayload
32
- }
33
24
  function waitAndSend (config, application, host) {
34
- if (!immediate) {
35
- immediate = setImmediate(() => {
36
- immediate = null
37
- if (savedDependenciesToSend.size > 0) {
38
- const dependencies = [...savedDependenciesToSend.values()]
39
- // if a dependency is from the initial load, *always* send the event
40
- // Otherwise, only send if dependencyCollection is enabled
41
- .filter(dep => {
42
- const initialLoadModule = isTrue(dep.split(' ')[2])
43
- const sendModule = initialLoadModule || (config.telemetry?.dependencyCollection)
44
-
45
- if (!sendModule) savedDependenciesToSend.delete(dep) // we'll never send it
46
- return sendModule
47
- })
48
- .splice(0, 2000) // v2 documentation specifies up to 2000 dependencies can be sent at once
49
- .map(pair => {
50
- savedDependenciesToSend.delete(pair)
51
- const [name, version] = pair.split(' ')
52
- return { name, version }
53
- })
54
- let currPayload
55
- const retryData = getRetryData()
56
- if (retryData) {
57
- currPayload = { reqType: 'app-dependencies-loaded', payload: { dependencies } }
58
- } else {
59
- if (!dependencies.length) return // no retry data and no dependencies, nothing to send
60
- currPayload = { dependencies }
25
+ setImmediate(() => {
26
+ if (savedDependenciesToSend.size === 0) {
27
+ return
28
+ }
29
+ const dependencies = []
30
+ let send = 0
31
+ for (const dependency of savedDependenciesToSend) {
32
+ const [name, version, initialLoadModule] = dependency.split(' ')
33
+ // If a dependency is from the initial load, *always* send the event
34
+ // Otherwise, only send if dependencyCollection is enabled
35
+ const sendModule = isTrue(initialLoadModule) || config.telemetry?.dependencyCollection
36
+
37
+ savedDependenciesToSend.delete(dependency)
38
+
39
+ if (sendModule) {
40
+ dependencies.push({ name, version })
41
+ send++
42
+ if (send === 2000) {
43
+ // v2 documentation specifies up to 2000 dependencies can be sent at once
44
+ break
61
45
  }
46
+ }
47
+ }
62
48
 
63
- const payload = retryData ? createBatchPayload([currPayload, retryData]) : currPayload
64
- const reqType = retryData ? 'message-batch' : 'app-dependencies-loaded'
49
+ /**
50
+ * @type { { dependencies: typeof dependencies } | {
51
+ * request_type: string,
52
+ * payload: typeof dependencies
53
+ * }[]}
54
+ */
55
+ let payload = { dependencies }
56
+ let reqType = 'app-dependencies-loaded'
57
+ const retryData = getRetryData()
58
+
59
+ if (retryData) {
60
+ payload = [{
61
+ request_type: 'app-dependencies-loaded',
62
+ payload
63
+ }, {
64
+ request_type: retryData.reqType,
65
+ payload: retryData.payload
66
+ }]
67
+ reqType = 'message-batch'
68
+ } else if (!dependencies.length) {
69
+ // No retry data and no dependencies, nothing to send
70
+ return
71
+ }
65
72
 
66
- sendData(config, application, host, reqType, payload, updateRetryData)
73
+ sendData(config, application, host, reqType, payload, updateRetryData)
67
74
 
68
- if (savedDependenciesToSend.size > 0) {
69
- waitAndSend(config, application, host)
70
- }
71
- }
72
- })
73
- immediate.unref()
74
- }
75
+ if (savedDependenciesToSend.size > 0) {
76
+ waitAndSend(config, application, host)
77
+ }
78
+ }).unref()
75
79
  }
76
80
 
77
81
  function loadAllTheLoadedModules () {
@@ -91,7 +95,7 @@ function onModuleLoad (data) {
91
95
 
92
96
  if (data) {
93
97
  let filename = data.filename
94
- if (filename && filename.startsWith(FILE_URI_START)) {
98
+ if (filename?.startsWith(FILE_URI_START)) {
95
99
  try {
96
100
  filename = fileURLToPath(filename)
97
101
  } catch {
@@ -99,10 +103,10 @@ function onModuleLoad (data) {
99
103
  }
100
104
  }
101
105
  const parseResult = filename && parse(filename)
102
- const request = data.request || (parseResult && parseResult.name)
103
- const dependencyKey = parseResult && parseResult.basedir ? parseResult.basedir : request
106
+ const request = data.request || parseResult?.name
107
+ const dependencyKey = parseResult?.basedir ?? request
104
108
 
105
- if (filename && request && isDependency(filename, request) && !detectedDependencyKeys.has(dependencyKey)) {
109
+ if (filename && request && isDependency(request) && !detectedDependencyKeys.has(dependencyKey)) {
106
110
  detectedDependencyKeys.add(dependencyKey)
107
111
 
108
112
  if (parseResult) {
@@ -135,20 +139,21 @@ function start (_config = {}, _application, _host, getRetryDataFunction, updateR
135
139
  updateRetryData = updateRetryDatafunction
136
140
  moduleLoadStartChannel.subscribe(onModuleLoad)
137
141
 
138
- // try and capture intially loaded modules in the first tick
142
+ // Try and capture initially loaded modules in the first tick
139
143
  // since, ideally, the tracer (and this module) should be loaded first,
140
144
  // this should capture any first-tick dependencies
141
145
  queueMicrotask(() => { initialLoad = false })
142
146
  }
143
147
 
144
- function isDependency (filename, request) {
145
- const isDependencyWithSlash = isDependencyWithSeparator(filename, request, '/')
148
+ function isDependency (request) {
149
+ const isDependencyWithSlash = isDependencyWithSeparator(request, '/')
146
150
  if (isDependencyWithSlash && process.platform === 'win32') {
147
- return isDependencyWithSeparator(filename, request, path.sep)
151
+ return isDependencyWithSeparator(request, path.sep)
148
152
  }
149
153
  return isDependencyWithSlash
150
154
  }
151
- function isDependencyWithSeparator (filename, request, sep) {
155
+
156
+ function isDependencyWithSeparator (request, sep) {
152
157
  return request.indexOf(`..${sep}`) !== 0 &&
153
158
  request.indexOf(`.${sep}`) !== 0 &&
154
159
  request.indexOf(sep) !== 0 &&
@@ -1,6 +1,7 @@
1
1
  const request = require('../exporters/common/request')
2
2
  const log = require('../log')
3
3
  const { isTrue } = require('../util')
4
+ const { getEnvironmentVariable } = require('../config-helper')
4
5
 
5
6
  let agentTelemetry = true
6
7
 
@@ -36,10 +37,9 @@ function getPayload (payload) {
36
37
  // 'logs' request type payload is meant to send library logs to Datadog’s backend.
37
38
  if (Array.isArray(payload)) {
38
39
  return payload
39
- } else {
40
- const { logger, tags, serviceMapping, ...trimmedPayload } = payload
41
- return trimmedPayload
42
40
  }
41
+ const { logger, tags, serviceMapping, ...trimmedPayload } = payload
42
+ return trimmedPayload
43
43
  }
44
44
 
45
45
  function sendData (config, application, host, reqType, payload = {}, cb = () => {}) {
@@ -51,7 +51,8 @@ function sendData (config, application, host, reqType, payload = {}, cb = () =>
51
51
 
52
52
  let url = config.url
53
53
 
54
- const isCiVisibilityAgentlessMode = isCiVisibility && isTrue(process.env.DD_CIVISIBILITY_AGENTLESS_ENABLED)
54
+ const isCiVisibilityAgentlessMode = isCiVisibility &&
55
+ isTrue(getEnvironmentVariable('DD_CIVISIBILITY_AGENTLESS_ENABLED'))
55
56
 
56
57
  if (isCiVisibilityAgentlessMode) {
57
58
  try {
@@ -85,14 +86,14 @@ function sendData (config, application, host, reqType, payload = {}, cb = () =>
85
86
  })
86
87
 
87
88
  request(data, options, (error) => {
88
- if (error && process.env.DD_API_KEY && config.site) {
89
+ if (error && getEnvironmentVariable('DD_API_KEY') && config.site) {
89
90
  if (agentTelemetry) {
90
91
  log.warn('Agent telemetry failed, started agentless telemetry')
91
92
  agentTelemetry = false
92
93
  }
93
94
  // figure out which data center to send to
94
95
  const backendUrl = getAgentlessTelemetryEndpoint(config.site)
95
- const backendHeader = { ...options.headers, 'DD-API-KEY': process.env.DD_API_KEY }
96
+ const backendHeader = { ...options.headers, 'DD-API-KEY': getEnvironmentVariable('DD_API_KEY') }
96
97
  const backendOptions = {
97
98
  ...options,
98
99
  url: backendUrl,