-
Notifications
You must be signed in to change notification settings - Fork 311
Extract Vert.x json body response schemas #9001
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extract Vert.x json body response schemas #9001
Conversation
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 41 metrics, 12 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.51.0-SNAPSHOT~bd96ea3c17, baseline=1.51.0-SNAPSHOT~c0659266e2
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (994.126 ms) : 0, 994126
Total [baseline] (8.536 s) : 0, 8535539
Agent [candidate] (994.702 ms) : 0, 994702
Total [candidate] (8.515 s) : 0, 8515458
section iast
Agent [baseline] (1.144 s) : 0, 1144073
Total [baseline] (9.349 s) : 0, 9348730
Agent [candidate] (1.147 s) : 0, 1146764
Total [candidate] (9.254 s) : 0, 9254274
gantt
title insecure-bank - break down per module: candidate=1.51.0-SNAPSHOT~bd96ea3c17, baseline=1.51.0-SNAPSHOT~c0659266e2
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (686.143 ms) : 0, 686143
BytebuddyAgent [candidate] (686.132 ms) : 0, 686132
GlobalTracer [baseline] (242.212 ms) : 0, 242212
GlobalTracer [candidate] (242.095 ms) : 0, 242095
AppSec [baseline] (30.05 ms) : 0, 30050
AppSec [candidate] (30.037 ms) : 0, 30037
Debugger [baseline] (6.056 ms) : 0, 6056
Debugger [candidate] (6.097 ms) : 0, 6097
Remote Config [baseline] (650.152 µs) : 0, 650
Remote Config [candidate] (660.364 µs) : 0, 660
Telemetry [baseline] (8.214 ms) : 0, 8214
Telemetry [candidate] (8.812 ms) : 0, 8812
section iast
BytebuddyAgent [baseline] (818.16 ms) : 0, 818160
BytebuddyAgent [candidate] (819.609 ms) : 0, 819609
GlobalTracer [baseline] (234.466 ms) : 0, 234466
GlobalTracer [candidate] (235.459 ms) : 0, 235459
AppSec [baseline] (27.207 ms) : 0, 27207
AppSec [candidate] (26.261 ms) : 0, 26261
Debugger [baseline] (5.929 ms) : 0, 5929
Debugger [candidate] (5.915 ms) : 0, 5915
Remote Config [baseline] (593.224 µs) : 0, 593
Remote Config [candidate] (598.121 µs) : 0, 598
Telemetry [baseline] (8.083 ms) : 0, 8083
Telemetry [candidate] (8.945 ms) : 0, 8945
IAST [baseline] (28.626 ms) : 0, 28626
IAST [candidate] (28.914 ms) : 0, 28914
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.51.0-SNAPSHOT~bd96ea3c17, baseline=1.51.0-SNAPSHOT~c0659266e2
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (994.002 ms) : 0, 994002
Total [baseline] (10.641 s) : 0, 10641351
Agent [candidate] (992.05 ms) : 0, 992050
Total [candidate] (10.646 s) : 0, 10646449
section appsec
Agent [baseline] (1.17 s) : 0, 1169663
Total [baseline] (10.685 s) : 0, 10685253
Agent [candidate] (1.183 s) : 0, 1182625
Total [candidate] (10.779 s) : 0, 10779350
section iast
Agent [baseline] (1.127 s) : 0, 1127300
Total [baseline] (10.854 s) : 0, 10853831
Agent [candidate] (1.137 s) : 0, 1136526
Total [candidate] (10.866 s) : 0, 10865714
section profiling
Agent [baseline] (1.239 s) : 0, 1239313
Total [baseline] (11.055 s) : 0, 11055120
Agent [candidate] (1.244 s) : 0, 1243615
Total [candidate] (11.102 s) : 0, 11102328
gantt
title petclinic - break down per module: candidate=1.51.0-SNAPSHOT~bd96ea3c17, baseline=1.51.0-SNAPSHOT~c0659266e2
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (685.804 ms) : 0, 685804
BytebuddyAgent [candidate] (684.815 ms) : 0, 684815
GlobalTracer [baseline] (242.708 ms) : 0, 242708
GlobalTracer [candidate] (241.655 ms) : 0, 241655
AppSec [baseline] (29.767 ms) : 0, 29767
AppSec [candidate] (29.861 ms) : 0, 29861
Debugger [baseline] (6.026 ms) : 0, 6026
Debugger [candidate] (6.059 ms) : 0, 6059
Remote Config [baseline] (642.662 µs) : 0, 643
Remote Config [candidate] (654.877 µs) : 0, 655
Telemetry [baseline] (8.126 ms) : 0, 8126
Telemetry [candidate] (8.088 ms) : 0, 8088
section appsec
BytebuddyAgent [baseline] (707.829 ms) : 0, 707829
BytebuddyAgent [candidate] (717.155 ms) : 0, 717155
GlobalTracer [baseline] (234.956 ms) : 0, 234956
GlobalTracer [candidate] (237.696 ms) : 0, 237696
AppSec [baseline] (169.545 ms) : 0, 169545
AppSec [candidate] (169.839 ms) : 0, 169839
Debugger [baseline] (5.883 ms) : 0, 5883
Debugger [candidate] (5.926 ms) : 0, 5926
Remote Config [baseline] (598.721 µs) : 0, 599
Remote Config [candidate] (616.317 µs) : 0, 616
Telemetry [baseline] (8.127 ms) : 0, 8127
Telemetry [candidate] (8.311 ms) : 0, 8311
IAST [baseline] (21.932 ms) : 0, 21932
IAST [candidate] (22.132 ms) : 0, 22132
section iast
BytebuddyAgent [baseline] (805.121 ms) : 0, 805121
BytebuddyAgent [candidate] (811.84 ms) : 0, 811840
GlobalTracer [baseline] (232.15 ms) : 0, 232150
GlobalTracer [candidate] (234.147 ms) : 0, 234147
AppSec [baseline] (27.441 ms) : 0, 27441
AppSec [candidate] (26.676 ms) : 0, 26676
Debugger [baseline] (5.797 ms) : 0, 5797
Debugger [candidate] (5.825 ms) : 0, 5825
Remote Config [baseline] (578.318 µs) : 0, 578
Remote Config [candidate] (601.587 µs) : 0, 602
Telemetry [baseline] (7.796 ms) : 0, 7796
Telemetry [candidate] (7.869 ms) : 0, 7869
IAST [baseline] (27.648 ms) : 0, 27648
IAST [candidate] (28.647 ms) : 0, 28647
section profiling
BytebuddyAgent [baseline] (675.602 ms) : 0, 675602
BytebuddyAgent [candidate] (677.627 ms) : 0, 677627
GlobalTracer [baseline] (360.772 ms) : 0, 360772
GlobalTracer [candidate] (360.967 ms) : 0, 360967
AppSec [baseline] (30.876 ms) : 0, 30876
AppSec [candidate] (31.234 ms) : 0, 31234
Debugger [baseline] (11.77 ms) : 0, 11770
Debugger [candidate] (11.202 ms) : 0, 11202
Remote Config [baseline] (708.507 µs) : 0, 709
Remote Config [candidate] (657.076 µs) : 0, 657
Telemetry [baseline] (8.658 ms) : 0, 8658
Telemetry [candidate] (9.59 ms) : 0, 9590
ProfilingAgent [baseline] (102.309 ms) : 0, 102309
ProfilingAgent [candidate] (103.641 ms) : 0, 103641
Profiling [baseline] (102.335 ms) : 0, 102335
Profiling [candidate] (103.666 ms) : 0, 103666
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 2 performance regressions! Performance is the same for 10 metrics, 12 unstable metrics.
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.51.0-SNAPSHOT~bd96ea3c17, baseline=1.51.0-SNAPSHOT~c0659266e2
dateFormat X
axisFormat %s
section baseline
no_agent (4.406 ms) : 4347, 4465
. : milestone, 4406,
iast (8.979 ms) : 8836, 9123
. : milestone, 8979,
iast_FULL (13.91 ms) : 13638, 14181
. : milestone, 13910,
iast_GLOBAL (9.8 ms) : 9614, 9987
. : milestone, 9800,
profiling (8.313 ms) : 8173, 8454
. : milestone, 8313,
tracing (7.783 ms) : 7670, 7896
. : milestone, 7783,
section candidate
no_agent (4.567 ms) : 4515, 4619
. : milestone, 4567,
iast (9.06 ms) : 8910, 9210
. : milestone, 9060,
iast_FULL (13.623 ms) : 13355, 13890
. : milestone, 13623,
iast_GLOBAL (9.831 ms) : 9662, 10000
. : milestone, 9831,
profiling (8.526 ms) : 8392, 8661
. : milestone, 8526,
tracing (7.59 ms) : 7476, 7704
. : milestone, 7590,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.51.0-SNAPSHOT~bd96ea3c17, baseline=1.51.0-SNAPSHOT~c0659266e2
dateFormat X
axisFormat %s
section baseline
no_agent (36.579 ms) : 36283, 36875
. : milestone, 36579,
appsec (47.264 ms) : 46835, 47692
. : milestone, 47264,
code_origins (45.701 ms) : 45314, 46088
. : milestone, 45701,
iast (43.208 ms) : 42838, 43577
. : milestone, 43208,
profiling (47.908 ms) : 47455, 48360
. : milestone, 47908,
tracing (43.866 ms) : 43482, 44251
. : milestone, 43866,
section candidate
no_agent (37.118 ms) : 36820, 37416
. : milestone, 37118,
appsec (46.73 ms) : 46309, 47151
. : milestone, 46730,
code_origins (45.146 ms) : 44763, 45529
. : milestone, 45146,
iast (42.842 ms) : 42466, 43219
. : milestone, 42842,
profiling (50.59 ms) : 50114, 51067
. : milestone, 50590,
tracing (43.974 ms) : 43611, 44337
. : milestone, 43974,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.51.0-SNAPSHOT~bd96ea3c17, baseline=1.51.0-SNAPSHOT~c0659266e2
dateFormat X
axisFormat %s
section baseline
no_agent (14.883 s) : 14883000, 14883000
. : milestone, 14883000,
appsec (14.617 s) : 14617000, 14617000
. : milestone, 14617000,
iast (18.319 s) : 18319000, 18319000
. : milestone, 18319000,
iast_GLOBAL (17.867 s) : 17867000, 17867000
. : milestone, 17867000,
profiling (15.205 s) : 15205000, 15205000
. : milestone, 15205000,
tracing (15.054 s) : 15054000, 15054000
. : milestone, 15054000,
section candidate
no_agent (15.529 s) : 15529000, 15529000
. : milestone, 15529000,
appsec (14.95 s) : 14950000, 14950000
. : milestone, 14950000,
iast (18.283 s) : 18283000, 18283000
. : milestone, 18283000,
iast_GLOBAL (17.863 s) : 17863000, 17863000
. : milestone, 17863000,
profiling (15.915 s) : 15915000, 15915000
. : milestone, 15915000,
tracing (14.601 s) : 14601000, 14601000
. : milestone, 14601000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.51.0-SNAPSHOT~bd96ea3c17, baseline=1.51.0-SNAPSHOT~c0659266e2
dateFormat X
axisFormat %s
section baseline
no_agent (1.483 ms) : 1471, 1495
. : milestone, 1483,
appsec (2.408 ms) : 2359, 2456
. : milestone, 2408,
iast (2.192 ms) : 2131, 2253
. : milestone, 2192,
iast_GLOBAL (2.234 ms) : 2172, 2295
. : milestone, 2234,
profiling (2.039 ms) : 1990, 2089
. : milestone, 2039,
tracing (2.002 ms) : 1954, 2049
. : milestone, 2002,
section candidate
no_agent (1.479 ms) : 1468, 1491
. : milestone, 1479,
appsec (2.406 ms) : 2358, 2455
. : milestone, 2406,
iast (2.189 ms) : 2128, 2250
. : milestone, 2189,
iast_GLOBAL (2.239 ms) : 2178, 2301
. : milestone, 2239,
profiling (2.029 ms) : 1980, 2078
. : milestone, 2029,
tracing (2.021 ms) : 1974, 2069
. : milestone, 2021,
|
e6d0da9
to
bf5e01e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Correct me if I'm wrong but I feel that we are missing this part of the RFC
DD_API_SECURITY_PARSE_RESPONSE_BODY: this is a configuration option which libraries with the ability to parse the response body must implement to allow the user to disable this feature. With a true, or equivalent value, response body parsing should be enabled. If implemented, the default value of this configuration option must be true.
There is also a system test that validates this
tests/appsec/api_security/test_schemas.py::Test_Schema_Response_Body_env_var::test_request_method
Yep, parsing the body is not going to be implemented in the library at the moment. |
5ae3d48
to
aac9883
Compare
37afc9b
to
3fabdcd
Compare
dd-java-agent/appsec/src/main/java/com/datadog/appsec/gateway/GatewayBridge.java
Outdated
Show resolved
Hide resolved
dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/base/HttpServerTest.groovy
Outdated
Show resolved
Hide resolved
internal-api/src/main/java/datadog/trace/api/gateway/Events.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! just a bunch of questions
3fabdcd
to
fe0c272
Compare
aac9883
to
ad5e01d
Compare
25ab23e
to
24b6231
Compare
ad5e01d
to
cf0f8aa
Compare
5194553
to
3a7d412
Compare
3a7d412
to
ac7c355
Compare
ac7c355
to
bd96ea3
Compare
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | [com.google.errorprone:error_prone_annotations](https://errorprone.info) ([source](https://github.com/google/error-prone)) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.39.0` -> `2.40.0` | | [org.apache.commons:commons-lang3](https://commons.apache.org/proper/commons-lang/) ([source](https://gitbox.apache.org/repos/asf/commons-lang.git)) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `3.17.0` -> `3.18.0` | | [org.jetbrains.kotlinx.binary-compatibility-validator](https://github.com/Kotlin/binary-compatibility-validator) | plugin | misk/gradle/libs.versions.toml | gradle | patch | `0.18.0` -> `0.18.1` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.50.1` -> `1.51.0` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.77` -> `2.31.78` | | [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.77` -> `2.31.78` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.77` -> `2.31.78` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.77` -> `2.31.78` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.77` -> `2.31.78` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.77` -> `2.31.78` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.31.77` -> `2.31.78` | --- ### Release Notes <details> <summary>google/error-prone (com.google.errorprone:error_prone_annotations)</summary> ### [`v2.40.0`](https://github.com/google/error-prone/releases/tag/v2.40.0): Error Prone 2.40.0 Changes: - Bug fixes and improvements - Releases (including snapshots) have migrated from [OSSRH to the Central Publisher Portal](https://central.sonatype.org/pages/ossrh-eol/#process-to-migrate) Full changelog: google/error-prone@v2.39.0...v2.40.0 </details> <details> <summary>Kotlin/binary-compatibility-validator (org.jetbrains.kotlinx.binary-compatibility-validator)</summary> ### [`v0.18.1`](https://github.com/Kotlin/binary-compatibility-validator/releases/tag/0.18.1) [Compare Source](Kotlin/binary-compatibility-validator@0.18.0...0.18.1) #### What's Changed - Fixed a bug preventing use of cross-compilation support during KLIB dump validation \[[#​304](https://github.com/Kotlin/binary-compatibility-validator/issues/304)]\[[#​306](https://github.com/Kotlin/binary-compatibility-validator/issues/306)] </details> <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.51.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.51.0): 1.51.0 ### Components #### Application Security Management (IAST) - 🐛 Fix verify error when ctor params are used after a call site ([#​9083](DataDog/dd-trace-java#9083) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛 Limit the maximum size of the location path in IAST vulnerabilities ([#​9028](DataDog/dd-trace-java#9028) - [@​jandro996](https://github.com/jandro996)) - 🐛 Fix IAST gRPC handler with null superclass ([#​8984](DataDog/dd-trace-java#8984) - [@​smola](https://github.com/smola)) - ✨ Optimize IAST Vulnerability Detection ([#​8885](DataDog/dd-trace-java#8885) - [@​jandro996](https://github.com/jandro996)) #### Application Security Management (WAF) - ✨ Upgrade libddwaf-java to 15.0.0 ([#​9022](DataDog/dd-trace-java#9022) - [@​sezen-datadog](https://github.com/sezen-datadog)) - ✨ Extract RestEasy json body response schemas ([#​9015](DataDog/dd-trace-java#9015) - [@​jandro996](https://github.com/jandro996)) - ✨ Extract Jersey json body response schemas ([#​9014](DataDog/dd-trace-java#9014) - [@​jandro996](https://github.com/jandro996)) - ✨ Extract Ratpack json body response schemas ([#​9013](DataDog/dd-trace-java#9013) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Enable API Security by default and make it lazy loading ([#​9009](DataDog/dd-trace-java#9009) - [@​smola](https://github.com/smola)) - ✨ Extract Vert.x json body response schemas ([#​9001](DataDog/dd-trace-java#9001) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Extract Play json body response schemas ([#​8995](DataDog/dd-trace-java#8995) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛 Fix Jackson nodes introspection for request/response schema extraction ([#​8980](DataDog/dd-trace-java#8980) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Extract Spring json body response schemas ([#​8938](DataDog/dd-trace-java#8938) - [@​sezen-datadog](https://github.com/sezen-datadog)) - ✨ Default obfuscation regexp update ([#​8937](DataDog/dd-trace-java#8937) - [@​sezen-datadog](https://github.com/sezen-datadog)) #### Build & Tooling - ✨ Cancel GitLab running pipeline on new PR push ([#​9023](DataDog/dd-trace-java#9023) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ Migrate publishing to Maven Central Portal ([#​8807](DataDog/dd-trace-java#8807) - [@​sarahchen6](https://github.com/sarahchen6)) #### Continuous Integration Visibility - 🐛 Fix Test Optimization to work with JDK 24 ([#​9114](DataDog/dd-trace-java#9114) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add repo root as safe directory on git client creation ([#​9033](DataDog/dd-trace-java#9033) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Add PR number tag and improve PR information building ([#​8990](DataDog/dd-trace-java#8990) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Update impacted tests logic ([#​8923](DataDog/dd-trace-java#8923) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) #### Data Streams Monitoring - 🧹 Clean up DSM context injection ([#​8776](DataDog/dd-trace-java#8776) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) #### Database Monitoring - 🐛 Set trace\_injected in try block ([#​9025](DataDog/dd-trace-java#9025) - [@​natashadada](https://github.com/natashadada)) #### Dynamic Instrumentation - 🐛 Add source file tracking enable option ([#​9115](DataDog/dd-trace-java#9115) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add java.util.Date support ([#​9111](DataDog/dd-trace-java#9111) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Update file probe format ([#​9047](DataDog/dd-trace-java#9047) - [@​jpbempel](https://github.com/jpbempel)) - ✨ add safe local var hoisting ([#​9034](DataDog/dd-trace-java#9034) - [@​jpbempel](https://github.com/jpbempel)) - 🧹 Add new config for debugger upload interval ([#​8959](DataDog/dd-trace-java#8959) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Enable Code Origin with Dynamic instrumentation ([#​8940](DataDog/dd-trace-java#8940) - [@​jpbempel](https://github.com/jpbempel)) #### ML Observability (LLMObs) - 💡 LLM Observability SDK ([#​8781](DataDog/dd-trace-java#8781) - [@​gary-huang](https://github.com/gary-huang), [@​nayeem-kamal](https://github.com/nayeem-kamal)) #### Metrics - 🐛 Ensure client stat reporter is started when the agent is not available at bootstrap ([#​9082](DataDog/dd-trace-java#9082) - [@​amarziali](https://github.com/amarziali)) - ✨ Create metric: appsec.waf.config\_errors ([#​8394](DataDog/dd-trace-java#8394) - [@​sezen-datadog](https://github.com/sezen-datadog)) #### Platform components - ✨ Introduce environment component ([#​9071](DataDog/dd-trace-java#9071) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) #### Profiling - 🐛 Remove annoying warning for smap event parsing ([#​9119](DataDog/dd-trace-java#9119) - [@​jbachorik](https://github.com/jbachorik)) - 🐛 Fix ByteCountingInputStream when reading past EOF ([#​8988](DataDog/dd-trace-java#8988) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### Realtime User Monitoring - ✨ Add RUM SDK injection for servlet based web servers ([#​9110](DataDog/dd-trace-java#9110) - [@​PerfectSlayer](https://github.com/PerfectSlayer) [@​amarziali](https://github.com/amarziali)) #### Telemetry - ✨ Update the config origin metric to match what it's mapping ([#​9045](DataDog/dd-trace-java#9045) - [@​sezen-datadog](https://github.com/sezen-datadog)) #### Testing - ✨ Add testing for latest stable version (JDK 24) ([#​8875](DataDog/dd-trace-java#8875) - [@​sarahchen6](https://github.com/sarahchen6)) #### Trace context propagation - 🐛 Fix bug with dropping baggage when `TracePropagationBehaviorExtract=IGNORE` ([#​9037](DataDog/dd-trace-java#9037) - [@​mhlidd](https://github.com/mhlidd)) - 🐛 Fix ArrayIndexOutOfBoundsException in PercentEscaper ([#​9032](DataDog/dd-trace-java#9032) - [@​mhlidd](https://github.com/mhlidd)) #### Tracer core - 🐛 Fix `Error` handling for trace interceptors ([#​9097](DataDog/dd-trace-java#9097) - [@​AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD)) - 💡 Add wildcard feature for `DD_TRACE_HEADER_TAGS` and enabling for Http Response headers ([#​9067](DataDog/dd-trace-java#9067) - [@​mhlidd](https://github.com/mhlidd)) #### Tracer public API - 💡 Add LLM Observability SDK ([#​8781](DataDog/dd-trace-java#8781) - [@​gary-huang](https://github.com/gary-huang)) ### Instrumentations #### Akka instrumentation - 🐛 Fix NPE in akka-http and pekko-http integrations ([#​9019](DataDog/dd-trace-java#9019) - [@​mcculls](https://github.com/mcculls)) #### Eclipse Vert.x instrumentation - ✨ Extract Vert.x json body response schemas ([#​9001](DataDog/dd-trace-java#9001) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Write http.route tag as soon as possible in vert.x ([#​8952](DataDog/dd-trace-java#8952) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### JAX-WS instrumentation - 💡⚠️ Enable jax-ws integration by default ([#​9030](DataDog/dd-trace-java#9030) - [@​bm1549](https://github.com/bm1549)) - ✨ Extract Jersey json body response schemas ([#​9014](DataDog/dd-trace-java#9014) - [@​jandro996](https://github.com/jandro996)) #### Mule instrumentation - 🐛 Propagate grizzly http span in filters if nothing is active ([#​9016](DataDog/dd-trace-java#9016) - [@​amarziali](https://github.com/amarziali)) #### Play Framework instrumentation - ✨ Extract Play json body response schemas ([#​8995](DataDog/dd-trace-java#8995) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### Ratpack instrumentation - ✨ Extract Ratpack json body response schemas ([#​9013](DataDog/dd-trace-java#9013) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) #### Spring instrumentation - ✨ Extract Spring json body response schemas ([#​8938](DataDog/dd-trace-java#8938) - [@​sezen-datadog](https://github.com/sezen-datadog)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 6pm every weekday,before 2am every weekday" in timezone Australia/Melbourne, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). GitOrigin-RevId: 649b690d4c9d7dcb572c457f0802b42b8e3e682e
What Does This Do
Adds response body extraction for Vert.x JSON endpoints to enable automatic API schema discovery and protection by the Web Application Firewall (WAF). Support is for Vert.x >= 4.x (leverages new JSON response API introduced in v4.x)
Motivation
Additional Notes
Contributor Checklist
type:
and (comp:
orinst:
) labels in addition to any usefull labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: APPSEC-57920