-
Notifications
You must be signed in to change notification settings - Fork 293
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
Preserve getQualifier from spring scheduling runnables #8293
Conversation
Hi! 👋 Thanks for your pull request! 🎉 To help us review it, please make sure to:
If you need help, please check our contributing guidelines. |
f689e83
to
9a74332
Compare
9a74332
to
de83937
Compare
BenchmarksStartupParameters
See matching parameters
SummaryFound 1 performance improvements and 3 performance regressions! Performance is the same for 50 metrics, 9 unstable metrics.
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.46.0-SNAPSHOT~10105acd79, baseline=1.46.0-SNAPSHOT~95f2490e06
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.036 s) : 0, 1036311
Total [baseline] (10.451 s) : 0, 10451018
Agent [candidate] (1.041 s) : 0, 1040796
Total [candidate] (10.428 s) : 0, 10427838
section appsec
Agent [baseline] (1.181 s) : 0, 1180592
Total [baseline] (10.763 s) : 0, 10763459
Agent [candidate] (1.183 s) : 0, 1182662
Total [candidate] (10.73 s) : 0, 10730377
section iast
Agent [baseline] (1.168 s) : 0, 1167634
Total [baseline] (10.947 s) : 0, 10947415
Agent [candidate] (1.169 s) : 0, 1169480
Total [candidate] (10.907 s) : 0, 10907256
section profiling
Agent [baseline] (1.266 s) : 0, 1265613
Total [baseline] (10.912 s) : 0, 10911857
Agent [candidate] (1.259 s) : 0, 1258709
Total [candidate] (10.924 s) : 0, 10923532
gantt
title petclinic - break down per module: candidate=1.46.0-SNAPSHOT~10105acd79, baseline=1.46.0-SNAPSHOT~95f2490e06
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (714.8 ms) : 0, 714800
BytebuddyAgent [candidate] (715.827 ms) : 0, 715827
GlobalTracer [baseline] (239.593 ms) : 0, 239593
GlobalTracer [candidate] (240.322 ms) : 0, 240322
AppSec [baseline] (55.336 ms) : 0, 55336
AppSec [candidate] (55.424 ms) : 0, 55424
Remote Config [baseline] (714.396 µs) : 0, 714
Remote Config [candidate] (719.39 µs) : 0, 719
Telemetry [baseline] (10.674 ms) : 0, 10674
Telemetry [candidate] (13.204 ms) : 0, 13204
section appsec
BytebuddyAgent [baseline] (731.139 ms) : 0, 731139
BytebuddyAgent [candidate] (733.598 ms) : 0, 733598
GlobalTracer [baseline] (237.488 ms) : 0, 237488
GlobalTracer [candidate] (237.544 ms) : 0, 237544
AppSec [baseline] (176.539 ms) : 0, 176539
AppSec [candidate] (177.184 ms) : 0, 177184
IAST [baseline] (21.679 ms) : 0, 21679
IAST [candidate] (19.426 ms) : 0, 19426
Remote Config [baseline] (656.833 µs) : 0, 657
Remote Config [candidate] (658.477 µs) : 0, 658
Telemetry [baseline] (8.693 ms) : 0, 8693
Telemetry [candidate] (8.622 ms) : 0, 8622
section iast
BytebuddyAgent [baseline] (833.113 ms) : 0, 833113
BytebuddyAgent [candidate] (833.909 ms) : 0, 833909
GlobalTracer [baseline] (230.453 ms) : 0, 230453
GlobalTracer [candidate] (230.861 ms) : 0, 230861
AppSec [baseline] (53.786 ms) : 0, 53786
AppSec [candidate] (58.432 ms) : 0, 58432
IAST [baseline] (25.558 ms) : 0, 25558
IAST [candidate] (21.474 ms) : 0, 21474
Remote Config [baseline] (622.094 µs) : 0, 622
Remote Config [candidate] (671.274 µs) : 0, 671
Telemetry [baseline] (8.745 ms) : 0, 8745
Telemetry [candidate] (8.805 ms) : 0, 8805
section profiling
BytebuddyAgent [baseline] (710.562 ms) : 0, 710562
BytebuddyAgent [candidate] (705.828 ms) : 0, 705828
GlobalTracer [baseline] (352.454 ms) : 0, 352454
GlobalTracer [candidate] (351.346 ms) : 0, 351346
AppSec [baseline] (54.952 ms) : 0, 54952
AppSec [candidate] (54.409 ms) : 0, 54409
Remote Config [baseline] (699.155 µs) : 0, 699
Remote Config [candidate] (715.283 µs) : 0, 715
Telemetry [baseline] (8.97 ms) : 0, 8970
Telemetry [candidate] (8.95 ms) : 0, 8950
ProfilingAgent [baseline] (95.478 ms) : 0, 95478
ProfilingAgent [candidate] (95.216 ms) : 0, 95216
Profiling [baseline] (95.503 ms) : 0, 95503
Profiling [candidate] (95.241 ms) : 0, 95241
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.46.0-SNAPSHOT~10105acd79, baseline=1.46.0-SNAPSHOT~95f2490e06
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.04 s) : 0, 1040229
Total [baseline] (8.634 s) : 0, 8634285
Agent [candidate] (1.038 s) : 0, 1038435
Total [candidate] (8.632 s) : 0, 8632027
section iast
Agent [baseline] (1.173 s) : 0, 1173200
Total [baseline] (9.25 s) : 0, 9249663
Agent [candidate] (1.169 s) : 0, 1168850
Total [candidate] (9.209 s) : 0, 9209281
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.168 s) : 0, 1167957
Total [baseline] (9.176 s) : 0, 9176133
Agent [candidate] (1.177 s) : 0, 1177131
Total [candidate] (9.218 s) : 0, 9217619
section iast_TELEMETRY_OFF
Agent [baseline] (1.179 s) : 0, 1179220
Total [baseline] (9.285 s) : 0, 9284870
Agent [candidate] (1.166 s) : 0, 1165593
Total [candidate] (9.212 s) : 0, 9211728
gantt
title insecure-bank - break down per module: candidate=1.46.0-SNAPSHOT~10105acd79, baseline=1.46.0-SNAPSHOT~95f2490e06
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (715.306 ms) : 0, 715306
BytebuddyAgent [candidate] (714.787 ms) : 0, 714787
GlobalTracer [baseline] (240.211 ms) : 0, 240211
GlobalTracer [candidate] (240.341 ms) : 0, 240341
AppSec [baseline] (55.585 ms) : 0, 55585
AppSec [candidate] (55.109 ms) : 0, 55109
Remote Config [baseline] (720.226 µs) : 0, 720
Remote Config [candidate] (711.74 µs) : 0, 712
Telemetry [baseline] (13.175 ms) : 0, 13175
Telemetry [candidate] (12.188 ms) : 0, 12188
section iast
BytebuddyAgent [baseline] (837.801 ms) : 0, 837801
BytebuddyAgent [candidate] (833.67 ms) : 0, 833670
GlobalTracer [baseline] (231.109 ms) : 0, 231109
GlobalTracer [candidate] (230.878 ms) : 0, 230878
AppSec [baseline] (55.527 ms) : 0, 55527
AppSec [candidate] (58.347 ms) : 0, 58347
IAST [baseline] (24.08 ms) : 0, 24080
IAST [candidate] (21.258 ms) : 0, 21258
Remote Config [baseline] (625.637 µs) : 0, 626
Remote Config [candidate] (656.733 µs) : 0, 657
Telemetry [baseline] (8.685 ms) : 0, 8685
Telemetry [candidate] (8.74 ms) : 0, 8740
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (833.854 ms) : 0, 833854
BytebuddyAgent [candidate] (840.025 ms) : 0, 840025
GlobalTracer [baseline] (230.577 ms) : 0, 230577
GlobalTracer [candidate] (232.252 ms) : 0, 232252
AppSec [baseline] (53.378 ms) : 0, 53378
AppSec [candidate] (57.767 ms) : 0, 57767
IAST [baseline] (25.636 ms) : 0, 25636
IAST [candidate] (22.284 ms) : 0, 22284
Remote Config [baseline] (613.815 µs) : 0, 614
Remote Config [candidate] (647.163 µs) : 0, 647
Telemetry [baseline] (8.613 ms) : 0, 8613
Telemetry [candidate] (8.736 ms) : 0, 8736
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (841.883 ms) : 0, 841883
BytebuddyAgent [candidate] (831.192 ms) : 0, 831192
GlobalTracer [baseline] (232.478 ms) : 0, 232478
GlobalTracer [candidate] (230.637 ms) : 0, 230637
AppSec [baseline] (55.197 ms) : 0, 55197
AppSec [candidate] (58.194 ms) : 0, 58194
IAST [baseline] (24.794 ms) : 0, 24794
IAST [candidate] (20.952 ms) : 0, 20952
Remote Config [baseline] (625.291 µs) : 0, 625
Remote Config [candidate] (669.089 µs) : 0, 669
Telemetry [baseline] (8.857 ms) : 0, 8857
Telemetry [candidate] (8.695 ms) : 0, 8695
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 16 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.46.0-SNAPSHOT~10105acd79, baseline=1.46.0-SNAPSHOT~95f2490e06
dateFormat X
axisFormat %s
section baseline
no_agent (384.138 µs) : 363, 405
. : milestone, 384,
iast (513.166 µs) : 490, 537
. : milestone, 513,
iast_FULL (751.541 µs) : 728, 775
. : milestone, 752,
iast_GLOBAL (555.388 µs) : 532, 579
. : milestone, 555,
iast_HARDCODED_SECRET_DISABLED (513.485 µs) : 491, 536
. : milestone, 513,
iast_INACTIVE (464.269 µs) : 443, 486
. : milestone, 464,
iast_TELEMETRY_OFF (504.502 µs) : 480, 529
. : milestone, 505,
tracing (456.414 µs) : 433, 480
. : milestone, 456,
section candidate
no_agent (377.464 µs) : 358, 397
. : milestone, 377,
iast (509.556 µs) : 488, 531
. : milestone, 510,
iast_FULL (739.695 µs) : 718, 762
. : milestone, 740,
iast_GLOBAL (565.666 µs) : 543, 588
. : milestone, 566,
iast_HARDCODED_SECRET_DISABLED (504.485 µs) : 482, 527
. : milestone, 504,
iast_INACTIVE (460.617 µs) : 440, 482
. : milestone, 461,
iast_TELEMETRY_OFF (497.972 µs) : 476, 520
. : milestone, 498,
tracing (454.308 µs) : 434, 475
. : milestone, 454,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.46.0-SNAPSHOT~10105acd79, baseline=1.46.0-SNAPSHOT~95f2490e06
dateFormat X
axisFormat %s
section baseline
no_agent (1.352 ms) : 1332, 1372
. : milestone, 1352,
appsec (1.751 ms) : 1727, 1774
. : milestone, 1751,
appsec_no_iast (1.763 ms) : 1740, 1787
. : milestone, 1763,
iast (1.498 ms) : 1474, 1523
. : milestone, 1498,
profiling (1.544 ms) : 1520, 1568
. : milestone, 1544,
tracing (1.496 ms) : 1472, 1520
. : milestone, 1496,
section candidate
no_agent (1.369 ms) : 1349, 1389
. : milestone, 1369,
appsec (1.761 ms) : 1737, 1784
. : milestone, 1761,
appsec_no_iast (1.764 ms) : 1740, 1789
. : milestone, 1764,
iast (1.516 ms) : 1492, 1540
. : milestone, 1516,
profiling (1.495 ms) : 1471, 1519
. : milestone, 1495,
tracing (1.494 ms) : 1469, 1520
. : milestone, 1494,
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.46.0-SNAPSHOT~10105acd79, baseline=1.46.0-SNAPSHOT~95f2490e06
dateFormat X
axisFormat %s
section baseline
no_agent (15.278 s) : 15278000, 15278000
. : milestone, 15278000,
appsec (15.119 s) : 15119000, 15119000
. : milestone, 15119000,
iast (18.638 s) : 18638000, 18638000
. : milestone, 18638000,
iast_GLOBAL (18.092 s) : 18092000, 18092000
. : milestone, 18092000,
profiling (15.132 s) : 15132000, 15132000
. : milestone, 15132000,
tracing (15.119 s) : 15119000, 15119000
. : milestone, 15119000,
section candidate
no_agent (15.613 s) : 15613000, 15613000
. : milestone, 15613000,
appsec (15.047 s) : 15047000, 15047000
. : milestone, 15047000,
iast (19.063 s) : 19063000, 19063000
. : milestone, 19063000,
iast_GLOBAL (17.822 s) : 17822000, 17822000
. : milestone, 17822000,
profiling (15.02 s) : 15020000, 15020000
. : milestone, 15020000,
tracing (14.824 s) : 14824000, 14824000
. : milestone, 14824000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.46.0-SNAPSHOT~10105acd79, baseline=1.46.0-SNAPSHOT~95f2490e06
dateFormat X
axisFormat %s
section baseline
no_agent (1.474 ms) : 1463, 1485
. : milestone, 1474,
appsec (2.364 ms) : 2321, 2408
. : milestone, 2364,
iast (2.118 ms) : 2063, 2173
. : milestone, 2118,
iast_GLOBAL (2.163 ms) : 2108, 2218
. : milestone, 2163,
profiling (1.986 ms) : 1943, 2030
. : milestone, 1986,
tracing (1.958 ms) : 1915, 2000
. : milestone, 1958,
section candidate
no_agent (1.474 ms) : 1462, 1486
. : milestone, 1474,
appsec (2.365 ms) : 2322, 2408
. : milestone, 2365,
iast (2.121 ms) : 2067, 2176
. : milestone, 2121,
iast_GLOBAL (2.153 ms) : 2098, 2207
. : milestone, 2153,
profiling (1.976 ms) : 1932, 2020
. : milestone, 1976,
tracing (1.948 ms) : 1906, 1990
. : milestone, 1948,
|
...ain/java/datadog/trace/instrumentation/springscheduling/SpringSchedulingRunnableWrapper.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.
+1 ... just a small question about the class-loader used for the method handle
I especially appreciate all the extensive tests!
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | [com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `2.25.4` -> `2.26.0` | | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.45.2` -> `1.46.0` | | [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.45.2` -> `1.46.0` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.9` -> `2.30.10` | --- ### Release Notes <details> <summary>googleapis/java-datastore (com.google.cloud:google-cloud-datastore)</summary> ### [`v2.26.0`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2260-2025-01-29) ##### Features - Add firestoreInDatastoreMode for datastore emulator ([#​1698](googleapis/java-datastore#1698)) ([50f106d](googleapis/java-datastore@50f106d)) ##### Dependencies - Update dependency com.google.cloud:sdk-platform-java-config to v3.42.0 ([#​1725](googleapis/java-datastore#1725)) ([1cbaf22](googleapis/java-datastore@1cbaf22)) </details> <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.46.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.46.0): 1.46.0 ##### Breaking Changes > \[!WARNING] > jnr-unixsocket is now an external dependency of dd-trace-ot and must be included when deploying dd-trace-ot. > \[!NOTE] > The API `TracerScope.setAsync(boolean)`, used to manually control asynchronous span propagation, does no more apply to the scope instance but to the active span scope. ##### Components ##### Application Security Management (IAST) - 🐛 Fix String.replace instrumentation for IAST ([#​8281](DataDog/dd-trace-java#8281) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Apply the standard nomenclature to the stacktrace configs ([#​8244](DataDog/dd-trace-java#8244) - [@​jandro996](https://github.com/jandro996)) - 🐛 Exclude false positive weak randomness ([#​8232](DataDog/dd-trace-java#8232) - [@​jandro996](https://github.com/jandro996)) - ✨ Propagation of translateEscapes of String class ([#​8186](DataDog/dd-trace-java#8186) - [@​sezen-datadog](https://github.com/sezen-datadog)) - ✨ Add security control metrics ([#​8175](DataDog/dd-trace-java#8175) - [@​jandro996](https://github.com/jandro996)) - ✨ Increase IAST propagation to StringBuffer setLength ([#​8128](DataDog/dd-trace-java#8128) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Add IAST taint tracking for DB values ([#​8072](DataDog/dd-trace-java#8072) - [@​Mariovido](https://github.com/Mariovido)) ##### Application Security Management (WAF) - 🐛 Prevents a NPE when there is no subscriber for user events ([#​8258](DataDog/dd-trace-java#8258) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Apply the standard nomenclature to the stacktrace configs ([#​8244](DataDog/dd-trace-java#8244) - [@​jandro996](https://github.com/jandro996)) - 🐛 Ensure cached subscriptions are cleared on reconfiguration via RC ([#​8229](DataDog/dd-trace-java#8229) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Add support for session tracking in Vertx ([#​8167](DataDog/dd-trace-java#8167) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Create span tag: \_dd.appsec.rasp.timeout ([#​8269](DataDog/dd-trace-java#8269) - [@​Mariovido](https://github.com/Mariovido)) ##### Build & Tooling - 🐛 Ensure shaded helpers have unique names when injected into class-loaders ([#​8192](DataDog/dd-trace-java#8192) - [@​mcculls](https://github.com/mcculls)) ##### Configuration at Runtime - 🐛 Remove filtering of `DD_SERVICE` and `DD_ENV` from the tracer ([#​8176](DataDog/dd-trace-java#8176) - [@​mhlidd](https://github.com/mhlidd)) ##### Continuous Integration Visibility - 🧹 Generalize TestRetryPolicy to TestExecutionPolicy ([#​8302](DataDog/dd-trace-java#8302) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🧹 Parallelize CI Visibility settings requests ([#​8299](DataDog/dd-trace-java#8299) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🧹 Generalize test retry logic ([#​8289](DataDog/dd-trace-java#8289) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🧹 Generalize tests skipping logic ([#​8288](DataDog/dd-trace-java#8288) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🧹 Remove skip and shouldBeSkipped methods from TestEventsHandler in favor of isSkippable ([#​8286](DataDog/dd-trace-java#8286) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨⚡ Optimize Git repository information computation ([#​8270](DataDog/dd-trace-java#8270) - [@​dougqh](https://github.com/dougqh)) - ✨ Always request known tests from the backend ([#​8268](DataDog/dd-trace-java#8268) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Fix NPE when trying to get retry analyzer in Test NG ([#​8253](DataDog/dd-trace-java#8253) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Set test framework and test framework version tags atomically ([#​8252](DataDog/dd-trace-java#8252) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add debug logging to Android Gradle module layout logic ([#​8251](DataDog/dd-trace-java#8251) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix source and destination folders computation for Android Gradle projects ([#​8190](DataDog/dd-trace-java#8190) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add basic Scala Weaver sbt support ([#​8189](DataDog/dd-trace-java#8189) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement impacted tests detection ([#​8188](DataDog/dd-trace-java#8188) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) ##### Data Streams Monitoring - ✨ Change hash computation for protobuf to better represent impacting changes + save proto number in schema ([#​8201](DataDog/dd-trace-java#8201) - [@​vandonr](https://github.com/vandonr)) ##### Database Monitoring - Add peer service tag in dbm sql commenter ([#​7913](DataDog/dd-trace-java#7913) - [@​jordan-wong](https://github.com/jordan-wong)) ##### Dynamic Instrumentation - ✨ Add support for SymDB to scan directories ([#​8306](DataDog/dd-trace-java#8306) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add SymDB report for any jar scanning failures ([#​8300](DataDog/dd-trace-java#8300) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Use two budgets depending on type ([#​8283](DataDog/dd-trace-java#8283) - [@​evanchooly](https://github.com/evanchooly)) - ✨ Institute a 10 snapshot per probe per trace budget ([#​8277](DataDog/dd-trace-java#8277) - [@​evanchooly](https://github.com/evanchooly)) - 🐛 Avoid double snapshots for Exception Replay ([#​8273](DataDog/dd-trace-java#8273) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Simplify code origins. Separate out snapshot generation. ([#​8263](DataDog/dd-trace-java#8263) - [@​evanchooly](https://github.com/evanchooly)) - ✨ Add Exception probe custom instrumentation ([#​8230](DataDog/dd-trace-java#8230) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Enhance log probes to honor debug session tags ([#​8215](DataDog/dd-trace-java#8215) - [@​evanchooly](https://github.com/evanchooly)) - 🐛 Don't redact env tokens from debugger probe snapshots ([#​8211](DataDog/dd-trace-java#8211) - [@​watson](https://github.com/watson)) - ✨⚡ Move Trace/SpanId capture at commit time ([#​8184](DataDog/dd-trace-java#8184) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Capture values at entry for method probe ([#​8169](DataDog/dd-trace-java#8169) - [@​jpbempel](https://github.com/jpbempel)) ##### JMX fetch - 🐛 Mute JMXFetch Shutdown in progress error ([#​8068](DataDog/dd-trace-java#8068) - [@​ygree](https://github.com/ygree)) ##### OpenTracing -⚠️ 🧹 Make jnr-unixsocket an explicit dependency of dd-trace-ot ([#​8307](DataDog/dd-trace-java#8307) - [@​mcculls](https://github.com/mcculls)) ##### Profiling - 🐛 Avoid unsupported API call for creating folders on windows ([#​8304](DataDog/dd-trace-java#8304) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Tag profiles for serverless ([#​8279](DataDog/dd-trace-java#8279) - [@​jbachorik](https://github.com/jbachorik)) - ✨ add queue type and length to queue events ([#​8242](DataDog/dd-trace-java#8242) - [@​richardstartin](https://github.com/richardstartin)) - 🐛 TempLocationManager Fixes and Improvements ([#​8191](DataDog/dd-trace-java#8191) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Bump ddprof to 1.18.0 ([#​8173](DataDog/dd-trace-java#8173) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Report profiler initialization and configuration errors to telemetry ([#​8171](DataDog/dd-trace-java#8171) - [@​jbachorik](https://github.com/jbachorik)) ##### Telemetry - ✨ Add pending traces report in tracer flares ([#​8053](DataDog/dd-trace-java#8053) - [@​mhlidd](https://github.com/mhlidd)) ##### Testing - ✨ Test http server requests in parallel ([#​8222](DataDog/dd-trace-java#8222) - [@​amarziali](https://github.com/amarziali)) ##### Trace context propagation - ✨ Add non default propagator registration ([#​8310](DataDog/dd-trace-java#8310) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) ##### Tracer core - ✨ Probe for existence of IBMSASL or ACCP security providers ([#​8276](DataDog/dd-trace-java#8276) - [@​mcculls](https://github.com/mcculls)) - ✨⚡ Overhead improvement to agent feedback based sampling ([#​8265](DataDog/dd-trace-java#8265) - [@​dougqh](https://github.com/dougqh)) - 🧹 Move async propagation API from scope to tracer ([#​8231](DataDog/dd-trace-java#8231) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ Introduce context propagation API ([#​8161](DataDog/dd-trace-java#8161) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨🧪 Use env-entry to add tags per webapp deployment ([#​8138](DataDog/dd-trace-java#8138) - [@​amarziali](https://github.com/amarziali)) - ✨ Introduce context helpers API ([#​8134](DataDog/dd-trace-java#8134) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ Support IPv6 values for `DD_AGENT_HOST` and `DD_TRACE_AGENT_URL` ([#​7984](DataDog/dd-trace-java#7984) - [@​mhlidd](https://github.com/mhlidd)) ##### Instrumentations ##### Apache HttpComponents - 🐛 Properly finish spans and support latest apache httpclient5 ([#​8272](DataDog/dd-trace-java#8272) - [@​amarziali](https://github.com/amarziali)) ##### AWS Lambda instrumentation - 🐛 Properly capture lambda payloads for all handler types. ([#​8264](DataDog/dd-trace-java#8264) - [@​purple4reina](https://github.com/purple4reina)) ##### AWS S3 instrumentation - 💡 Create S3 instrumentation + add span pointers ([#​8075](DataDog/dd-trace-java#8075) - [@​nhulston](https://github.com/nhulston)) ##### AWS SDK instrumentation - 🐛 Revert "Add avoid double instrumenting lambda non-streaming handlers." ([#​8247](DataDog/dd-trace-java#8247) - [@​nhulston](https://github.com/nhulston)) ##### Cassandra - ✨ Allow extracting keyspace from statement result ([#​8239](DataDog/dd-trace-java#8239) - [@​amarziali](https://github.com/amarziali)) ##### Core Java language instrumentation - ✨ Propagation of translateEscapes of String class ([#​8186](DataDog/dd-trace-java#8186) - [@​sezen-datadog](https://github.com/sezen-datadog)) ##### Eclipse Vert.x instrumentation - 🐛 Fix vertx worker propagation and error handling ([#​8237](DataDog/dd-trace-java#8237) - [@​amarziali](https://github.com/amarziali)) - ✨ Support vertx 5 ([#​8220](DataDog/dd-trace-java#8220) - [@​amarziali](https://github.com/amarziali)) - ✨ Add support for session tracking in Vertx ([#​8167](DataDog/dd-trace-java#8167) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) ##### Kafka instrumentation - 🐛 Prevent possible NPE calculating Kafka record header size ([#​8292](DataDog/dd-trace-java#8292) - [@​ygree](https://github.com/ygree)) ##### Mule instrumentation - 🐛 Fix crash using Mule with JPMS ([#​8187](DataDog/dd-trace-java#8187) - [@​amarziali](https://github.com/amarziali)) ##### Protocol Buffer instrumentation - ✨ Change hash computation for protobuf to better represent impacting changes + save proto number in schema ([#​8201](DataDog/dd-trace-java#8201) - [@​vandonr](https://github.com/vandonr)) ##### Spring instrumentation - 🐛 Preserve getQualifier from spring scheduling runnables ([#​8293](DataDog/dd-trace-java#8293) - [@​amarziali](https://github.com/amarziali)) </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**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, 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: bb09d47e4eed77a003f630273b4d0a84003eb899
What Does This Do
Starting from spring scheduling 6.1 the
@Scheduled
annotation allows specifying the scheduler to be used in case there are more than one defined in the bean factory.Since we are wrapping those
Runnable
(they areSchedulingAwareRunnable
) the spring annotation postprocessor does not recognise them being of this type and so it does not callgetQualifier
that is returning the scheduler to be used.Hence a default thread pool scheduler is used. This causes the instrumented application not to use the right schedulers.
This fix is subclassing correctly the Runnable and when
getQualifier
is defined (starting from 6.1) delegate that call to the wrapped objectMotivation
Additional Notes
Solves #7830
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: [PROJ-IDENT]