-
Notifications
You must be signed in to change notification settings - Fork 302
Fix Exception Replay with Lambda proxy classes #8452
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
Conversation
Debugger benchmarksParameters
See matching parameters
SummaryFound 0 performance improvements and 5 performance regressions! Performance is the same for 4 metrics, 6 unstable metrics.
See unchanged results
Request duration reports for reportsgantt
title reports - request duration [CI 0.99] : candidate=None, baseline=None
dateFormat X
axisFormat %s
section baseline
noprobe (303.781 µs) : 278, 329
. : milestone, 304,
basic (306.633 µs) : 299, 315
. : milestone, 307,
loop (10.117 ms) : 10076, 10157
. : milestone, 10117,
section candidate
noprobe (308.465 µs) : 266, 351
. : milestone, 308,
basic (311.261 µs) : 301, 322
. : milestone, 311,
loop (10.841 ms) : 10823, 10860
. : milestone, 10841,
|
If JVM is started with -XX:+ShowhiddenFrames lambda proxy classes dynamically generated are shown in the stacktraces which may be used in the fingerprinting for Exception Replay. The proxy class generated contains an id that is different for each loading of the class. Upon re-transformation this id is changing which led to a different fingerprint for the same stacktrace which will trigger a new instrumentation and a re-transformation. And again new fingerprint... We are fixing this by filtering out lambda proxy classes if detected.
580f347
to
dc5b1cc
Compare
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 57 metrics, 6 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.47.0-SNAPSHOT~dc5b1cc044, baseline=1.47.0-SNAPSHOT~0d8268a3bf
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.036 s) : 0, 1035548
Total [baseline] (10.399 s) : 0, 10398785
Agent [candidate] (1.045 s) : 0, 1045033
Total [candidate] (10.432 s) : 0, 10431654
section appsec
Agent [baseline] (1.189 s) : 0, 1189031
Total [baseline] (10.8 s) : 0, 10800485
Agent [candidate] (1.189 s) : 0, 1188747
Total [candidate] (10.778 s) : 0, 10778151
section iast
Agent [baseline] (1.176 s) : 0, 1175852
Total [baseline] (10.919 s) : 0, 10918643
Agent [candidate] (1.172 s) : 0, 1171669
Total [candidate] (10.973 s) : 0, 10973446
section profiling
Agent [baseline] (1.27 s) : 0, 1270258
Total [baseline] (10.894 s) : 0, 10894084
Agent [candidate] (1.265 s) : 0, 1264590
Total [candidate] (10.871 s) : 0, 10870979
gantt
title petclinic - break down per module: candidate=1.47.0-SNAPSHOT~dc5b1cc044, baseline=1.47.0-SNAPSHOT~0d8268a3bf
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (714.441 ms) : 0, 714441
BytebuddyAgent [candidate] (721.776 ms) : 0, 721776
GlobalTracer [baseline] (238.601 ms) : 0, 238601
GlobalTracer [candidate] (240.686 ms) : 0, 240686
AppSec [baseline] (55.525 ms) : 0, 55525
AppSec [candidate] (56.137 ms) : 0, 56137
Remote Config [baseline] (699.668 µs) : 0, 700
Remote Config [candidate] (706.886 µs) : 0, 707
Telemetry [baseline] (11.41 ms) : 0, 11410
Telemetry [candidate] (10.814 ms) : 0, 10814
section appsec
BytebuddyAgent [baseline] (738.914 ms) : 0, 738914
BytebuddyAgent [candidate] (738.88 ms) : 0, 738880
GlobalTracer [baseline] (237.4 ms) : 0, 237400
GlobalTracer [candidate] (237.64 ms) : 0, 237640
AppSec [baseline] (177.758 ms) : 0, 177758
AppSec [candidate] (177.24 ms) : 0, 177240
Remote Config [baseline] (669.385 µs) : 0, 669
Remote Config [candidate] (663.273 µs) : 0, 663
Telemetry [baseline] (8.349 ms) : 0, 8349
Telemetry [candidate] (8.357 ms) : 0, 8357
IAST [baseline] (21.822 ms) : 0, 21822
IAST [candidate] (21.81 ms) : 0, 21810
section iast
BytebuddyAgent [baseline] (840.99 ms) : 0, 840990
BytebuddyAgent [candidate] (837.552 ms) : 0, 837552
GlobalTracer [baseline] (230.244 ms) : 0, 230244
GlobalTracer [candidate] (230.022 ms) : 0, 230022
AppSec [baseline] (57.245 ms) : 0, 57245
AppSec [candidate] (56.953 ms) : 0, 56953
Remote Config [baseline] (623.91 µs) : 0, 624
Remote Config [candidate] (598.248 µs) : 0, 598
Telemetry [baseline] (8.788 ms) : 0, 8788
Telemetry [candidate] (8.678 ms) : 0, 8678
IAST [baseline] (22.936 ms) : 0, 22936
IAST [candidate] (22.824 ms) : 0, 22824
section profiling
ProfilingAgent [baseline] (97.14 ms) : 0, 97140
ProfilingAgent [candidate] (97.143 ms) : 0, 97143
BytebuddyAgent [baseline] (714.491 ms) : 0, 714491
BytebuddyAgent [candidate] (711.957 ms) : 0, 711957
GlobalTracer [baseline] (352.347 ms) : 0, 352347
GlobalTracer [candidate] (350.405 ms) : 0, 350405
AppSec [baseline] (55.91 ms) : 0, 55910
AppSec [candidate] (54.833 ms) : 0, 54833
Remote Config [baseline] (693.153 µs) : 0, 693
Remote Config [candidate] (676.528 µs) : 0, 677
Telemetry [baseline] (9.095 ms) : 0, 9095
Telemetry [candidate] (8.989 ms) : 0, 8989
Profiling [baseline] (97.164 ms) : 0, 97164
Profiling [candidate] (97.167 ms) : 0, 97167
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.47.0-SNAPSHOT~dc5b1cc044, baseline=1.47.0-SNAPSHOT~0d8268a3bf
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.042 s) : 0, 1042455
Total [baseline] (8.695 s) : 0, 8695285
Agent [candidate] (1.036 s) : 0, 1036269
Total [candidate] (8.671 s) : 0, 8670848
section iast
Agent [baseline] (1.188 s) : 0, 1187714
Total [baseline] (9.27 s) : 0, 9270305
Agent [candidate] (1.169 s) : 0, 1169451
Total [candidate] (9.255 s) : 0, 9255172
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.171 s) : 0, 1170927
Total [baseline] (9.247 s) : 0, 9246683
Agent [candidate] (1.176 s) : 0, 1176359
Total [candidate] (9.329 s) : 0, 9328502
section iast_TELEMETRY_OFF
Agent [baseline] (1.171 s) : 0, 1170659
Total [baseline] (9.323 s) : 0, 9323119
Agent [candidate] (1.173 s) : 0, 1173498
Total [candidate] (9.259 s) : 0, 9258629
gantt
title insecure-bank - break down per module: candidate=1.47.0-SNAPSHOT~dc5b1cc044, baseline=1.47.0-SNAPSHOT~0d8268a3bf
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (718.543 ms) : 0, 718543
BytebuddyAgent [candidate] (716.1 ms) : 0, 716100
GlobalTracer [baseline] (239.455 ms) : 0, 239455
GlobalTracer [candidate] (238.943 ms) : 0, 238943
AppSec [baseline] (55.288 ms) : 0, 55288
AppSec [candidate] (55.562 ms) : 0, 55562
Remote Config [baseline] (687.345 µs) : 0, 687
Remote Config [candidate] (702.304 µs) : 0, 702
Telemetry [baseline] (13.626 ms) : 0, 13626
Telemetry [candidate] (10.051 ms) : 0, 10051
section iast
BytebuddyAgent [baseline] (849.749 ms) : 0, 849749
BytebuddyAgent [candidate] (835.384 ms) : 0, 835384
GlobalTracer [baseline] (232.208 ms) : 0, 232208
GlobalTracer [candidate] (229.699 ms) : 0, 229699
IAST [baseline] (23.236 ms) : 0, 23236
IAST [candidate] (22.859 ms) : 0, 22859
AppSec [baseline] (57.7 ms) : 0, 57700
AppSec [candidate] (57.203 ms) : 0, 57203
Remote Config [baseline] (624.318 µs) : 0, 624
Remote Config [candidate] (677.563 µs) : 0, 678
Telemetry [baseline] (8.886 ms) : 0, 8886
Telemetry [candidate] (8.696 ms) : 0, 8696
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (836.629 ms) : 0, 836629
BytebuddyAgent [candidate] (840.017 ms) : 0, 840017
GlobalTracer [baseline] (229.506 ms) : 0, 229506
GlobalTracer [candidate] (230.991 ms) : 0, 230991
IAST [baseline] (22.931 ms) : 0, 22931
IAST [candidate] (23.221 ms) : 0, 23221
AppSec [baseline] (57.43 ms) : 0, 57430
AppSec [candidate] (57.659 ms) : 0, 57659
Remote Config [baseline] (622.211 µs) : 0, 622
Remote Config [candidate] (622.16 µs) : 0, 622
Telemetry [baseline] (8.842 ms) : 0, 8842
Telemetry [candidate] (8.845 ms) : 0, 8845
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (837.145 ms) : 0, 837145
BytebuddyAgent [candidate] (839.016 ms) : 0, 839016
GlobalTracer [baseline] (230.068 ms) : 0, 230068
GlobalTracer [candidate] (230.57 ms) : 0, 230570
IAST [baseline] (28.508 ms) : 0, 28508
IAST [candidate] (23.166 ms) : 0, 23166
AppSec [baseline] (50.649 ms) : 0, 50649
AppSec [candidate] (56.466 ms) : 0, 56466
Remote Config [baseline] (627.041 µs) : 0, 627
Remote Config [candidate] (627.783 µs) : 0, 628
Telemetry [baseline] (8.654 ms) : 0, 8654
Telemetry [candidate] (8.599 ms) : 0, 8599
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 19 unstable metrics. Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.47.0-SNAPSHOT~dc5b1cc044, baseline=1.47.0-SNAPSHOT~0d8268a3bf
dateFormat X
axisFormat %s
section baseline
no_agent (1.365 ms) : 1345, 1384
. : milestone, 1365,
appsec (1.747 ms) : 1723, 1771
. : milestone, 1747,
appsec_no_iast (1.762 ms) : 1737, 1788
. : milestone, 1762,
code_origins (1.674 ms) : 1641, 1707
. : milestone, 1674,
iast (1.516 ms) : 1491, 1541
. : milestone, 1516,
profiling (1.564 ms) : 1539, 1590
. : milestone, 1564,
tracing (1.502 ms) : 1478, 1526
. : milestone, 1502,
section candidate
no_agent (1.355 ms) : 1336, 1375
. : milestone, 1355,
appsec (1.754 ms) : 1730, 1777
. : milestone, 1754,
appsec_no_iast (1.77 ms) : 1746, 1794
. : milestone, 1770,
code_origins (1.675 ms) : 1643, 1708
. : milestone, 1675,
iast (1.51 ms) : 1485, 1534
. : milestone, 1510,
profiling (1.513 ms) : 1489, 1537
. : milestone, 1513,
tracing (1.489 ms) : 1465, 1513
. : milestone, 1489,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.47.0-SNAPSHOT~dc5b1cc044, baseline=1.47.0-SNAPSHOT~0d8268a3bf
dateFormat X
axisFormat %s
section baseline
no_agent (382.567 µs) : 363, 402
. : milestone, 383,
iast (512.166 µs) : 490, 535
. : milestone, 512,
iast_FULL (708.606 µs) : 687, 730
. : milestone, 709,
iast_GLOBAL (561.749 µs) : 539, 584
. : milestone, 562,
iast_HARDCODED_SECRET_DISABLED (493.696 µs) : 471, 516
. : milestone, 494,
iast_INACTIVE (427.541 µs) : 407, 449
. : milestone, 428,
iast_TELEMETRY_OFF (462.845 µs) : 440, 486
. : milestone, 463,
tracing (451.631 µs) : 430, 473
. : milestone, 452,
section candidate
no_agent (379.998 µs) : 360, 400
. : milestone, 380,
iast (512.806 µs) : 491, 535
. : milestone, 513,
iast_FULL (728.812 µs) : 707, 751
. : milestone, 729,
iast_GLOBAL (556.244 µs) : 534, 578
. : milestone, 556,
iast_HARDCODED_SECRET_DISABLED (514.455 µs) : 492, 537
. : milestone, 514,
iast_INACTIVE (462.622 µs) : 441, 485
. : milestone, 463,
iast_TELEMETRY_OFF (498.59 µs) : 475, 522
. : milestone, 499,
tracing (453.96 µs) : 433, 475
. : milestone, 454,
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 tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.47.0-SNAPSHOT~dc5b1cc044, baseline=1.47.0-SNAPSHOT~0d8268a3bf
dateFormat X
axisFormat %s
section baseline
no_agent (1.475 ms) : 1464, 1487
. : milestone, 1475,
appsec (2.385 ms) : 2340, 2429
. : milestone, 2385,
iast (2.123 ms) : 2067, 2179
. : milestone, 2123,
iast_GLOBAL (2.171 ms) : 2114, 2227
. : milestone, 2171,
profiling (1.976 ms) : 1932, 2020
. : milestone, 1976,
tracing (1.961 ms) : 1918, 2004
. : milestone, 1961,
section candidate
no_agent (1.48 ms) : 1468, 1491
. : milestone, 1480,
appsec (2.393 ms) : 2349, 2437
. : milestone, 2393,
iast (2.118 ms) : 2062, 2173
. : milestone, 2118,
iast_GLOBAL (2.174 ms) : 2118, 2230
. : milestone, 2174,
profiling (1.981 ms) : 1936, 2026
. : milestone, 1981,
tracing (1.949 ms) : 1906, 1991
. : milestone, 1949,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.47.0-SNAPSHOT~dc5b1cc044, baseline=1.47.0-SNAPSHOT~0d8268a3bf
dateFormat X
axisFormat %s
section baseline
no_agent (15.481 s) : 15481000, 15481000
. : milestone, 15481000,
appsec (15.181 s) : 15181000, 15181000
. : milestone, 15181000,
iast (19.072 s) : 19072000, 19072000
. : milestone, 19072000,
iast_GLOBAL (18.382 s) : 18382000, 18382000
. : milestone, 18382000,
profiling (14.926 s) : 14926000, 14926000
. : milestone, 14926000,
tracing (15.018 s) : 15018000, 15018000
. : milestone, 15018000,
section candidate
no_agent (15.478 s) : 15478000, 15478000
. : milestone, 15478000,
appsec (15.027 s) : 15027000, 15027000
. : milestone, 15027000,
iast (18.41 s) : 18410000, 18410000
. : milestone, 18410000,
iast_GLOBAL (17.696 s) : 17696000, 17696000
. : milestone, 17696000,
profiling (15.721 s) : 15721000, 15721000
. : milestone, 15721000,
tracing (15.073 s) : 15073000, 15073000
. : milestone, 15073000,
|
| Package | Type | Package file | Manager | Update | Change | |---|---|---|---|---|---| | [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.46.1` -> `1.47.0` | | [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java) | dependencies | misk/gradle/libs.versions.toml | gradle | minor | `1.46.1` -> `1.47.0` | | [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:sqs](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | | [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) | dependencies | misk/gradle/libs.versions.toml | gradle | patch | `2.30.33` -> `2.30.34` | --- ### Release Notes <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.47.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.47.0): 1.47.0 ##### Components ##### Application Security Management (IAST) - 🐛 Exclude com.stripe.net.HttpURLConnectionClient to solve IAST SSRF vulnerability false positives ([#​8483](DataDog/dd-trace-java#8483) - [@​jandro996](https://github.com/jandro996)) - 🐛 Add exclusion to solve IAST weak randomness vulnerability false positives ([#​8462](DataDog/dd-trace-java#8462) - [@​jandro996](https://github.com/jandro996)) - ✨ Fix weak randomness false positive in Kafka client ([#​8408](DataDog/dd-trace-java#8408) - [@​smola](https://github.com/smola)) - ✨ Fix location for SSRF with Kong Unirest ([#​8407](DataDog/dd-trace-java#8407) - [@​smola](https://github.com/smola)) - ✨ Exclude IBM Instana from IAST ([#​8406](DataDog/dd-trace-java#8406) - [@​smola](https://github.com/smola)) - 🐛 Fix org.json iast instrumentation test for latest dependency ([#​8347](DataDog/dd-trace-java#8347) - [@​jandro996](https://github.com/jandro996)) - ✨ Configuration to Disable APM Tracing ([#​8219](DataDog/dd-trace-java#8219) - [@​jandro996](https://github.com/jandro996)) - ✨ Address cookie vulnerability cardinality issues ([#​8210](DataDog/dd-trace-java#8210) - [@​jandro996](https://github.com/jandro996)) - ✨ Email HTML Injection detection in IAST ([#​8205](DataDog/dd-trace-java#8205) - [@​sezen-datadog](https://github.com/sezen-datadog)) ##### Application Security Management (WAF) - 🐛✨ Ensure usr.exists tag is not overridden when UsernameNotFoundException is thrown ([#​8376](DataDog/dd-trace-java#8376) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - 🐛✨ Ensure usr.exists tag is not overridden by auto instrumentation ([#​8374](DataDog/dd-trace-java#8374) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Update appsec metrics with event_rules_version tag ([#​8354](DataDog/dd-trace-java#8354) - [@​sezen-datadog](https://github.com/sezen-datadog)) - ✨ Update metrics: appsec.waf.requests ([#​8353](DataDog/dd-trace-java#8353) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Improve ASM support in vert.x 5.0 ([#​8285](DataDog/dd-trace-java#8285) - [@​manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez)) - ✨ Update metrics: appsec.waf.updates and appsec.waf.init ([#​8280](DataDog/dd-trace-java#8280) - [@​Mariovido](https://github.com/Mariovido)) - ✨ Configuration to Disable APM Tracing ([#​8219](DataDog/dd-trace-java#8219) - [@​jandro996](https://github.com/jandro996)) ##### Build & Tooling - 🐛 Do not generate Muzzle references for primitive arrays in method body ([#​8361](DataDog/dd-trace-java#8361) - [@​amarziali](https://github.com/amarziali)) - 📖 Improve dev env setup documentation for Windows ([#​8180](DataDog/dd-trace-java#8180) - [@​lucaspimentel](https://github.com/lucaspimentel)) ##### Continuous Integration Visibility - ✨ Add support for skip-EFD tagging ([#​8487](DataDog/dd-trace-java#8487) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix an NPE in Gradle Android instrumentation ([#​8484](DataDog/dd-trace-java#8484) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Consider modified tests when applying fail-fast tests ordering ([#​8474](DataDog/dd-trace-java#8474) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Implement tests reordering for TestNG ([#​8467](DataDog/dd-trace-java#8467) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix Gradle Launcher instrumentation to not interfere with Gradle Test Kit ([#​8465](DataDog/dd-trace-java#8465) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🧹 Use separate TestEventHandlers per framework in CI Vis instrumentations ([#​8451](DataDog/dd-trace-java#8451) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Remove warning log when JUnit 4 test method cannot be retrieved ([#​8445](DataDog/dd-trace-java#8445) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Fix Scalatest tracing for tests that are reported asynchronously ([#​8444](DataDog/dd-trace-java#8444) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Implement attempt to fix tests ([#​8393](DataDog/dd-trace-java#8393) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement test disabling ([#​8377](DataDog/dd-trace-java#8377) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Update CODEOWNERS parser to not log errors on comments with leading whitespace ([#​8349](DataDog/dd-trace-java#8349) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Request Test Management tests list ([#​8345](DataDog/dd-trace-java#8345) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Receive test management settings from CIVis settings request ([#​8331](DataDog/dd-trace-java#8331) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement quarantined tests tagging ([#​8326](DataDog/dd-trace-java#8326) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Implement tests quarantining ([#​8320](DataDog/dd-trace-java#8320) - [@​nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - ✨ Add tag to specify if the user is setting DD_SERVICE ([#​8318](DataDog/dd-trace-java#8318) - [@​daniel-mohedano](https://github.com/daniel-mohedano)) ##### Crash tracking - ✨ Only fork jps when required ([#​8419](DataDog/dd-trace-java#8419) - [@​mcculls](https://github.com/mcculls)) - 🐛 Use Java home of the crashed process to launch crash uploader ([#​8348](DataDog/dd-trace-java#8348) - [@​jbachorik](https://github.com/jbachorik)) ##### Data Streams Monitoring - 🐛 Fix error happening when sqs message attributes are readonly ([#​8473](DataDog/dd-trace-java#8473) - [@​vandonr](https://github.com/vandonr)) - 🐛 Fix bug on proto schema extraction ([#​8403](DataDog/dd-trace-java#8403) - [@​vandonr](https://github.com/vandonr)) - 🐛 Fix service name overrides in consumers ([#​8387](DataDog/dd-trace-java#8387) - [@​piochelepiotr](https://github.com/piochelepiotr)) ##### Database Monitoring - ✨ Add DBMTracePreparedStatements to tracer configuration log ([#​8508](DataDog/dd-trace-java#8508) - [@​cecile75](https://github.com/cecile75)) ##### Dynamic Instrumentation - ✨ Look in another location for grpc service methods ([#​8468](DataDog/dd-trace-java#8468) - [@​evanchooly](https://github.com/evanchooly)) - 🐛 Fix Exception Replay with Lambda proxy classes ([#​8452](DataDog/dd-trace-java#8452) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add code origin support for spring-webmvc ([#​8416](DataDog/dd-trace-java#8416) - [@​evanchooly](https://github.com/evanchooly)) - ✨ Add support for scanning jar from loaded class ([#​8370](DataDog/dd-trace-java#8370) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Disable capture of entry values ([#​8369](DataDog/dd-trace-java#8369) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Fix CodeOrigin for `@Trace` annotation ([#​8344](DataDog/dd-trace-java#8344) - [@​jpbempel](https://github.com/jpbempel)) - 🐛 Fix equals/hashCode for CodeOrigin probe ([#​8319](DataDog/dd-trace-java#8319) - [@​jpbempel](https://github.com/jpbempel)) - ✨ Add code origin support to kafka message listeners ([#​8301](DataDog/dd-trace-java#8301) - [@​evanchooly](https://github.com/evanchooly)) ##### Metrics - ✨ Create metric: appsec.waf.error ([#​8381](DataDog/dd-trace-java#8381) - [@​sezen-datadog](https://github.com/sezen-datadog)) - ✨ Create metric: appsec.rasp.error ([#​8364](DataDog/dd-trace-java#8364) - [@​sezen-datadog](https://github.com/sezen-datadog)) ##### Profiling - ✨ Bump ddprof library to 1.22.0 ([#​8463](DataDog/dd-trace-java#8463) - [@​jbachorik](https://github.com/jbachorik)) - IBM J9 8u361 corresponds to OpenJDK 8u362 by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#187 - Fix compatibility with musl libc 1.2.4 by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#189 - Modify version extraction by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#179 - Do not write null values to jvminfo event by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#184 - Productize VMStructs-based stack walker by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#177 - A few minor downport issues by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#180 - Enable ASGCT by default on fairly safe J9 JDK versions by [@​jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#181 - 🐛 Exclude OrderedThreadPoolExecutor from queue-time measurements ([#​8456](DataDog/dd-trace-java#8456) - [@​jbachorik](https://github.com/jbachorik)) - ✨ Record JVM info on JVMs without JFR ([#​8431](DataDog/dd-trace-java#8431) - [@​jbachorik](https://github.com/jbachorik)) - 🐛 Actually use CleanupTask in TempLocationManager ([#​8420](DataDog/dd-trace-java#8420) - [@​mcculls](https://github.com/mcculls)) - ✨ Only fork jps when required ([#​8419](DataDog/dd-trace-java#8419) - [@​mcculls](https://github.com/mcculls)) - 🐛 Adjust JFR checks for J9 ([#​8405](DataDog/dd-trace-java#8405) - [@​jbachorik](https://github.com/jbachorik)) - 🧹 Disable smap RSS parsing by default ([#​8342](DataDog/dd-trace-java#8342) - [@​MattAlp](https://github.com/MattAlp)) ##### Telemetry - 🐛 Add support for JBoss jar:file format to DependencyResolver ([#​8428](DataDog/dd-trace-java#8428) - [@​jandro996](https://github.com/jandro996)) - ✨ Update metrics: appsec.waf.requests ([#​8353](DataDog/dd-trace-java#8353) - [@​Mariovido](https://github.com/Mariovido)) ##### Trace context propagation - ✨ Introduce tracing propagator ([#​8313](DataDog/dd-trace-java#8313) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) ##### Tracer core - 🐛 Fix Stable Config telemetry source names ([#​8460](DataDog/dd-trace-java#8460) - [@​BaptisteFoy](https://github.com/BaptisteFoy)) - ✨ Probe trace endpoints with a valid payload of empty arrays ([#​8414](DataDog/dd-trace-java#8414) - [@​mcculls](https://github.com/mcculls)) - ✨ Add 1 minute fail-safe to JUL/JMX class-loading callback ([#​8399](DataDog/dd-trace-java#8399) - [@​mcculls](https://github.com/mcculls)) - ✨ Migrate DSM injection calls to context-first APIs ([#​8383](DataDog/dd-trace-java#8383) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - 🧹 Move continuation capture methods from scope to tracer ([#​8371](DataDog/dd-trace-java#8371) - [@​mcculls](https://github.com/mcculls)) - ✨ Migrate context extraction calls to context-first APIs ([#​8368](DataDog/dd-trace-java#8368) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - 🧹 Migrate context injection calls to context-first APIs ([#​8358](DataDog/dd-trace-java#8358) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - 💡 Support reading configurations from files ([#​8338](DataDog/dd-trace-java#8338) - [@​mtoffl01](https://github.com/mtoffl01)) - 💡 Implementation of BaggagePropagator and BaggageContext ([#​8330](DataDog/dd-trace-java#8330) - [@​mhlidd](https://github.com/mhlidd)) - 🧹 Combine continuation implementations into one which supports multiple activations ([#​8324](DataDog/dd-trace-java#8324) - [@​mcculls](https://github.com/mcculls)) - ✨ Introduce tracing propagator ([#​8313](DataDog/dd-trace-java#8313) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ Remove old context propagation API ([#​8271](DataDog/dd-trace-java#8271) - [@​PerfectSlayer](https://github.com/PerfectSlayer)) ##### Instrumentations ##### AWS Lambda instrumentation - 🐛 Send error message and stack to Lambda extension ([#​8417](DataDog/dd-trace-java#8417) - [@​nhulston](https://github.com/nhulston)) ##### AWS SDK instrumentation - 🐛 Fix error happening when sqs message attributes are readonly ([#​8473](DataDog/dd-trace-java#8473) - [@​vandonr](https://github.com/vandonr)) - 💡 Inject trace context into AWS Step Functions input ([#​7585](DataDog/dd-trace-java#7585) - [@​DylanLovesCoffee](https://github.com/DylanLovesCoffee)) ##### Core Java language instrumentation - ✨ Look in another location for grpc service methods ([#​8468](DataDog/dd-trace-java#8468) - [@​evanchooly](https://github.com/evanchooly)) - ✨ Add code origin support for spring-webmvc ([#​8416](DataDog/dd-trace-java#8416) - [@​evanchooly](https://github.com/evanchooly)) - 💡 Implementation of BaggagePropagator and BaggageContext ([#​8330](DataDog/dd-trace-java#8330) - [@​mhlidd](https://github.com/mhlidd)) - ✨ Add code origin support to kafka message listeners ([#​8301](DataDog/dd-trace-java#8301) - [@​evanchooly](https://github.com/evanchooly)) ##### gRPC instrumentation - ✨ Look in another location for grpc service methods ([#​8468](DataDog/dd-trace-java#8468) - [@​evanchooly](https://github.com/evanchooly)) ##### Kafka instrumentation - ✨ Add messaging.destination.name tag to kafka integrations ([#​8366](DataDog/dd-trace-java#8366) - [@​rarguelloF](https://github.com/rarguelloF)) ##### Protocol Buffer instrumentation - 🐛 Fix bug on proto schema extraction ([#​8403](DataDog/dd-trace-java#8403) - [@​vandonr](https://github.com/vandonr)) </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**: 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: 108a0f86aa59ab4c938cbac0688dd4c19cb301fa
What Does This Do
If JVM is started with
-XX:+ShowHiddenFrames
lambda proxy classes dynamically generated are shown in the stacktraces which may be used in the fingerprinting for Exception Replay. The proxy class generated contains an id that is different for each loading of the class. Upon re-transformation this id is changing which led to a different fingerprint for the same stacktrace which will trigger a new instrumentation and a re-transformation. And again new fingerprint... We are fixing this by filtering out lambda proxy classes if detected.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: DEBUG-3500