Skip to content
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

Refactor probe matching for methods #8021

Merged
merged 1 commit into from
Nov 26, 2024

Conversation

jpbempel
Copy link
Member

@jpbempel jpbempel commented Nov 26, 2024

What Does This Do

To be able to match probe with more flexibility (probes targeting a method with or without signature) we are iterating over all methods of a class and using Where::isMethodMatching to select probe definitions that will be apply on the current method. With this new approach we are dropping the support of overloaded methods: only one method is instrumented or a definition is applied only once.

Motivation

Additional Notes

Contributor Checklist

Jira ticket: DEBUG-3149

To be able to match probe with more flexibility (probes targeting a
method with or without signature) we are iterating over all methods
of a class and using Where::isMethodMatching to select probe
definitions that will be apply on the current method.
With this new approach we are dropping the support of overloaded
methods: only one method is instrumented or a definition is applied
only once.
@jpbempel jpbempel requested a review from a team as a code owner November 26, 2024 17:28
@jpbempel jpbempel requested review from ojung and evanchooly and removed request for a team November 26, 2024 17:28
Copy link
Contributor

github-actions bot commented Nov 26, 2024

Hi! 👋 Thanks for your pull request! 🎉

To help us review it, please make sure to:

  • Add at least one type, and one component or instrumentation label to the pull request

If you need help, please check our contributing guidelines.

@jpbempel jpbempel added comp: debugger Dynamic Instrumentation type: enhancement labels Nov 26, 2024
@pr-commenter
Copy link

pr-commenter bot commented Nov 26, 2024

Debugger benchmarks

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
ci_job_date 1732642598 1732642976
end_time 2024-11-26T17:37:55 2024-11-26T17:44:13
git_branch master jpbempel/refactor-probe-matching
git_commit_sha ac4977a f2cc473
start_time 2024-11-26T17:36:39 2024-11-26T17:42:57
See matching parameters
Baseline Candidate
ci_job_id 721048016 721048016
ci_pipeline_id 49995944 49995944
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
git_commit_date 1732642005 1732642005

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 9 metrics, 6 unstable metrics.

See unchanged results
scenario Δ mean agg_http_req_duration_min Δ mean agg_http_req_duration_p50 Δ mean agg_http_req_duration_p75 Δ mean agg_http_req_duration_p99 Δ mean throughput
scenario:noprobe unstable
[-29.003µs; +18.481µs] or [-10.725%; +6.834%]
unstable
[-40.853µs; +27.996µs] or [-13.127%; +8.996%]
unstable
[-53.922µs; +37.912µs] or [-16.506%; +11.605%]
unstable
[-97.824µs; +94.182µs] or [-16.373%; +15.764%]
same
scenario:basic same same same unstable
[-62.144µs; +26.318µs] or [-11.471%; +4.858%]
unstable
[-129.537op/s; +129.537op/s] or [-5.052%; +5.052%]
scenario:loop unsure
[-31.257µs; -10.589µs] or [-0.305%; -0.103%]
same same same same
Request duration reports for reports
gantt
    title reports - request duration [CI 0.99] : candidate=None, baseline=None
    dateFormat X
    axisFormat %s
section baseline
noprobe (311.209 µs) : 271, 351
.   : milestone, 311,
basic (302.944 µs) : 293, 313
.   : milestone, 303,
loop (10.417 ms) : 10390, 10445
.   : milestone, 10417,
section candidate
noprobe (304.781 µs) : 281, 329
.   : milestone, 305,
basic (306.359 µs) : 296, 317
.   : milestone, 306,
loop (10.405 ms) : 10369, 10442
.   : milestone, 10405,
Loading
  • baseline results
Scenario Request median duration [CI 0.99]
noprobe 311.209 µs [271.404 µs, 351.015 µs]
basic 302.944 µs [293.348 µs, 312.54 µs]
loop 10.417 ms [10.39 ms, 10.445 ms]
  • candidate results
Scenario Request median duration [CI 0.99]
noprobe 304.781 µs [280.928 µs, 328.634 µs]
basic 306.359 µs [296.003 µs, 316.714 µs]
loop 10.405 ms [10.369 ms, 10.442 ms]

Copy link
Contributor

@evanchooly evanchooly left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

much cleaner. :)

@pr-commenter
Copy link

pr-commenter bot commented Nov 26, 2024

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master jpbempel/refactor-probe-matching
git_commit_date 1732641502 1732642005
git_commit_sha ac4977a f2cc473
release_version 1.44.0-SNAPSHOT~ac4977af17 1.43.0-SNAPSHOT~f2cc4736aa
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1732644339 1732644339
ci_job_id 721048007 721048007
ci_pipeline_id 49995944 49995944
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
module Agent Agent
parent None None
variant iast iast

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 56 metrics, 7 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.43.0-SNAPSHOT~f2cc4736aa, baseline=1.44.0-SNAPSHOT~ac4977af17

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.09 s) : 0, 1089614
Total [baseline] (8.651 s) : 0, 8651396
Agent [candidate] (1.1 s) : 0, 1100454
Total [candidate] (8.689 s) : 0, 8689202
section iast
Agent [baseline] (1.228 s) : 0, 1228272
Total [baseline] (9.204 s) : 0, 9204474
Agent [candidate] (1.228 s) : 0, 1227522
Total [candidate] (9.22 s) : 0, 9220302
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.219 s) : 0, 1219245
Total [baseline] (9.21 s) : 0, 9209794
Agent [candidate] (1.218 s) : 0, 1217814
Total [candidate] (9.168 s) : 0, 9168147
section iast_TELEMETRY_OFF
Agent [baseline] (1.213 s) : 0, 1213062
Total [baseline] (9.174 s) : 0, 9174483
Agent [candidate] (1.224 s) : 0, 1223517
Total [candidate] (9.252 s) : 0, 9251588
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.09 s -
Agent iast 1.228 s 138.658 ms (12.7%)
Agent iast_HARDCODED_SECRET_DISABLED 1.219 s 129.631 ms (11.9%)
Agent iast_TELEMETRY_OFF 1.213 s 123.448 ms (11.3%)
Total tracing 8.651 s -
Total iast 9.204 s 553.078 ms (6.4%)
Total iast_HARDCODED_SECRET_DISABLED 9.21 s 558.398 ms (6.5%)
Total iast_TELEMETRY_OFF 9.174 s 523.087 ms (6.0%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.1 s -
Agent iast 1.228 s 127.068 ms (11.5%)
Agent iast_HARDCODED_SECRET_DISABLED 1.218 s 117.36 ms (10.7%)
Agent iast_TELEMETRY_OFF 1.224 s 123.063 ms (11.2%)
Total tracing 8.689 s -
Total iast 9.22 s 531.099 ms (6.1%)
Total iast_HARDCODED_SECRET_DISABLED 9.168 s 478.945 ms (5.5%)
Total iast_TELEMETRY_OFF 9.252 s 562.385 ms (6.5%)
gantt
    title insecure-bank - break down per module: candidate=1.43.0-SNAPSHOT~f2cc4736aa, baseline=1.44.0-SNAPSHOT~ac4977af17

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (693.215 ms) : 0, 693215
BytebuddyAgent [candidate] (699.255 ms) : 0, 699255
GlobalTracer [baseline] (317.529 ms) : 0, 317529
GlobalTracer [candidate] (320.959 ms) : 0, 320959
AppSec [baseline] (54.629 ms) : 0, 54629
AppSec [candidate] (55.005 ms) : 0, 55005
Remote Config [baseline] (679.444 µs) : 0, 679
Remote Config [candidate] (683.421 µs) : 0, 683
Telemetry [baseline] (9.867 ms) : 0, 9867
Telemetry [candidate] (10.631 ms) : 0, 10631
section iast
BytebuddyAgent [baseline] (818.736 ms) : 0, 818736
BytebuddyAgent [candidate] (817.753 ms) : 0, 817753
GlobalTracer [baseline] (308.515 ms) : 0, 308515
GlobalTracer [candidate] (308.541 ms) : 0, 308541
AppSec [baseline] (58.178 ms) : 0, 58178
AppSec [candidate] (58.183 ms) : 0, 58183
IAST [baseline] (20.793 ms) : 0, 20793
IAST [candidate] (20.947 ms) : 0, 20947
Remote Config [baseline] (617.201 µs) : 0, 617
Remote Config [candidate] (622.628 µs) : 0, 623
Telemetry [baseline] (7.596 ms) : 0, 7596
Telemetry [candidate] (7.585 ms) : 0, 7585
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (812.21 ms) : 0, 812210
BytebuddyAgent [candidate] (810.612 ms) : 0, 810612
GlobalTracer [baseline] (306.38 ms) : 0, 306380
GlobalTracer [candidate] (307.258 ms) : 0, 307258
AppSec [baseline] (57.025 ms) : 0, 57025
AppSec [candidate] (57.386 ms) : 0, 57386
IAST [baseline] (21.76 ms) : 0, 21760
IAST [candidate] (20.691 ms) : 0, 20691
Remote Config [baseline] (621.729 µs) : 0, 622
Remote Config [candidate] (629.75 µs) : 0, 630
Telemetry [baseline] (7.517 ms) : 0, 7517
Telemetry [candidate] (7.478 ms) : 0, 7478
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (806.904 ms) : 0, 806904
BytebuddyAgent [candidate] (814.113 ms) : 0, 814113
GlobalTracer [baseline] (306.213 ms) : 0, 306213
GlobalTracer [candidate] (308.661 ms) : 0, 308661
AppSec [baseline] (57.847 ms) : 0, 57847
AppSec [candidate] (58.073 ms) : 0, 58073
IAST [baseline] (20.369 ms) : 0, 20369
IAST [candidate] (20.691 ms) : 0, 20691
Remote Config [baseline] (624.429 µs) : 0, 624
Remote Config [candidate] (646.332 µs) : 0, 646
Telemetry [baseline] (7.434 ms) : 0, 7434
Telemetry [candidate] (7.515 ms) : 0, 7515
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.43.0-SNAPSHOT~f2cc4736aa, baseline=1.44.0-SNAPSHOT~ac4977af17

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.093 s) : 0, 1093265
Total [baseline] (10.412 s) : 0, 10411768
Agent [candidate] (1.098 s) : 0, 1097819
Total [candidate] (10.424 s) : 0, 10424475
section appsec
Agent [baseline] (1.227 s) : 0, 1226513
Total [baseline] (10.687 s) : 0, 10687402
Agent [candidate] (1.224 s) : 0, 1223638
Total [candidate] (10.714 s) : 0, 10713521
section iast
Agent [baseline] (1.218 s) : 0, 1218458
Total [baseline] (10.969 s) : 0, 10969019
Agent [candidate] (1.22 s) : 0, 1219716
Total [candidate] (10.913 s) : 0, 10912726
section profiling
Agent [baseline] (1.321 s) : 0, 1321417
Total [baseline] (10.813 s) : 0, 10812787
Agent [candidate] (1.325 s) : 0, 1325365
Total [candidate] (10.86 s) : 0, 10860234
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.093 s -
Agent appsec 1.227 s 133.248 ms (12.2%)
Agent iast 1.218 s 125.193 ms (11.5%)
Agent profiling 1.321 s 228.151 ms (20.9%)
Total tracing 10.412 s -
Total appsec 10.687 s 275.634 ms (2.6%)
Total iast 10.969 s 557.251 ms (5.4%)
Total profiling 10.813 s 401.019 ms (3.9%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.098 s -
Agent appsec 1.224 s 125.819 ms (11.5%)
Agent iast 1.22 s 121.897 ms (11.1%)
Agent profiling 1.325 s 227.546 ms (20.7%)
Total tracing 10.424 s -
Total appsec 10.714 s 289.046 ms (2.8%)
Total iast 10.913 s 488.251 ms (4.7%)
Total profiling 10.86 s 435.759 ms (4.2%)
gantt
    title petclinic - break down per module: candidate=1.43.0-SNAPSHOT~f2cc4736aa, baseline=1.44.0-SNAPSHOT~ac4977af17

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (694.377 ms) : 0, 694377
BytebuddyAgent [candidate] (696.72 ms) : 0, 696720
GlobalTracer [baseline] (318.235 ms) : 0, 318235
GlobalTracer [candidate] (319.754 ms) : 0, 319754
AppSec [baseline] (54.956 ms) : 0, 54956
AppSec [candidate] (54.803 ms) : 0, 54803
Remote Config [baseline] (690.12 µs) : 0, 690
Remote Config [candidate] (685.2 µs) : 0, 685
Telemetry [baseline] (11.274 ms) : 0, 11274
Telemetry [candidate] (12.067 ms) : 0, 12067
section appsec
BytebuddyAgent [baseline] (712.239 ms) : 0, 712239
BytebuddyAgent [candidate] (709.659 ms) : 0, 709659
GlobalTracer [baseline] (315.059 ms) : 0, 315059
GlobalTracer [candidate] (314.433 ms) : 0, 314433
AppSec [baseline] (167.166 ms) : 0, 167166
AppSec [candidate] (166.862 ms) : 0, 166862
IAST [baseline] (20.479 ms) : 0, 20479
IAST [candidate] (21.097 ms) : 0, 21097
Remote Config [baseline] (653.3 µs) : 0, 653
Remote Config [candidate] (636.568 µs) : 0, 637
Telemetry [baseline] (7.451 ms) : 0, 7451
Telemetry [candidate] (7.806 ms) : 0, 7806
section iast
BytebuddyAgent [baseline] (810.841 ms) : 0, 810841
BytebuddyAgent [candidate] (811.61 ms) : 0, 811610
GlobalTracer [baseline] (307.264 ms) : 0, 307264
GlobalTracer [candidate] (307.58 ms) : 0, 307580
AppSec [baseline] (57.872 ms) : 0, 57872
AppSec [candidate] (57.694 ms) : 0, 57694
IAST [baseline] (20.63 ms) : 0, 20630
IAST [candidate] (20.857 ms) : 0, 20857
Remote Config [baseline] (605.04 µs) : 0, 605
Remote Config [candidate] (633.357 µs) : 0, 633
Telemetry [baseline] (7.435 ms) : 0, 7435
Telemetry [candidate] (7.547 ms) : 0, 7547
section profiling
BytebuddyAgent [baseline] (693.624 ms) : 0, 693624
BytebuddyAgent [candidate] (690.826 ms) : 0, 690826
GlobalTracer [baseline] (433.402 ms) : 0, 433402
GlobalTracer [candidate] (438.821 ms) : 0, 438821
AppSec [baseline] (53.407 ms) : 0, 53407
AppSec [candidate] (54.008 ms) : 0, 54008
Remote Config [baseline] (646.697 µs) : 0, 647
Remote Config [candidate] (667.63 µs) : 0, 668
Telemetry [baseline] (7.679 ms) : 0, 7679
Telemetry [candidate] (7.812 ms) : 0, 7812
ProfilingAgent [baseline] (93.146 ms) : 0, 93146
ProfilingAgent [candidate] (94.233 ms) : 0, 94233
Profiling [baseline] (93.17 ms) : 0, 93170
Profiling [candidate] (94.259 ms) : 0, 94259
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2024-11-26T17:35:47 2024-11-26T17:42:46
git_branch master jpbempel/refactor-probe-matching
git_commit_date 1732641502 1732642005
git_commit_sha ac4977a f2cc473
release_version 1.44.0-SNAPSHOT~ac4977af17 1.43.0-SNAPSHOT~f2cc4736aa
start_time 2024-11-26T17:35:34 2024-11-26T17:42:32
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1732643318 1732643318
ci_job_id 721048008 721048008
ci_pipeline_id 49995944 49995944
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
variant iast iast

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 17 unstable metrics.

Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.43.0-SNAPSHOT~f2cc4736aa, baseline=1.44.0-SNAPSHOT~ac4977af17
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.353 ms) : 1333, 1374
.   : milestone, 1353,
appsec (1.75 ms) : 1726, 1775
.   : milestone, 1750,
appsec_no_iast (1.754 ms) : 1729, 1778
.   : milestone, 1754,
iast (1.49 ms) : 1466, 1513
.   : milestone, 1490,
profiling (1.543 ms) : 1518, 1569
.   : milestone, 1543,
tracing (1.492 ms) : 1467, 1517
.   : milestone, 1492,
section candidate
no_agent (1.339 ms) : 1319, 1360
.   : milestone, 1339,
appsec (1.774 ms) : 1749, 1799
.   : milestone, 1774,
appsec_no_iast (1.743 ms) : 1719, 1767
.   : milestone, 1743,
iast (1.49 ms) : 1467, 1512
.   : milestone, 1490,
profiling (1.564 ms) : 1540, 1587
.   : milestone, 1564,
tracing (1.473 ms) : 1448, 1497
.   : milestone, 1473,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.353 ms [1.333 ms, 1.374 ms] -
appsec 1.75 ms [1.726 ms, 1.775 ms] 396.574 µs (29.3%)
appsec_no_iast 1.754 ms [1.729 ms, 1.778 ms] 400.138 µs (29.6%)
iast 1.49 ms [1.466 ms, 1.513 ms] 136.179 µs (10.1%)
profiling 1.543 ms [1.518 ms, 1.569 ms] 189.684 µs (14.0%)
tracing 1.492 ms [1.467 ms, 1.517 ms] 138.794 µs (10.3%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.339 ms [1.319 ms, 1.36 ms] -
appsec 1.774 ms [1.749 ms, 1.799 ms] 434.22 µs (32.4%)
appsec_no_iast 1.743 ms [1.719 ms, 1.767 ms] 403.743 µs (30.1%)
iast 1.49 ms [1.467 ms, 1.512 ms] 150.243 µs (11.2%)
profiling 1.564 ms [1.54 ms, 1.587 ms] 224.033 µs (16.7%)
tracing 1.473 ms [1.448 ms, 1.497 ms] 133.226 µs (9.9%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.43.0-SNAPSHOT~f2cc4736aa, baseline=1.44.0-SNAPSHOT~ac4977af17
    dateFormat X
    axisFormat %s
section baseline
no_agent (371.055 µs) : 351, 392
.   : milestone, 371,
iast (493.468 µs) : 470, 517
.   : milestone, 493,
iast_FULL (649.429 µs) : 628, 671
.   : milestone, 649,
iast_GLOBAL (514.148 µs) : 493, 535
.   : milestone, 514,
iast_HARDCODED_SECRET_DISABLED (491.994 µs) : 470, 514
.   : milestone, 492,
iast_INACTIVE (442.276 µs) : 422, 463
.   : milestone, 442,
iast_TELEMETRY_OFF (480.205 µs) : 458, 502
.   : milestone, 480,
tracing (440.95 µs) : 420, 462
.   : milestone, 441,
section candidate
no_agent (373.404 µs) : 353, 394
.   : milestone, 373,
iast (486.927 µs) : 466, 508
.   : milestone, 487,
iast_FULL (647.619 µs) : 626, 669
.   : milestone, 648,
iast_GLOBAL (510.911 µs) : 489, 533
.   : milestone, 511,
iast_HARDCODED_SECRET_DISABLED (491.206 µs) : 469, 513
.   : milestone, 491,
iast_INACTIVE (452.29 µs) : 431, 474
.   : milestone, 452,
iast_TELEMETRY_OFF (474.21 µs) : 453, 496
.   : milestone, 474,
tracing (448.778 µs) : 427, 470
.   : milestone, 449,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 371.055 µs [350.608 µs, 391.502 µs] -
iast 493.468 µs [470.071 µs, 516.865 µs] 122.413 µs (33.0%)
iast_FULL 649.429 µs [627.958 µs, 670.901 µs] 278.374 µs (75.0%)
iast_GLOBAL 514.148 µs [493.043 µs, 535.252 µs] 143.093 µs (38.6%)
iast_HARDCODED_SECRET_DISABLED 491.994 µs [470.164 µs, 513.824 µs] 120.939 µs (32.6%)
iast_INACTIVE 442.276 µs [421.676 µs, 462.876 µs] 71.221 µs (19.2%)
iast_TELEMETRY_OFF 480.205 µs [458.342 µs, 502.069 µs] 109.15 µs (29.4%)
tracing 440.95 µs [420.203 µs, 461.698 µs] 69.895 µs (18.8%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 373.404 µs [353.155 µs, 393.652 µs] -
iast 486.927 µs [465.533 µs, 508.32 µs] 113.523 µs (30.4%)
iast_FULL 647.619 µs [626.284 µs, 668.955 µs] 274.216 µs (73.4%)
iast_GLOBAL 510.911 µs [488.947 µs, 532.875 µs] 137.507 µs (36.8%)
iast_HARDCODED_SECRET_DISABLED 491.206 µs [469.384 µs, 513.027 µs] 117.802 µs (31.5%)
iast_INACTIVE 452.29 µs [430.602 µs, 473.979 µs] 78.887 µs (21.1%)
iast_TELEMETRY_OFF 474.21 µs [452.706 µs, 495.714 µs] 100.807 µs (27.0%)
tracing 448.778 µs [427.193 µs, 470.364 µs] 75.375 µs (20.2%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master jpbempel/refactor-probe-matching
git_commit_date 1732641502 1732642005
git_commit_sha ac4977a f2cc473
release_version 1.44.0-SNAPSHOT~ac4977af17 1.43.0-SNAPSHOT~f2cc4736aa
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1732644037 1732644037
ci_job_id 721048010 721048010
ci_pipeline_id 49995944 49995944
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
variant appsec appsec

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics.

Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.43.0-SNAPSHOT~f2cc4736aa, baseline=1.44.0-SNAPSHOT~ac4977af17
    dateFormat X
    axisFormat %s
section baseline
no_agent (15.576 s) : 15576000, 15576000
.   : milestone, 15576000,
appsec (15.058 s) : 15058000, 15058000
.   : milestone, 15058000,
iast (18.577 s) : 18577000, 18577000
.   : milestone, 18577000,
iast_GLOBAL (17.949 s) : 17949000, 17949000
.   : milestone, 17949000,
profiling (14.923 s) : 14923000, 14923000
.   : milestone, 14923000,
tracing (15.145 s) : 15145000, 15145000
.   : milestone, 15145000,
section candidate
no_agent (14.976 s) : 14976000, 14976000
.   : milestone, 14976000,
appsec (15.174 s) : 15174000, 15174000
.   : milestone, 15174000,
iast (18.619 s) : 18619000, 18619000
.   : milestone, 18619000,
iast_GLOBAL (17.629 s) : 17629000, 17629000
.   : milestone, 17629000,
profiling (15.858 s) : 15858000, 15858000
.   : milestone, 15858000,
tracing (15.048 s) : 15048000, 15048000
.   : milestone, 15048000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.576 s [15.576 s, 15.576 s] -
appsec 15.058 s [15.058 s, 15.058 s] -518.0 ms (-3.3%)
iast 18.577 s [18.577 s, 18.577 s] 3.001 s (19.3%)
iast_GLOBAL 17.949 s [17.949 s, 17.949 s] 2.373 s (15.2%)
profiling 14.923 s [14.923 s, 14.923 s] -653.0 ms (-4.2%)
tracing 15.145 s [15.145 s, 15.145 s] -431.0 ms (-2.8%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.976 s [14.976 s, 14.976 s] -
appsec 15.174 s [15.174 s, 15.174 s] 198.0 ms (1.3%)
iast 18.619 s [18.619 s, 18.619 s] 3.643 s (24.3%)
iast_GLOBAL 17.629 s [17.629 s, 17.629 s] 2.653 s (17.7%)
profiling 15.858 s [15.858 s, 15.858 s] 882.0 ms (5.9%)
tracing 15.048 s [15.048 s, 15.048 s] 72.0 ms (0.5%)
Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.43.0-SNAPSHOT~f2cc4736aa, baseline=1.44.0-SNAPSHOT~ac4977af17
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.471 ms) : 1459, 1482
.   : milestone, 1471,
appsec (2.352 ms) : 2310, 2393
.   : milestone, 2352,
iast (2.103 ms) : 2050, 2155
.   : milestone, 2103,
iast_GLOBAL (2.132 ms) : 2079, 2184
.   : milestone, 2132,
profiling (2.439 ms) : 2252, 2626
.   : milestone, 2439,
tracing (1.934 ms) : 1894, 1974
.   : milestone, 1934,
section candidate
no_agent (1.471 ms) : 1459, 1482
.   : milestone, 1471,
appsec (2.348 ms) : 2307, 2389
.   : milestone, 2348,
iast (2.097 ms) : 2044, 2150
.   : milestone, 2097,
iast_GLOBAL (2.133 ms) : 2080, 2186
.   : milestone, 2133,
profiling (1.98 ms) : 1937, 2023
.   : milestone, 1980,
tracing (1.931 ms) : 1891, 1971
.   : milestone, 1931,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.471 ms [1.459 ms, 1.482 ms] -
appsec 2.352 ms [2.31 ms, 2.393 ms] 880.804 µs (59.9%)
iast 2.103 ms [2.05 ms, 2.155 ms] 631.951 µs (43.0%)
iast_GLOBAL 2.132 ms [2.079 ms, 2.184 ms] 660.934 µs (44.9%)
profiling 2.439 ms [2.252 ms, 2.626 ms] 968.279 µs (65.8%)
tracing 1.934 ms [1.894 ms, 1.974 ms] 463.163 µs (31.5%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.471 ms [1.459 ms, 1.482 ms] -
appsec 2.348 ms [2.307 ms, 2.389 ms] 877.057 µs (59.6%)
iast 2.097 ms [2.044 ms, 2.15 ms] 626.181 µs (42.6%)
iast_GLOBAL 2.133 ms [2.08 ms, 2.186 ms] 662.44 µs (45.0%)
profiling 1.98 ms [1.937 ms, 2.023 ms] 509.255 µs (34.6%)
tracing 1.931 ms [1.891 ms, 1.971 ms] 460.327 µs (31.3%)

@jpbempel jpbempel merged commit c21d4a5 into master Nov 26, 2024
106 of 110 checks passed
@jpbempel jpbempel deleted the jpbempel/refactor-probe-matching branch November 26, 2024 19:51
@github-actions github-actions bot added this to the 1.44.0 milestone Nov 26, 2024
PerfectSlayer pushed a commit that referenced this pull request Nov 28, 2024
To be able to match probe with more flexibility (probes targeting a
method with or without signature) we are iterating over all methods
of a class and using Where::isMethodMatching to select probe
definitions that will be apply on the current method.
With this new approach we are dropping the support of overloaded
methods: only one method is instrumented or a definition is applied
only once.
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Dec 16, 2024
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
|
[com.google.api.grpc:proto-google-common-protos](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.49.0` -> `2.50.0` |
|
[com.google.cloud:google-cloud-core-http](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.48.0` -> `2.49.0` |
|
[com.google.cloud:google-cloud-spanner](https://github.com/googleapis/java-spanner)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`6.82.0` -> `6.83.0` |
|
[com.google.cloud:google-cloud-logging](https://github.com/googleapis/java-logging)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`3.20.7` -> `3.21.0` |
|
[com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.24.3` -> `2.25.1` |
|
[com.google.cloud:google-cloud-core](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.48.0` -> `2.49.0` |
| [com.google.api:gax](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`2.58.0` -> `2.59.0` |
|
[com.autonomousapps.dependency-analysis](https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin)
| plugin | misk/gradle/libs.versions.toml | gradle | patch | `2.6.0` ->
`2.6.1` |
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.43.0` -> `1.44.1` |
| [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.43.0` -> `1.44.1` |
| [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.32` -> `2.29.34` |
|
[software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.32` -> `2.29.34` |
| [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.32` -> `2.29.34` |
| [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.32` -> `2.29.34` |
| [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.32` -> `2.29.34` |
| [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.32` -> `2.29.34` |
| [com.amazonaws:aws-java-sdk-sqs](https://aws.amazon.com/sdkforjava)
([source](https://github.com/aws/aws-sdk-java)) | dependencies |
misk/gradle/libs.versions.toml | gradle | patch | `1.12.779` ->
`1.12.780` |
| [com.amazonaws:aws-java-sdk-s3](https://aws.amazon.com/sdkforjava)
([source](https://github.com/aws/aws-sdk-java)) | dependencies |
misk/gradle/libs.versions.toml | gradle | patch | `1.12.779` ->
`1.12.780` |
|
[com.amazonaws:aws-java-sdk-dynamodb](https://aws.amazon.com/sdkforjava)
([source](https://github.com/aws/aws-sdk-java)) | dependencies |
misk/gradle/libs.versions.toml | gradle | patch | `1.12.779` ->
`1.12.780` |
| [com.amazonaws:aws-java-sdk-core](https://aws.amazon.com/sdkforjava)
([source](https://github.com/aws/aws-sdk-java)) | dependencies |
misk/gradle/libs.versions.toml | gradle | patch | `1.12.779` ->
`1.12.780` |

---

### Release Notes

<details>
<summary>googleapis/sdk-platform-java
(com.google.api.grpc:proto-google-common-protos)</summary>

###
[`v2.50.0`](https://github.com/googleapis/sdk-platform-java/blob/HEAD/CHANGELOG.md#2500-2024-11-14)

##### Features

- Add experimental S2A integration in client libraries grpc transport
([#&#8203;3326](googleapis/sdk-platform-java#3326))
([1138ca6](googleapis/sdk-platform-java@1138ca6))
- enable selective generation based on service config include list
([#&#8203;3323](googleapis/sdk-platform-java#3323))
([0cddadb](googleapis/sdk-platform-java@0cddadb))
- introduce `java.time` to java-core
([#&#8203;3330](googleapis/sdk-platform-java#3330))
([f202c3b](googleapis/sdk-platform-java@f202c3b))
- Update Gapic-Generator to generate libraries using `java.time` methods
([#&#8203;3321](googleapis/sdk-platform-java#3321))
([b21c9a4](googleapis/sdk-platform-java@b21c9a4))

##### Bug Fixes

- Fix flaky test
ScheduledRetryingExecutorTest.testCancelOuterFutureAfterStart
([#&#8203;3335](googleapis/sdk-platform-java#3335))
([e73740d](googleapis/sdk-platform-java@e73740d))
- httpjson callables to trace attempts (started, failed)
([#&#8203;3300](googleapis/sdk-platform-java#3300))
([15a64ee](googleapis/sdk-platform-java@15a64ee))
- instantiate GaxProperties at build time to ensure we get the protobuf
version
([#&#8203;3365](googleapis/sdk-platform-java#3365))
([bb2a3be](googleapis/sdk-platform-java@bb2a3be))
- protobuf version not always getting set in headers
([#&#8203;3322](googleapis/sdk-platform-java#3322))
([7f6e470](googleapis/sdk-platform-java@7f6e470))
- use BuildKit instead of legacy builder to build the Hermetic Build
images
([#&#8203;3338](googleapis/sdk-platform-java#3338))
([222fb45](googleapis/sdk-platform-java@222fb45))

##### Dependencies

- update google auth library dependencies to v1.30.0
([#&#8203;3367](googleapis/sdk-platform-java#3367))
([a31c682](googleapis/sdk-platform-java@a31c682))
- update grpc dependencies to v1.68.1
([#&#8203;3240](googleapis/sdk-platform-java#3240))
([c8e3941](googleapis/sdk-platform-java@c8e3941))

##### Documentation

- fix list num
([#&#8203;3356](googleapis/sdk-platform-java#3356))
([b7d6296](googleapis/sdk-platform-java@b7d6296))
- **hermetic-build:** indicate usage of Docker Buildkit in development
guide
([#&#8203;3337](googleapis/sdk-platform-java#3337))
([01e742d](googleapis/sdk-platform-java@01e742d))
- modify hermetic build docs
([#&#8203;3331](googleapis/sdk-platform-java#3331))
([25023af](googleapis/sdk-platform-java@25023af))

</details>

<details>
<summary>googleapis/java-spanner
(com.google.cloud:google-cloud-spanner)</summary>

###
[`v6.83.0`](https://github.com/googleapis/java-spanner/blob/HEAD/CHANGELOG.md#6830-2024-12-13)

##### Features

- Add Metrics host for built in metrics
([#&#8203;3519](googleapis/java-spanner#3519))
([4ed455a](googleapis/java-spanner@4ed455a))
- Add opt-in for using multiplexed sessions for blind writes
([#&#8203;3540](googleapis/java-spanner#3540))
([216f53e](googleapis/java-spanner@216f53e))
- Add UUID in Spanner TypeCode enum
([41f83dc](googleapis/java-spanner@41f83dc))
- Introduce java.time variables and methods
([#&#8203;3495](googleapis/java-spanner#3495))
([8a7d533](googleapis/java-spanner@8a7d533))
- **spanner:** Support multiplexed session for Partitioned operations
([#&#8203;3231](googleapis/java-spanner#3231))
([4501a3e](googleapis/java-spanner@4501a3e))
- Support 'set local' for retry_aborts_internally
([#&#8203;3532](googleapis/java-spanner#3532))
([331942f](googleapis/java-spanner@331942f))

##### Bug Fixes

- **deps:** Update the Java code generator (gapic-generator-java) to
2.51.0
([41f83dc](googleapis/java-spanner@41f83dc))

##### Dependencies

- Update sdk platform java dependencies
([#&#8203;3549](googleapis/java-spanner#3549))
([6235f0f](googleapis/java-spanner@6235f0f))

</details>

<details>
<summary>googleapis/java-logging
(com.google.cloud:google-cloud-logging)</summary>

###
[`v3.21.0`](https://github.com/googleapis/java-logging/blob/HEAD/CHANGELOG.md#3210-2024-12-13)

##### Features

- Introduce `java.time` methods
([#&#8203;1729](googleapis/java-logging#1729))
([323eb33](googleapis/java-logging@323eb33))

##### Bug Fixes

- **deps:** Update the Java code generator (gapic-generator-java) to
2.51.0
([04d8868](googleapis/java-logging@04d8868))

##### Dependencies

- Update dependency io.opentelemetry:opentelemetry-bom to v1.45.0
([#&#8203;1638](googleapis/java-logging#1638))
([7e007d4](googleapis/java-logging@7e007d4))
- Update sdk platform java dependencies
([#&#8203;1736](googleapis/java-logging#1736))
([88b4cdf](googleapis/java-logging@88b4cdf))

</details>

<details>
<summary>googleapis/java-datastore
(com.google.cloud:google-cloud-datastore)</summary>

###
[`v2.25.1`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2251-2024-12-13)

##### Bug Fixes

- **deps:** Update the Java code generator (gapic-generator-java) to
2.51.0
([106ee4d](googleapis/java-datastore@106ee4d))

##### Dependencies

- Update sdk platform java dependencies
([#&#8203;1685](googleapis/java-datastore#1685))
([4372350](googleapis/java-datastore@4372350))

###
[`v2.25.0`](https://github.com/googleapis/java-datastore/blob/HEAD/CHANGELOG.md#2250-2024-12-11)

##### Features

- Introduce `java.time` methods and variables
([#&#8203;1671](googleapis/java-datastore#1671))
([5a78a80](googleapis/java-datastore@5a78a80))

##### Dependencies

- Update dependency com.google.cloud:gapic-libraries-bom to v1.48.0
([#&#8203;1605](googleapis/java-datastore#1605))
([5c6a678](googleapis/java-datastore@5c6a678))

##### Documentation

- Update gapic upgrade installation instructions
([#&#8203;1677](googleapis/java-datastore#1677))
([b3fbfcc](googleapis/java-datastore@b3fbfcc))

</details>

<details>
<summary>autonomousapps/dependency-analysis-android-gradle-plugin
(com.autonomousapps.dependency-analysis)</summary>

###
[`v2.6.1`](https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin/blob/HEAD/CHANGELOG.md#Version-261)

-   \[Fix]: `superClassName` can be null (Object has no superclass).

</details>

<details>
<summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary>

###
[`v1.44.1`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.44.1):
1.44.1

##### Components

##### Continuous Integration Visibility

- 🐛 Fix tracing JUnit5 tests in Maven projects with multiple forks
([#&#8203;8089](DataDog/dd-trace-java#8089) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))

###
[`v1.44.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.44.0):
1.44.0

##### Known Issues

> \[!WARNING]\
> This release contains a known issue that causes failures when using
Test Optimization to trace JUnit 5 tests in a Maven project where Maven
Surefire is configured with `forkCount` > 1.
> The issue is fixed in v1.44.1

##### Breaking Changes

> \[!WARNING]\
> Support for `X-Forwarded` header is dropped from default client IP
resolution.
> It can still be re-activated using the
`dd.trace.client-ip-header=x-forwarded` system property, or the
`DD_TRACE_CLIENT_IP_HEADER=x-forwarded` environment variable. See
[#&#8203;7946](DataDog/dd-trace-java#7946).

##### Components

##### Application Security Management (IAST)

- ✨ Set unexpected IAST exceptions to debug log level
([#&#8203;8044](DataDog/dd-trace-java#8044) -
[@&#8203;smola](https://github.com/smola))
- ✨ Increase IAST propagation to StringBuffer subSequence
([#&#8203;8038](DataDog/dd-trace-java#8038) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Increase IAST propagation to StringBuilder subSequence
([#&#8203;8026](DataDog/dd-trace-java#8026) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Add IAST propagation to String valueOf
([#&#8203;8013](DataDog/dd-trace-java#8013) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Increase IAST propagation to StringBuilder append
([#&#8203;8010](DataDog/dd-trace-java#8010) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Expand SSRF support in IAST to apache-httpclient-5 and
apache-httpasyncclient-4
([#&#8203;7920](DataDog/dd-trace-java#7920) -
[@&#8203;Mariovido](https://github.com/Mariovido))

##### Build & Tooling

- ✨ Generate Muzzle classes for Groovy instrumentations
([#&#8203;8004](DataDog/dd-trace-java#8004) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))

##### Continuous Integration Visibility

- ✨ Support distributed traces in tests
([#&#8203;8078](DataDog/dd-trace-java#8078) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Implement fail-fast tests ordering for JUnit 5
([#&#8203;8055](DataDog/dd-trace-java#8055) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Mark JUnit 5 setup and teardown action spans as failed if
there is an error
([#&#8203;8033](DataDog/dd-trace-java#8033) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Add tracing of setup and teardown actions in JUnit 4
([#&#8203;8030](DataDog/dd-trace-java#8030) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))

##### Crash tracking

- ✨ Improve crash tracking install logging
([#&#8203;8045](DataDog/dd-trace-java#8045) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

##### Data Streams Monitoring

- 🐛 Add Data Streams support in AWS SQS without raw message delivery
([#&#8203;8071](DataDog/dd-trace-java#8071) -
[@&#8203;piochelepiotr](https://github.com/piochelepiotr))
- ✨ Add new tag for enabled products / features to DSM
checkpoints
([#&#8203;8051](DataDog/dd-trace-java#8051) -
[@&#8203;kr-igor](https://github.com/kr-igor))
- 💡 Instrument self hosted Kafka connectors
([#&#8203;7959](DataDog/dd-trace-java#7959) -
[@&#8203;piochelepiotr](https://github.com/piochelepiotr))

##### Dynamic Instrumentation

- ✨ Add Micronaut 4 support for code origin for spans
([#&#8203;8039](DataDog/dd-trace-java#8039) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Refactor probe matching for methods
([#&#8203;8021](DataDog/dd-trace-java#8021) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Update the CodeOriginProbe fingerprint to not rely on a
stack walk
([#&#8203;8016](DataDog/dd-trace-java#8016) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- ✨ Implement code origin support for grpc server entry spans
([#&#8203;7942](DataDog/dd-trace-java#7942) -
[@&#8203;evanchooly](https://github.com/evanchooly))

##### GraalVM native-image

- 🐛 Update Graal build-time instrumentation config for
TracePropagationStyle
([#&#8203;8065](DataDog/dd-trace-java#8065) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- 🐛 Fix NoClassDefFoundError: Could not initialize class
DDSpanLink$EncoderHolder in Graal native-image
([#&#8203;8036](DataDog/dd-trace-java#8036) -
[@&#8203;mcculls](https://github.com/mcculls))
- 🐛🧹 Fix native-image generation of reactive applications
([#&#8203;8012](DataDog/dd-trace-java#8012) -
[@&#8203;mcculls](https://github.com/mcculls))

##### OpenTracing

- 🧹 Custom ScopeManagers are deprecated and will be removed in a
future release of dd-trace-ot
([#&#8203;8058](DataDog/dd-trace-java#8058) -
[@&#8203;mcculls](https://github.com/mcculls))

##### Tracer core

- ✨🧪 Service naming: split by jee deployment
([#&#8203;8064](DataDog/dd-trace-java#8064) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Exclude jboss mdb proxies from instrumenting
([#&#8203;8061](DataDog/dd-trace-java#8061) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add a built-in trace interceptor for keeping traces
depending of their latency
([#&#8203;8040](DataDog/dd-trace-java#8040) -
[@&#8203;cecile75](https://github.com/cecile75))
- 💡 Introduce marker mechanism for eagerly initializing helpers
([#&#8203;8028](DataDog/dd-trace-java#8028) -
[@&#8203;mcculls](https://github.com/mcculls))
- 💡 Add JSON component
([#&#8203;7973](DataDog/dd-trace-java#7973) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨⚠️ Remove support for X-Forwarded in client IP
resolution
([#&#8203;7946](DataDog/dd-trace-java#7946) -
[@&#8203;smola](https://github.com/smola))

##### Instrumentations

##### Apache HttpComponents

- ✨ Expand SSRF support in IAST to apache-httpclient-5 and
apache-httpasyncclient-4
([#&#8203;7920](DataDog/dd-trace-java#7920) -
[@&#8203;Mariovido](https://github.com/Mariovido))

##### gRPC instrumentation

- 🐛 Use lower priorities for grpc server errors
([#&#8203;8043](DataDog/dd-trace-java#8043) -
[@&#8203;amarziali](https://github.com/amarziali))

##### JDBC instrumentation

- ✨ Add trace injection for prepared statements in Postgres
([#&#8203;7940](DataDog/dd-trace-java#7940) -
[@&#8203;nenadnoveljic](https://github.com/nenadnoveljic))

##### JMS instrumentation

- 🐛 Protect mdb from instrumenting multiple time the same event
([#&#8203;8062](DataDog/dd-trace-java#8062) -
[@&#8203;amarziali](https://github.com/amarziali))

##### Kafka instrumentation

- 💡 Instrument self hosted Kafka connectors
([#&#8203;7959](DataDog/dd-trace-java#7959) -
[@&#8203;piochelepiotr](https://github.com/piochelepiotr))

##### OpenTelemetry instrumentation

- 🐛 Support using OpenTelemetry Event API inside `@WithSpan`
annotated method
([#&#8203;8019](DataDog/dd-trace-java#8019) -
[@&#8203;mcculls](https://github.com/mcculls))

##### Reactor instrumentation

- 🐛🧹 Fix native-image generation of reactive applications
([#&#8203;8012](DataDog/dd-trace-java#8012) -
[@&#8203;mcculls](https://github.com/mcculls))

##### Spring instrumentation

- 🐛 Avoid double instrumenting lambdas on latest spring scheduling
([#&#8203;8005](DataDog/dd-trace-java#8005) -
[@&#8203;amarziali](https://github.com/amarziali))

##### All other instrumentations

- 🐛 Twilio: allow service name flattening
([#&#8203;8025](DataDog/dd-trace-java#8025) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Instrument Mulesoft 4.5.0+
([#&#8203;7981](DataDog/dd-trace-java#7981) -
[@&#8203;amarziali](https://github.com/amarziali))

</details>

<details>
<summary>aws/aws-sdk-java (com.amazonaws:aws-java-sdk-sqs)</summary>

###
[`v1.12.780`](https://github.com/aws/aws-sdk-java/blob/HEAD/CHANGELOG.md#112780-2024-12-11)

[Compare
Source](aws/aws-sdk-java@1.12.779...1.12.780)

#### **Amazon Simple Storage Service**

-   ### Bugfixes
- AWS SDK for Java 1.x now includes additional validation for Amazon S3
client APIs to handle scenarios where an empty string ('') is passed as
the key argument to the following operations: PutObject, DeleteObject,
ListObjects, GetObjectMetaData, ListObjectsV2, SetObjectTagging,
GetObjectTagging, SetObjectAcl, GetObjectAcl, SetObjectLegalHold,
GetObjectLegalHold, CopyObject, CopyPart, SelectObjectContent,
SetObjectRetention, GetObjectRetention, AbortMultipartUpload,
CompleteMultipartUpload, InitiateMultipartUpload, ListParts, UploadPart,
RestoreObjectV2, and RestoreObject. The SDK will validate the key
argument and throw an exception if it is an empty string, ensuring
correct and expected behavior.

</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: 69831bc62ea4d80cdcd42cef2aa9bd8eda28ae8c
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants