dd-trace 5.93.0 → 5.95.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 (59) hide show
  1. package/LICENSE-3rdparty.csv +46 -44
  2. package/index.d.ts +182 -13
  3. package/package.json +14 -10
  4. package/packages/datadog-instrumentations/src/anthropic.js +1 -1
  5. package/packages/datadog-instrumentations/src/helpers/bundler-register.js +23 -0
  6. package/packages/datadog-instrumentations/src/helpers/rewriter/{orchestrion/compiler.js → compiler.js} +4 -13
  7. package/packages/datadog-instrumentations/src/helpers/rewriter/index.js +16 -2
  8. package/packages/datadog-instrumentations/src/helpers/rewriter/instrumentations/langgraph.js +2 -2
  9. package/packages/datadog-instrumentations/src/helpers/rewriter/{orchestrion/transforms.js → transforms.js} +3 -89
  10. package/packages/datadog-instrumentations/src/jest.js +118 -32
  11. package/packages/datadog-instrumentations/src/mocha/main.js +6 -0
  12. package/packages/datadog-instrumentations/src/mocha/utils.js +89 -5
  13. package/packages/datadog-instrumentations/src/playwright.js +10 -0
  14. package/packages/datadog-instrumentations/src/vitest.js +119 -0
  15. package/packages/datadog-plugin-cypress/src/cypress-plugin.js +12 -0
  16. package/packages/datadog-plugin-dd-trace-api/src/index.js +1 -4
  17. package/packages/datadog-plugin-jest/src/index.js +6 -0
  18. package/packages/datadog-plugin-mocha/src/index.js +11 -0
  19. package/packages/datadog-plugin-playwright/src/index.js +9 -0
  20. package/packages/datadog-plugin-vitest/src/index.js +9 -0
  21. package/packages/datadog-webpack/index.js +187 -0
  22. package/packages/datadog-webpack/src/loader.js +27 -0
  23. package/packages/datadog-webpack/src/log.js +32 -0
  24. package/packages/dd-trace/src/azure_metadata.js +15 -15
  25. package/packages/dd-trace/src/ci-visibility/early-flake-detection/get-known-tests.js +176 -33
  26. package/packages/dd-trace/src/ci-visibility/exporters/test-worker/writer.js +10 -21
  27. package/packages/dd-trace/src/ci-visibility/intelligent-test-runner/get-skippable-suites.js +76 -1
  28. package/packages/dd-trace/src/ci-visibility/requests/fs-cache.js +259 -0
  29. package/packages/dd-trace/src/ci-visibility/test-management/get-test-management-tests.js +56 -0
  30. package/packages/dd-trace/src/config/config-base.d.ts +7 -0
  31. package/packages/dd-trace/src/config/config-base.js +5 -0
  32. package/packages/dd-trace/src/config/config-types.d.ts +78 -0
  33. package/packages/dd-trace/src/config/generated-config-types.d.ts +582 -0
  34. package/packages/dd-trace/src/config/supported-configurations.json +7 -0
  35. package/packages/dd-trace/src/llmobs/constants/tags.js +1 -0
  36. package/packages/dd-trace/src/llmobs/constants/text.js +1 -1
  37. package/packages/dd-trace/src/llmobs/constants/writers.js +1 -1
  38. package/packages/dd-trace/src/llmobs/plugins/anthropic.js +11 -2
  39. package/packages/dd-trace/src/llmobs/plugins/openai/index.js +4 -1
  40. package/packages/dd-trace/src/llmobs/writers/spans.js +1 -1
  41. package/packages/dd-trace/src/opentracing/span.js +5 -0
  42. package/packages/dd-trace/src/plugin_manager.js +10 -7
  43. package/packages/dd-trace/src/plugins/util/test.js +76 -0
  44. package/packages/dd-trace/src/priority_sampler.js +1 -1
  45. package/packages/dd-trace/src/profiling/profilers/wall.js +35 -28
  46. package/packages/dd-trace/src/rate_limiter.js +2 -1
  47. package/packages/dd-trace/src/tagger.js +31 -35
  48. package/vendor/dist/@apm-js-collab/code-transformer/LICENSE +28 -0
  49. package/vendor/dist/@apm-js-collab/code-transformer/index.js +133 -0
  50. package/vendor/dist/@opentelemetry/core/index.js +1 -1
  51. package/vendor/dist/@opentelemetry/resources/index.js +1 -1
  52. package/vendor/dist/esquery/index.js +1 -1
  53. package/vendor/dist/meriyah/index.js +1 -1
  54. package/webpack.js +3 -0
  55. package/packages/datadog-instrumentations/src/helpers/rewriter/orchestrion/index.js +0 -43
  56. package/packages/datadog-instrumentations/src/helpers/rewriter/orchestrion/matcher.js +0 -49
  57. package/packages/datadog-instrumentations/src/helpers/rewriter/orchestrion/transformer.js +0 -121
  58. package/vendor/dist/astring/LICENSE +0 -19
  59. package/vendor/dist/astring/index.js +0 -1
@@ -0,0 +1,582 @@
1
+ // This file is generated from packages/dd-trace/src/config/supported-configurations.json
2
+ // by scripts/generate-config-types.js. Do not edit this file directly.
3
+
4
+ export interface GeneratedConfig {
5
+ _DD_APM_TRACING_AGENTLESS_ENABLED: boolean;
6
+ apiKey: string | undefined;
7
+ apmTracingEnabled: boolean;
8
+ appKey: string | undefined;
9
+ appsec: {
10
+ apiSecurity: {
11
+ downstreamBodyAnalysisSampleRate: number;
12
+ enabled: boolean;
13
+ endpointCollectionEnabled: boolean;
14
+ endpointCollectionMessageLimit: number;
15
+ maxDownstreamRequestBodyAnalysis: number;
16
+ sampleDelay: number;
17
+ };
18
+ blockedTemplateGraphql: string | undefined;
19
+ blockedTemplateHtml: string | undefined;
20
+ blockedTemplateJson: string | undefined;
21
+ enabled: boolean | undefined;
22
+ eventTracking: {
23
+ mode: string;
24
+ };
25
+ extendedHeadersCollection: {
26
+ enabled: boolean;
27
+ maxHeaders: number;
28
+ redaction: boolean;
29
+ };
30
+ obfuscatorKeyRegex: string;
31
+ obfuscatorValueRegex: string;
32
+ rasp: {
33
+ bodyCollection: boolean;
34
+ enabled: boolean;
35
+ };
36
+ rateLimit: number;
37
+ rules: string | undefined;
38
+ sca: {
39
+ enabled: boolean | undefined;
40
+ };
41
+ stackTrace: {
42
+ enabled: boolean;
43
+ maxDepth: number;
44
+ maxStackTraces: number;
45
+ };
46
+ wafTimeout: number;
47
+ };
48
+ baggageMaxBytes: number;
49
+ baggageMaxItems: number;
50
+ baggageTagKeys: string[];
51
+ ciVisAgentlessLogSubmissionEnabled: boolean;
52
+ ciVisibilityTestSessionName: string | undefined;
53
+ clientIpEnabled: boolean;
54
+ clientIpHeader: string | undefined;
55
+ cloudPayloadTagging: {
56
+ maxDepth: number;
57
+ request: string[] | undefined;
58
+ response: string[] | undefined;
59
+ };
60
+ codeOriginForSpans: {
61
+ enabled: boolean;
62
+ experimental: {
63
+ exit_spans: {
64
+ enabled: boolean;
65
+ };
66
+ };
67
+ };
68
+ crashtracking: {
69
+ enabled: boolean;
70
+ };
71
+ dbm: {
72
+ injectSqlBaseHash: boolean;
73
+ };
74
+ dbmPropagationMode: string;
75
+ DD_ACTION_EXECUTION_ID: string | undefined;
76
+ DD_AGENTLESS_LOG_SUBMISSION_URL: string | undefined;
77
+ DD_APM_FLUSH_DEADLINE_MILLISECONDS: number;
78
+ DD_AZURE_RESOURCE_GROUP: string | undefined;
79
+ DD_CIVISIBILITY_AGENTLESS_ENABLED: boolean;
80
+ DD_CIVISIBILITY_AGENTLESS_URL: string | undefined;
81
+ DD_CIVISIBILITY_AUTO_INSTRUMENTATION_PROVIDER: boolean;
82
+ DD_CIVISIBILITY_DANGEROUSLY_FORCE_COVERAGE: boolean;
83
+ DD_CIVISIBILITY_DANGEROUSLY_FORCE_TEST_SKIPPING: boolean;
84
+ DD_CIVISIBILITY_ENABLED: boolean;
85
+ DD_CIVISIBILITY_GIT_UNSHALLOW_ENABLED: boolean;
86
+ DD_CIVISIBILITY_RUM_FLUSH_WAIT_MILLIS: number;
87
+ DD_CIVISIBILITY_TEST_COMMAND: string | undefined;
88
+ DD_CIVISIBILITY_TEST_MODULE_ID: string | undefined;
89
+ DD_CIVISIBILITY_TEST_SESSION_ID: string | undefined;
90
+ DD_CUSTOM_TRACE_ID: string | undefined;
91
+ DD_ENABLE_NX_SERVICE_NAME: boolean;
92
+ DD_EXPERIMENTAL_TEST_OPT_GIT_CACHE_DIR: string;
93
+ DD_EXPERIMENTAL_TEST_OPT_GIT_CACHE_ENABLED: boolean;
94
+ DD_EXPERIMENTAL_TEST_OPT_SETTINGS_CACHE: string;
95
+ DD_EXTERNAL_ENV: string | undefined;
96
+ DD_GIT_BRANCH: string | undefined;
97
+ DD_GIT_COMMIT_AUTHOR_DATE: string | undefined;
98
+ DD_GIT_COMMIT_AUTHOR_EMAIL: string | undefined;
99
+ DD_GIT_COMMIT_AUTHOR_NAME: string | undefined;
100
+ DD_GIT_COMMIT_COMMITTER_DATE: string | undefined;
101
+ DD_GIT_COMMIT_COMMITTER_EMAIL: string | undefined;
102
+ DD_GIT_COMMIT_COMMITTER_NAME: string | undefined;
103
+ DD_GIT_COMMIT_HEAD_SHA: string | undefined;
104
+ DD_GIT_COMMIT_MESSAGE: string | undefined;
105
+ DD_GIT_COMMIT_SHA: string | undefined;
106
+ DD_GIT_FOLDER_PATH: string | undefined;
107
+ DD_GIT_PROPERTIES_FILE: string | undefined;
108
+ DD_GIT_PULL_REQUEST_BASE_BRANCH: string | undefined;
109
+ DD_GIT_PULL_REQUEST_BASE_BRANCH_SHA: string | undefined;
110
+ DD_GIT_REPOSITORY_URL: string | undefined;
111
+ DD_GIT_TAG: string | undefined;
112
+ DD_INTERNAL_PROFILING_TIMELINE_SAMPLING_ENABLED: boolean;
113
+ DD_LAMBDA_HANDLER: string | undefined;
114
+ DD_MINI_AGENT_PATH: string | undefined;
115
+ DD_PIPELINE_EXECUTION_ID: string | undefined;
116
+ DD_PLAYWRIGHT_WORKER: string | undefined;
117
+ DD_PROFILING_ASYNC_CONTEXT_FRAME_ENABLED: boolean;
118
+ DD_PROFILING_CODEHOTSPOTS_ENABLED: boolean;
119
+ DD_PROFILING_CPU_ENABLED: boolean;
120
+ DD_PROFILING_DEBUG_SOURCE_MAPS: boolean;
121
+ DD_PROFILING_DEBUG_UPLOAD_COMPRESSION: string;
122
+ DD_PROFILING_ENDPOINT_COLLECTION_ENABLED: boolean;
123
+ DD_PROFILING_EXPERIMENTAL_CODEHOTSPOTS_ENABLED: boolean;
124
+ DD_PROFILING_EXPERIMENTAL_CPU_ENABLED: boolean;
125
+ DD_PROFILING_EXPERIMENTAL_ENDPOINT_COLLECTION_ENABLED: boolean;
126
+ DD_PROFILING_EXPERIMENTAL_OOM_EXPORT_STRATEGIES: string[];
127
+ DD_PROFILING_EXPERIMENTAL_OOM_HEAP_LIMIT_EXTENSION_SIZE: number;
128
+ DD_PROFILING_EXPERIMENTAL_OOM_MAX_HEAP_EXTENSION_COUNT: number;
129
+ DD_PROFILING_EXPERIMENTAL_OOM_MONITORING_ENABLED: boolean;
130
+ DD_PROFILING_EXPERIMENTAL_TIMELINE_ENABLED: boolean;
131
+ DD_PROFILING_EXPORTERS: string[];
132
+ DD_PROFILING_HEAP_ENABLED: boolean | undefined;
133
+ DD_PROFILING_HEAP_SAMPLING_INTERVAL: number;
134
+ DD_PROFILING_PPROF_PREFIX: string;
135
+ DD_PROFILING_PROFILERS: string[];
136
+ DD_PROFILING_SOURCE_MAP: boolean;
137
+ DD_PROFILING_TIMELINE_ENABLED: boolean;
138
+ DD_PROFILING_UPLOAD_PERIOD: number;
139
+ DD_PROFILING_UPLOAD_TIMEOUT: number;
140
+ DD_PROFILING_V8_PROFILER_BUG_WORKAROUND: boolean;
141
+ DD_PROFILING_WALLTIME_ENABLED: boolean | undefined;
142
+ DD_ROOT_JS_SESSION_ID: string | undefined;
143
+ DD_RUNTIME_METRICS_FLUSH_INTERVAL: number;
144
+ DD_SPAN_SAMPLING_RULES_FILE: string | undefined;
145
+ DD_TELEMETRY_FORWARDER_PATH: string | undefined;
146
+ DD_TEST_FLEET_CONFIG_PATH: string | undefined;
147
+ DD_TEST_LOCAL_CONFIG_PATH: string | undefined;
148
+ DD_TRACE_AEROSPIKE_ENABLED: boolean;
149
+ DD_TRACE_AI_ENABLED: boolean;
150
+ DD_TRACE_AMQP10_ENABLED: boolean;
151
+ DD_TRACE_AMQPLIB_ENABLED: boolean;
152
+ DD_TRACE_ANTHROPIC_ENABLED: boolean;
153
+ DD_TRACE_APOLLO_ENABLED: boolean;
154
+ DD_TRACE_APOLLO_GATEWAY_ENABLED: boolean;
155
+ DD_TRACE_APOLLO_SERVER_CORE_ENABLED: boolean;
156
+ DD_TRACE_APOLLO_SERVER_ENABLED: boolean;
157
+ DD_TRACE_APOLLO_SERVER_EXPRESS_ENABLED: boolean;
158
+ DD_TRACE_APOLLO_SERVER_FASTIFY_ENABLED: boolean;
159
+ DD_TRACE_APOLLO_SUBGRAPH_ENABLED: boolean;
160
+ DD_TRACE_AVSC_ENABLED: boolean;
161
+ DD_TRACE_AWS_SDK_AWS_BATCH_PROPAGATION_ENABLED: boolean;
162
+ DD_TRACE_AWS_SDK_AWS_ENABLED: boolean;
163
+ DD_TRACE_AWS_SDK_BATCH_PROPAGATION_ENABLED: boolean;
164
+ DD_TRACE_AWS_SDK_BEDROCKRUNTIME_BATCH_PROPAGATION_ENABLED: boolean;
165
+ DD_TRACE_AWS_SDK_BEDROCKRUNTIME_ENABLED: boolean;
166
+ DD_TRACE_AWS_SDK_CLOUDWATCHLOGS_BATCH_PROPAGATION_ENABLED: boolean;
167
+ DD_TRACE_AWS_SDK_CLOUDWATCHLOGS_ENABLED: boolean;
168
+ DD_TRACE_AWS_SDK_DYNAMODB_BATCH_PROPAGATION_ENABLED: boolean;
169
+ DD_TRACE_AWS_SDK_DYNAMODB_ENABLED: boolean;
170
+ DD_TRACE_AWS_SDK_ENABLED: boolean;
171
+ DD_TRACE_AWS_SDK_EVENTBRIDGE_BATCH_PROPAGATION_ENABLED: boolean;
172
+ DD_TRACE_AWS_SDK_EVENTBRIDGE_ENABLED: boolean;
173
+ DD_TRACE_AWS_SDK_KINESIS_BATCH_PROPAGATION_ENABLED: boolean;
174
+ DD_TRACE_AWS_SDK_KINESIS_ENABLED: boolean;
175
+ DD_TRACE_AWS_SDK_LAMBDA_BATCH_PROPAGATION_ENABLED: boolean;
176
+ DD_TRACE_AWS_SDK_LAMBDA_ENABLED: boolean;
177
+ DD_TRACE_AWS_SDK_NODE_HTTP_HANDLER_ENABLED: boolean;
178
+ DD_TRACE_AWS_SDK_REDSHIFT_BATCH_PROPAGATION_ENABLED: boolean;
179
+ DD_TRACE_AWS_SDK_REDSHIFT_ENABLED: boolean;
180
+ DD_TRACE_AWS_SDK_S3_BATCH_PROPAGATION_ENABLED: boolean;
181
+ DD_TRACE_AWS_SDK_S3_ENABLED: boolean;
182
+ DD_TRACE_AWS_SDK_SFN_BATCH_PROPAGATION_ENABLED: boolean;
183
+ DD_TRACE_AWS_SDK_SFN_CLIENT_ENABLED: boolean;
184
+ DD_TRACE_AWS_SDK_SFN_ENABLED: boolean;
185
+ DD_TRACE_AWS_SDK_SMITHY_CLIENT_ENABLED: boolean;
186
+ DD_TRACE_AWS_SDK_SNS_BATCH_PROPAGATION_ENABLED: boolean;
187
+ DD_TRACE_AWS_SDK_SNS_ENABLED: boolean;
188
+ DD_TRACE_AWS_SDK_SQS_BATCH_PROPAGATION_ENABLED: boolean;
189
+ DD_TRACE_AWS_SDK_SQS_ENABLED: boolean;
190
+ DD_TRACE_AWS_SDK_STATES_BATCH_PROPAGATION_ENABLED: boolean;
191
+ DD_TRACE_AWS_SDK_STATES_ENABLED: boolean;
192
+ DD_TRACE_AWS_SDK_STEPFUNCTIONS_BATCH_PROPAGATION_ENABLED: boolean;
193
+ DD_TRACE_AWS_SDK_STEPFUNCTIONS_ENABLED: boolean;
194
+ DD_TRACE_AXIOS_ENABLED: boolean;
195
+ DD_TRACE_AZURE_DURABLE_FUNCTIONS_ENABLED: boolean;
196
+ DD_TRACE_AZURE_EVENT_HUBS_ENABLED: boolean;
197
+ DD_TRACE_AZURE_EVENTHUBS_BATCH_LINKS_ENABLED: boolean;
198
+ DD_TRACE_AZURE_FUNCTIONS_ENABLED: boolean;
199
+ DD_TRACE_AZURE_SERVICE_BUS_ENABLED: boolean;
200
+ DD_TRACE_AZURE_SERVICEBUS_BATCH_LINKS_ENABLED: boolean;
201
+ DD_TRACE_BEAUTIFUL_LOGS: boolean;
202
+ DD_TRACE_BLUEBIRD_ENABLED: boolean;
203
+ DD_TRACE_BODY_PARSER_ENABLED: boolean;
204
+ DD_TRACE_BSON_ENABLED: boolean;
205
+ DD_TRACE_BULLMQ_ENABLED: boolean;
206
+ DD_TRACE_BUNYAN_ENABLED: boolean;
207
+ DD_TRACE_CASSANDRA_DRIVER_ENABLED: boolean;
208
+ DD_TRACE_CHILD_PROCESS_ENABLED: boolean;
209
+ DD_TRACE_COLLECTIONS_ENABLED: boolean;
210
+ DD_TRACE_COMMONPLUGIN_ENABLED: boolean;
211
+ DD_TRACE_CONFLUENTINC_KAFKA_JAVASCRIPT_ENABLED: boolean;
212
+ DD_TRACE_CONNECT_ENABLED: boolean;
213
+ DD_TRACE_COOKIE_ENABLED: boolean;
214
+ DD_TRACE_COOKIE_PARSER_ENABLED: boolean;
215
+ DD_TRACE_COUCHBASE_ENABLED: boolean;
216
+ DD_TRACE_CRYPTO_ENABLED: boolean;
217
+ DD_TRACE_CUCUMBER_CUCUMBER_ENABLED: boolean;
218
+ DD_TRACE_CUCUMBER_ENABLED: boolean;
219
+ DD_TRACE_CYPRESS_ENABLED: boolean;
220
+ DD_TRACE_DEBUG: boolean;
221
+ DD_TRACE_DISABLED_INSTRUMENTATIONS: string;
222
+ DD_TRACE_DISABLED_PLUGINS: string | undefined;
223
+ DD_TRACE_DNS_ENABLED: boolean;
224
+ DD_TRACE_ELASTIC_ELASTICSEARCH_ENABLED: boolean;
225
+ DD_TRACE_ELASTIC_TRANSPORT_ENABLED: boolean;
226
+ DD_TRACE_ELASTICSEARCH_ENABLED: boolean;
227
+ DD_TRACE_ENCODING_DEBUG: boolean;
228
+ DD_TRACE_EXPERIMENTAL_RUNTIME_ID_ENABLED: boolean;
229
+ DD_TRACE_EXPERIMENTAL_SPAN_COUNTS: boolean;
230
+ DD_TRACE_EXPERIMENTAL_STATE_TRACKING: boolean;
231
+ DD_TRACE_EXPRESS_ENABLED: boolean;
232
+ DD_TRACE_EXPRESS_MONGO_SANITIZE_ENABLED: boolean;
233
+ DD_TRACE_EXPRESS_SESSION_ENABLED: boolean;
234
+ DD_TRACE_FASTIFY_ENABLED: boolean;
235
+ DD_TRACE_FETCH_ENABLED: boolean;
236
+ DD_TRACE_FIND_MY_WAY_ENABLED: boolean;
237
+ DD_TRACE_FS_ENABLED: boolean;
238
+ DD_TRACE_GCP_PUBSUB_PUSH_ENABLED: boolean;
239
+ DD_TRACE_GENERIC_POOL_ENABLED: boolean;
240
+ DD_TRACE_GOOGLE_CLOUD_PUBSUB_ENABLED: boolean;
241
+ DD_TRACE_GOOGLE_CLOUD_VERTEXAI_ENABLED: boolean;
242
+ DD_TRACE_GOOGLE_GAX_ENABLED: boolean;
243
+ DD_TRACE_GOOGLE_GENAI_ENABLED: boolean;
244
+ DD_TRACE_GRAPHQL_ENABLED: boolean;
245
+ DD_TRACE_GRAPHQL_TAG_ENABLED: boolean;
246
+ DD_TRACE_GRAPHQL_TOOLS_ENABLED: boolean;
247
+ DD_TRACE_GRAPHQL_TOOLS_EXECUTOR_ENABLED: boolean;
248
+ DD_TRACE_GRAPHQL_YOGA_ENABLED: boolean;
249
+ DD_TRACE_GRPC_ENABLED: boolean;
250
+ DD_TRACE_GRPC_GRPC_JS_ENABLED: boolean;
251
+ DD_TRACE_GRPC_PROTO_LOADER_ENABLED: boolean;
252
+ DD_TRACE_HANDLEBARS_ENABLED: boolean;
253
+ DD_TRACE_HAPI_BOOM_ENABLED: boolean;
254
+ DD_TRACE_HAPI_ENABLED: boolean;
255
+ DD_TRACE_HAPI_HAPI_ENABLED: boolean;
256
+ DD_TRACE_HONO_ENABLED: boolean;
257
+ DD_TRACE_HTTP_ENABLED: boolean;
258
+ DD_TRACE_HTTP2_ENABLED: boolean;
259
+ DD_TRACE_HTTPS_ENABLED: boolean;
260
+ DD_TRACE_IOREDIS_ENABLED: boolean;
261
+ DD_TRACE_IOVALKEY_ENABLED: boolean;
262
+ DD_TRACE_JEST_CIRCUS_ENABLED: boolean;
263
+ DD_TRACE_JEST_CONFIG_ENABLED: boolean;
264
+ DD_TRACE_JEST_CORE_ENABLED: boolean;
265
+ DD_TRACE_JEST_ENABLED: boolean;
266
+ DD_TRACE_JEST_ENVIRONMENT_JSDOM_ENABLED: boolean;
267
+ DD_TRACE_JEST_ENVIRONMENT_NODE_ENABLED: boolean;
268
+ DD_TRACE_JEST_GLOBALS_ENABLED: boolean;
269
+ DD_TRACE_JEST_REPORTERS_ENABLED: boolean;
270
+ DD_TRACE_JEST_RUNTIME_ENABLED: boolean;
271
+ DD_TRACE_JEST_TEST_SEQUENCER_ENABLED: boolean;
272
+ DD_TRACE_JEST_TRANSFORM_ENABLED: boolean;
273
+ DD_TRACE_JEST_WORKER_ENABLED: boolean;
274
+ DD_TRACE_KAFKAJS_ENABLED: boolean;
275
+ DD_TRACE_KNEX_ENABLED: boolean;
276
+ DD_TRACE_KOA_ENABLED: boolean;
277
+ DD_TRACE_KOA_ROUTE_ENABLED: boolean;
278
+ DD_TRACE_KOA_ROUTER_ENABLED: boolean;
279
+ DD_TRACE_KOA_WEBSOCKET_ENABLED: boolean;
280
+ DD_TRACE_LANGCHAIN_ANTHROPIC_ENABLED: boolean;
281
+ DD_TRACE_LANGCHAIN_COHERE_ENABLED: boolean;
282
+ DD_TRACE_LANGCHAIN_CORE_ENABLED: boolean;
283
+ DD_TRACE_LANGCHAIN_ENABLED: boolean;
284
+ DD_TRACE_LANGCHAIN_GOOGLE_GENAI_ENABLED: boolean;
285
+ DD_TRACE_LANGCHAIN_OPENAI_ENABLED: boolean;
286
+ DD_TRACE_LANGGRAPH_ENABLED: boolean;
287
+ DD_TRACE_LDAPJS_ENABLED: boolean;
288
+ DD_TRACE_LDAPJS_PROMISE_ENABLED: boolean;
289
+ DD_TRACE_LIMITD_CLIENT_ENABLED: boolean;
290
+ DD_TRACE_LODASH_ENABLED: boolean;
291
+ DD_TRACE_LOOPBACK_ENABLED: boolean;
292
+ DD_TRACE_MARIADB_ENABLED: boolean;
293
+ DD_TRACE_MEMCACHED_ENABLED: boolean;
294
+ DD_TRACE_MICROGATEWAY_CORE_ENABLED: boolean;
295
+ DD_TRACE_MIDDIE_ENABLED: boolean;
296
+ DD_TRACE_MOCHA_EACH_ENABLED: boolean;
297
+ DD_TRACE_MOCHA_ENABLED: boolean;
298
+ DD_TRACE_MOLECULER_ENABLED: boolean;
299
+ DD_TRACE_MONGODB_CORE_ENABLED: boolean;
300
+ DD_TRACE_MONGODB_ENABLED: boolean;
301
+ DD_TRACE_MONGODB_HEARTBEAT_ENABLED: boolean;
302
+ DD_TRACE_MONGOOSE_ENABLED: boolean;
303
+ DD_TRACE_MQUERY_ENABLED: boolean;
304
+ DD_TRACE_MULTER_ENABLED: boolean;
305
+ DD_TRACE_MYSQL_ENABLED: boolean;
306
+ DD_TRACE_MYSQL2_ENABLED: boolean;
307
+ DD_TRACE_NET_ENABLED: boolean;
308
+ DD_TRACE_NEXT_ENABLED: boolean;
309
+ DD_TRACE_NODE_CHILD_PROCESS_ENABLED: boolean;
310
+ DD_TRACE_NODE_REDIS_CLIENT_ENABLED: boolean;
311
+ DD_TRACE_NODE_SERIALIZE_ENABLED: boolean;
312
+ DD_TRACE_NYC_ENABLED: boolean;
313
+ DD_TRACE_OPENAI_ENABLED: boolean;
314
+ DD_TRACE_OPENSEARCH_ENABLED: boolean;
315
+ DD_TRACE_OPENSEARCH_PROJECT_OPENSEARCH_ENABLED: boolean;
316
+ DD_TRACE_OPENTELEMETRY_SDK_TRACE_NODE_ENABLED: boolean;
317
+ DD_TRACE_ORACLEDB_ENABLED: boolean;
318
+ DD_TRACE_OTEL_ENABLED: boolean;
319
+ DD_TRACE_PASSPORT_ENABLED: boolean;
320
+ DD_TRACE_PASSPORT_HTTP_ENABLED: boolean;
321
+ DD_TRACE_PASSPORT_LOCAL_ENABLED: boolean;
322
+ DD_TRACE_PG_CURSOR_ENABLED: boolean;
323
+ DD_TRACE_PG_ENABLED: boolean;
324
+ DD_TRACE_PG_NATIVE_ENABLED: boolean;
325
+ DD_TRACE_PG_QUERY_STREAM_ENABLED: boolean;
326
+ DD_TRACE_PINO_ENABLED: boolean;
327
+ DD_TRACE_PINO_PRETTY_ENABLED: boolean;
328
+ DD_TRACE_PLAYWRIGHT_CORE_ENABLED: boolean;
329
+ DD_TRACE_PLAYWRIGHT_ENABLED: boolean;
330
+ DD_TRACE_PLAYWRIGHT_TEST_ENABLED: boolean;
331
+ DD_TRACE_PRISMA_ENABLED: boolean;
332
+ DD_TRACE_PROCESS_ENABLED: boolean;
333
+ DD_TRACE_PROMISE_ENABLED: boolean;
334
+ DD_TRACE_PROMISE_JS_ENABLED: boolean;
335
+ DD_TRACE_PROPAGATION_STYLE: string[];
336
+ DD_TRACE_PROTOBUFJS_ENABLED: boolean;
337
+ DD_TRACE_PUG_ENABLED: boolean;
338
+ DD_TRACE_Q_ENABLED: boolean;
339
+ DD_TRACE_REACT_DOM_ENABLED: boolean;
340
+ DD_TRACE_REACT_ENABLED: boolean;
341
+ DD_TRACE_REDIS_CLIENT_ENABLED: boolean;
342
+ DD_TRACE_REDIS_ENABLED: boolean;
343
+ DD_TRACE_REQUEST_ENABLED: boolean;
344
+ DD_TRACE_RESTIFY_ENABLED: boolean;
345
+ DD_TRACE_RHEA_ENABLED: boolean;
346
+ DD_TRACE_ROUTER_ENABLED: boolean;
347
+ DD_TRACE_SELENIUM_ENABLED: boolean;
348
+ DD_TRACE_SELENIUM_WEBDRIVER_ENABLED: boolean;
349
+ DD_TRACE_SEQUELIZE_ENABLED: boolean;
350
+ DD_TRACE_SHAREDB_ENABLED: boolean;
351
+ DD_TRACE_SMITHY_SMITHY_CLIENT_ENABLED: boolean;
352
+ DD_TRACE_SQLITE3_ENABLED: boolean;
353
+ DD_TRACE_SUFFIXPLUGIN_ENABLED: boolean;
354
+ DD_TRACE_TAGS: Record<string, string> | undefined;
355
+ DD_TRACE_TEDIOUS_ENABLED: boolean;
356
+ DD_TRACE_UNDICI_ENABLED: boolean;
357
+ DD_TRACE_URL_ENABLED: boolean;
358
+ DD_TRACE_VITEST_ENABLED: boolean;
359
+ DD_TRACE_VITEST_RUNNER_ENABLED: boolean;
360
+ DD_TRACE_VM_ENABLED: boolean;
361
+ DD_TRACE_WHEN_ENABLED: boolean;
362
+ DD_TRACE_WINSTON_ENABLED: boolean;
363
+ DD_TRACE_WORKERPOOL_ENABLED: boolean;
364
+ DD_TRACE_WS_ENABLED: boolean;
365
+ DD_VITEST_WORKER: string | undefined;
366
+ dogstatsd: {
367
+ hostname: string;
368
+ port: string | number;
369
+ };
370
+ dsmEnabled: boolean;
371
+ dynamicInstrumentation: {
372
+ captureTimeoutMs: number;
373
+ enabled: boolean;
374
+ probeFile: string | undefined;
375
+ redactedIdentifiers: string[];
376
+ redactionExcludedIdentifiers: string[];
377
+ uploadIntervalSeconds: number;
378
+ };
379
+ env: string | undefined;
380
+ experimental: {
381
+ aiguard: {
382
+ enabled: boolean;
383
+ endpoint: string | undefined;
384
+ maxContentSize: number;
385
+ maxMessagesLength: number;
386
+ timeout: number;
387
+ };
388
+ appsec: {
389
+ standalone: {
390
+ enabled: boolean;
391
+ };
392
+ };
393
+ b3: boolean;
394
+ enableGetRumData: boolean;
395
+ exporter: string;
396
+ flaggingProvider: {
397
+ enabled: boolean;
398
+ initializationTimeoutMs: number;
399
+ };
400
+ };
401
+ flakyTestRetriesCount: number;
402
+ flushInterval: number;
403
+ flushMinSpans: number;
404
+ gitMetadataEnabled: boolean;
405
+ graphqlErrorExtensions: string[];
406
+ grpc: {
407
+ client: {
408
+ error: {
409
+ statuses: number[];
410
+ };
411
+ };
412
+ server: {
413
+ error: {
414
+ statuses: number[];
415
+ };
416
+ };
417
+ };
418
+ headerTags: string[];
419
+ heapSnapshot: {
420
+ count: number;
421
+ destination: string;
422
+ interval: number;
423
+ };
424
+ hostname: string;
425
+ iast: {
426
+ dbRowsToTaint: number;
427
+ deduplicationEnabled: boolean;
428
+ enabled: boolean;
429
+ maxConcurrentRequests: number;
430
+ maxContextOperations: number;
431
+ redactionEnabled: boolean;
432
+ redactionNamePattern: string;
433
+ redactionValuePattern: string;
434
+ requestSampling: number;
435
+ securityControlsConfiguration: string | undefined;
436
+ stackTrace: {
437
+ enabled: boolean;
438
+ };
439
+ telemetryVerbosity: string;
440
+ };
441
+ inferredProxyServicesEnabled: boolean;
442
+ injectForce: boolean;
443
+ injectionEnabled: string | undefined;
444
+ installSignature: {
445
+ id: string | undefined;
446
+ time: string | undefined;
447
+ type: string | undefined;
448
+ };
449
+ instrumentation_config_id: string | undefined;
450
+ isEarlyFlakeDetectionEnabled: boolean;
451
+ isFlakyTestRetriesEnabled: boolean;
452
+ isGitUploadEnabled: boolean;
453
+ isImpactedTestsEnabled: boolean;
454
+ isIntelligentTestRunnerEnabled: boolean;
455
+ isKeepingCoverageConfiguration: boolean;
456
+ isManualApiEnabled: boolean;
457
+ isTestDynamicInstrumentationEnabled: boolean;
458
+ isTestManagementEnabled: boolean;
459
+ langchain: {
460
+ spanCharLimit: number;
461
+ spanPromptCompletionSampleRate: number;
462
+ };
463
+ legacyBaggageEnabled: boolean;
464
+ llmobs: {
465
+ agentlessEnabled: boolean | undefined;
466
+ enabled: boolean;
467
+ mlApp: string | undefined;
468
+ };
469
+ logInjection: boolean;
470
+ logLevel: "debug" | "info" | "warn" | "error";
471
+ memcachedCommandEnabled: boolean;
472
+ middlewareTracingEnabled: boolean;
473
+ openai: {
474
+ spanCharLimit: number;
475
+ };
476
+ openAiLogsEnabled: boolean;
477
+ OTEL_EXPORTER_OTLP_ENDPOINT: string | undefined;
478
+ OTEL_LOG_LEVEL: "debug" | "info" | "warn" | "error" | undefined;
479
+ OTEL_LOGS_EXPORTER: "none" | "otlp" | undefined;
480
+ OTEL_METRICS_EXPORTER: "none" | "otlp" | undefined;
481
+ OTEL_RESOURCE_ATTRIBUTES: Record<string, string>;
482
+ OTEL_SDK_DISABLED: boolean;
483
+ OTEL_TRACES_EXPORTER: "none" | "otlp";
484
+ OTEL_TRACES_SAMPLER: "always_on" | "always_off" | "traceidratio" | "parentbased_always_on" | "parentbased_always_off" | "parentbased_traceidratio";
485
+ OTEL_TRACES_SAMPLER_ARG: number | undefined;
486
+ otelBatchTimeout: number;
487
+ otelHeaders: string | undefined;
488
+ otelLogsEnabled: boolean;
489
+ otelLogsHeaders: string | undefined;
490
+ otelLogsProtocol: string;
491
+ otelLogsTimeout: number;
492
+ otelLogsUrl: string | undefined;
493
+ otelMaxExportBatchSize: number;
494
+ otelMaxQueueSize: number;
495
+ otelMetricsEnabled: boolean;
496
+ otelMetricsExportInterval: number;
497
+ otelMetricsExportTimeout: number;
498
+ otelMetricsHeaders: string | undefined;
499
+ otelMetricsProtocol: string;
500
+ otelMetricsTemporalityPreference: "DELTA" | "CUMULATIVE" | "LOWMEMORY";
501
+ otelMetricsTimeout: number;
502
+ otelMetricsUrl: string | undefined;
503
+ otelProtocol: string;
504
+ otelTimeout: number;
505
+ peerServiceMapping: Record<string, string>;
506
+ port: string | number;
507
+ profiling: {
508
+ enabled: 'true' | 'false' | 'auto';
509
+ longLivedThreshold: number;
510
+ };
511
+ propagateProcessTags: {
512
+ enabled: boolean;
513
+ };
514
+ protocolVersion: string;
515
+ queryStringObfuscation: string;
516
+ rateLimit: number;
517
+ remoteConfig: {
518
+ enabled: boolean;
519
+ pollInterval: number;
520
+ };
521
+ reportHostname: boolean;
522
+ resourceRenamingEnabled: boolean;
523
+ runtimeMetrics: {
524
+ enabled: boolean;
525
+ eventLoop: boolean;
526
+ gc: boolean;
527
+ };
528
+ runtimeMetricsRuntimeId: boolean;
529
+ sampleRate: number | undefined;
530
+ samplingRules: import('../../../../index').SamplingRule[];
531
+ scope: string | undefined;
532
+ service: string | undefined;
533
+ serviceMapping: Record<string, string>;
534
+ site: string;
535
+ spanAttributeSchema: "v0" | "v1";
536
+ spanComputePeerService: boolean;
537
+ spanLeakDebug: number;
538
+ spanRemoveIntegrationFromService: boolean;
539
+ spanSamplingRules: import('../../../../index').SpanSamplingRule[] | undefined;
540
+ startupLogs: boolean;
541
+ stats: {
542
+ enabled: boolean;
543
+ };
544
+ tags: Record<string, string>;
545
+ tagsHeaderMaxLength: number;
546
+ telemetry: {
547
+ debug: boolean;
548
+ dependencyCollection: boolean;
549
+ enabled: boolean;
550
+ heartbeatInterval: number;
551
+ logCollection: boolean;
552
+ metrics: boolean;
553
+ };
554
+ testManagementAttemptToFixRetries: number;
555
+ trace: {
556
+ aws: {
557
+ addSpanPointers: boolean;
558
+ };
559
+ dynamoDb: {
560
+ tablePrimaryKeys: string | undefined;
561
+ };
562
+ nativeSpanEvents: boolean;
563
+ };
564
+ traceId128BitGenerationEnabled: boolean;
565
+ traceId128BitLoggingEnabled: boolean;
566
+ tracePropagationBehaviorExtract: "continue" | "restart" | "ignore";
567
+ tracePropagationExtractFirst: boolean;
568
+ tracePropagationStyle: {
569
+ extract: string[];
570
+ inject: string[];
571
+ };
572
+ traceWebsocketMessagesEnabled: boolean;
573
+ traceWebsocketMessagesInheritSampling: boolean;
574
+ traceWebsocketMessagesSeparateTraces: boolean;
575
+ tracing: boolean;
576
+ url: string | URL;
577
+ version: string | undefined;
578
+ vertexai: {
579
+ spanCharLimit: number;
580
+ spanPromptCompletionSampleRate: number;
581
+ };
582
+ }
@@ -773,6 +773,13 @@
773
773
  "default": "false"
774
774
  }
775
775
  ],
776
+ "DD_EXPERIMENTAL_TEST_REQUESTS_FS_CACHE": [
777
+ {
778
+ "implementation": "A",
779
+ "type": "boolean",
780
+ "default": "false"
781
+ }
782
+ ],
776
783
  "DD_EXTERNAL_ENV": [
777
784
  {
778
785
  "implementation": "A",
@@ -23,6 +23,7 @@ module.exports = {
23
23
 
24
24
  MODEL_NAME: '_ml_obs.meta.model_name',
25
25
  MODEL_PROVIDER: '_ml_obs.meta.model_provider',
26
+ UNKNOWN_MODEL_PROVIDER: 'unknown',
26
27
 
27
28
  INPUT_DOCUMENTS: '_ml_obs.meta.input.documents',
28
29
  INPUT_MESSAGES: '_ml_obs.meta.input.messages',
@@ -1,6 +1,6 @@
1
1
  'use strict'
2
2
 
3
3
  module.exports = {
4
- DROPPED_VALUE_TEXT: "[This value has been dropped because this span's size exceeds the 1MB size limit.]",
4
+ DROPPED_VALUE_TEXT: "[This value has been dropped because this span's size exceeds the 5MB size limit.]",
5
5
  UNSERIALIZABLE_VALUE_TEXT: 'Unserializable value',
6
6
  }
@@ -13,5 +13,5 @@ module.exports = {
13
13
  EVALUATIONS_ENDPOINT: '/api/intake/llm-obs/v2/eval-metric',
14
14
 
15
15
  EVP_PAYLOAD_SIZE_LIMIT: 5 << 20, // 5MB (actual limit is 5.1MB)
16
- EVP_EVENT_SIZE_LIMIT: (1 << 20) - 1024, // 999KB (actual limit is 1MB)
16
+ EVP_EVENT_SIZE_LIMIT: 5 << 20, // 5MB (actual backend limit is 10MB; Python SDK defaults to 5MB)
17
17
  }
@@ -1,5 +1,6 @@
1
1
  'use strict'
2
2
 
3
+ const { UNKNOWN_MODEL_PROVIDER } = require('../constants/tags')
3
4
  const LLMObsPlugin = require('./base')
4
5
 
5
6
  const ALLOWED_METADATA_KEYS = new Set([
@@ -108,16 +109,24 @@ class AnthropicLLMObsPlugin extends LLMObsPlugin {
108
109
  }
109
110
 
110
111
  getLLMObsSpanRegisterOptions (ctx) {
111
- const { options } = ctx
112
+ const { options, baseUrl } = ctx
112
113
  const { model } = options
114
+ const modelProvider = this._getModelProvider(baseUrl)
113
115
 
114
116
  return {
115
117
  kind: 'llm',
116
118
  modelName: model,
117
- modelProvider: 'anthropic',
119
+ modelProvider,
118
120
  }
119
121
  }
120
122
 
123
+ _getModelProvider (baseUrl = '') {
124
+ if (baseUrl.includes('anthropic')) {
125
+ return 'anthropic'
126
+ }
127
+ return UNKNOWN_MODEL_PROVIDER
128
+ }
129
+
121
130
  setLLMObsTags (ctx) {
122
131
  const span = ctx.currentStore?.span
123
132
  if (!span) return
@@ -5,6 +5,7 @@ const {
5
5
  PROMPT_TRACKING_INSTRUMENTATION_METHOD,
6
6
  PROMPT_MULTIMODAL,
7
7
  INSTRUMENTATION_METHOD_AUTO,
8
+ UNKNOWN_MODEL_PROVIDER,
8
9
  } = require('../../constants/tags')
9
10
  const {
10
11
  extractChatTemplateFromInstructions,
@@ -90,10 +91,12 @@ class OpenAiLLMObsPlugin extends LLMObsPlugin {
90
91
  _getModelProviderAndClient (baseUrl = '') {
91
92
  if (baseUrl.includes('azure')) {
92
93
  return { modelProvider: 'azure_openai', client: 'AzureOpenAI' }
94
+ } else if (baseUrl.includes('openai')) {
95
+ return { modelProvider: 'openai', client: 'OpenAI' }
93
96
  } else if (baseUrl.includes('deepseek')) {
94
97
  return { modelProvider: 'deepseek', client: 'DeepSeek' }
95
98
  }
96
- return { modelProvider: 'openai', client: 'OpenAI' }
99
+ return { modelProvider: UNKNOWN_MODEL_PROVIDER, client: 'OpenAI' }
97
100
  }
98
101
 
99
102
  _extractMetrics (response) {
@@ -32,7 +32,7 @@ class LLMObsSpanWriter extends BaseWriter {
32
32
  let processedEventSizeBytes = eventSizeBytes
33
33
 
34
34
  if (shouldTruncate) {
35
- logger.warn(`Dropping event input/output because its size (${eventSizeBytes}) exceeds the 1MB event size limit`)
35
+ logger.warn(`Dropping event input/output because its size (${eventSizeBytes}) exceeds the 5MB event size limit`)
36
36
  event = this._truncateSpanEvent(event)
37
37
  processedEventSizeBytes = Buffer.byteLength(JSON.stringify(event))
38
38
  }