chore: generate configuration from supported-configurations.json#7734
chore: generate configuration from supported-configurations.json#7734
Conversation
Overall package sizeSelf size: 5.41 MB Dependency sizes| name | version | self size | total size | |------|---------|-----------|------------| | import-in-the-middle | 3.0.0 | 81.15 kB | 815.98 kB | | dc-polyfill | 0.1.10 | 26.73 kB | 26.73 kB |🤖 This report was automatically generated by heaviest-objects-in-the-universe |
|
✅ Tests 🎉 All green!❄️ No new flaky tests detected 🎯 Code Coverage (details) 🔗 Commit SHA: f2b98b8 | Docs | Datadog PR Page | Was this helpful? React with 👍/👎 or give us feedback! |
BenchmarksBenchmark execution time: 2026-03-27 13:01:17 Comparing candidate commit 016295c in PR branch Found 0 performance improvements and 19 performance regressions! Performance is the same for 204 metrics, 37 unstable metrics. scenario:appsec-iast-no-vulnerability-iast-enabled-always-active-18
scenario:appsec-iast-no-vulnerability-iast-enabled-always-active-20
scenario:appsec-iast-no-vulnerability-iast-enabled-always-active-22
scenario:appsec-iast-no-vulnerability-iast-enabled-always-active-24
scenario:appsec-iast-no-vulnerability-iast-enabled-default-config-18
scenario:appsec-iast-no-vulnerability-iast-enabled-default-config-20
scenario:appsec-iast-no-vulnerability-iast-enabled-default-config-22
scenario:appsec-iast-no-vulnerability-iast-enabled-default-config-24
scenario:net-with-tracer-20
scenario:net-with-tracer-22
scenario:net-with-tracer-24
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #7734 +/- ##
==========================================
- Coverage 74.25% 74.17% -0.09%
==========================================
Files 765 768 +3
Lines 35786 35456 -330
==========================================
- Hits 26574 26299 -275
+ Misses 9212 9157 -55
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
96c69b1 to
cdd5d64
Compare
6b2b530 to
95bcb20
Compare
016295c to
ae99a4e
Compare
This completely changes how we handle our configuration. Things are now using the type and transformers as well as validators to guarantee things are working as expected. This fixes a lot of telemetry issues and other smaller issues. Booleans are now consistently handled. A couple more things are included. refactor: this roughly finishes the configuration refactoring Everything is now auto generated and the telemetry is mostly generated using the canonical env key. This is not yet the case for remote config and calculated entries. Tracking is also not yet perfectly handled for remote config, that needs some small adjustments. This simplifies the profiler config, exposes more programmatic keys in index.d.ts that were already exposed, marks internal keys as such and multiple other smaller fixes. chore: add eslint rule chore: generate config types and lint against index.d.ts This finishes telemetry and config types chore: add config types across the board This also fixes minor issues around major versions that were not detected before. refactor: this fixes a couple TODO entries and fixes a RC issue It also makes things easier to reason and simpler from the overall implementation. A lot of code has become more explicit over former implicit behavior. This is for example the case with the error handling.
56f63ba to
4123886
Compare
| redactionNamePattern: 'REDACTION_NAME_PATTERN', | ||
| redactionValuePattern: 'REDACTION_VALUE_PATTERN', | ||
| securityControlsConfiguration: 'SANITIZER:CODE_INJECTION:sanitizer.js:method2', | ||
| securityControlsConfiguration: 'SANITIZER:CODE_INJECTION:sanitizer.js:method' + (DD_MAJOR < 6 ? '2' : '1'), |
There was a problem hiding this comment.
Ask Appsec for clarification
| "experimental.appsec.stackTrace.maxStackTraces" | ||
| ], | ||
| "aliases": [ | ||
| "DD_APPSEC_MAX_STACKTRACES" |
There was a problem hiding this comment.
These aliases are used elsewhere, so I also added them here for consistency. The same with the other stack aliases.
| "dogstatsd.hostname" | ||
| ], | ||
| "default": "localhost", | ||
| "default": "127.0.0.1", |
There was a problem hiding this comment.
I learned that the former default was actually wrong.
| "type": "string", | ||
| "default": null | ||
| "type": "boolean", | ||
| "default": "false" |
There was a problem hiding this comment.
It turned out to be the wrong type
| } | ||
| ], | ||
| "DD_LOG_LEVEL": [ | ||
| "DD_TRACE_LOG_LEVEL": [ |
There was a problem hiding this comment.
This is now consistent across the code. That was handled different in different areas. Now these are aliases.
| { | ||
| "implementation": "A", | ||
| "type": "boolean", | ||
| "internalPropertyName": "stats.enabled", |
There was a problem hiding this comment.
stats is exposed while we safe it in another property.
| ] | ||
| } | ||
| ], | ||
| "DD_TRACING_ENABLED": [ |
| "default": "7500" | ||
| } | ||
| ], | ||
| "OTEL_PROPAGATORS": [ |
| "default": "true" | ||
| } | ||
| ], | ||
| "OTEL_SERVICE_NAME": [ |
| : String(getValueFromEnvSources('OTEL_TRACES_EXPORTER')).toLowerCase() === 'none' | ||
| const shouldUseProxyWhenTracingDisabled = | ||
| isTrue(getValueFromEnvSources('DD_DYNAMIC_INSTRUMENTATION_ENABLED')) || | ||
| isTrue(getValueFromEnvSources('DD_EXPERIMENTAL_APPSEC_STANDALONE_ENABLED')) |
There was a problem hiding this comment.
These should be correctness fixes. Before we handled things a bit different, while it is now important to not get into the noop proxy, if not needed.
This completely changes how we handle our configuration. Things are now using the type and transformers as well as validators to guarantee things are working as expected.
This fixes a lot of telemetry issues and other smaller issues.
Booleans are now consistently handled.
A couple more things are included.