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

Reactor: early propagate span in context when subscribing #8166

Merged
merged 4 commits into from
Jan 8, 2025

Conversation

amarziali
Copy link
Collaborator

@amarziali amarziali commented Jan 8, 2025

What Does This Do

When dd.span is present in a reactor context it is propagated when the downstream signals only (onNext, onError, onComplete).
There are cases (i.e. MonoFromCompletableFuture) in which is necessary to do it earlier (i.e. when the publisher subscribe) because that span should be active since the CompletableFuture is evaluated when subscribe happens and not when the downstream signals

Motivation

Additional Notes

Contributor Checklist

Jira ticket: APMS-14247

@amarziali amarziali added type: bug inst: reactor Reactor instrumentation labels Jan 8, 2025
@amarziali amarziali requested a review from a team as a code owner January 8, 2025 09:15
@pr-commenter
Copy link

pr-commenter bot commented Jan 8, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master andrea.marziali/reactor-optimizable
git_commit_date 1736346099 1736349095
git_commit_sha d3d6f9c 1323af9
release_version 1.45.0-SNAPSHOT~d3d6f9c5e0 1.45.0-SNAPSHOT~1323af91db
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1736351383 1736351383
ci_job_id 758678814 758678814
ci_pipeline_id 52448174 52448174
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 59 metrics, 4 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.45.0-SNAPSHOT~1323af91db, baseline=1.45.0-SNAPSHOT~d3d6f9c5e0

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.054 s) : 0, 1054275
Total [baseline] (8.609 s) : 0, 8609387
Agent [candidate] (1.053 s) : 0, 1052636
Total [candidate] (8.614 s) : 0, 8614024
section iast
Agent [baseline] (1.186 s) : 0, 1186178
Total [baseline] (9.186 s) : 0, 9185644
Agent [candidate] (1.191 s) : 0, 1191155
Total [candidate] (9.26 s) : 0, 9260194
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.182 s) : 0, 1181543
Total [baseline] (9.167 s) : 0, 9167247
Agent [candidate] (1.182 s) : 0, 1182334
Total [candidate] (9.226 s) : 0, 9225765
section iast_TELEMETRY_OFF
Agent [baseline] (1.183 s) : 0, 1182926
Total [baseline] (9.217 s) : 0, 9216735
Agent [candidate] (1.177 s) : 0, 1177355
Total [candidate] (9.177 s) : 0, 9176778
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.054 s -
Agent iast 1.186 s 131.903 ms (12.5%)
Agent iast_HARDCODED_SECRET_DISABLED 1.182 s 127.268 ms (12.1%)
Agent iast_TELEMETRY_OFF 1.183 s 128.651 ms (12.2%)
Total tracing 8.609 s -
Total iast 9.186 s 576.257 ms (6.7%)
Total iast_HARDCODED_SECRET_DISABLED 9.167 s 557.859 ms (6.5%)
Total iast_TELEMETRY_OFF 9.217 s 607.348 ms (7.1%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.053 s -
Agent iast 1.191 s 138.519 ms (13.2%)
Agent iast_HARDCODED_SECRET_DISABLED 1.182 s 129.698 ms (12.3%)
Agent iast_TELEMETRY_OFF 1.177 s 124.718 ms (11.8%)
Total tracing 8.614 s -
Total iast 9.26 s 646.17 ms (7.5%)
Total iast_HARDCODED_SECRET_DISABLED 9.226 s 611.742 ms (7.1%)
Total iast_TELEMETRY_OFF 9.177 s 562.755 ms (6.5%)
gantt
    title insecure-bank - break down per module: candidate=1.45.0-SNAPSHOT~1323af91db, baseline=1.45.0-SNAPSHOT~d3d6f9c5e0

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (712.122 ms) : 0, 712122
BytebuddyAgent [candidate] (711.589 ms) : 0, 711589
GlobalTracer [baseline] (255.815 ms) : 0, 255815
GlobalTracer [candidate] (255.874 ms) : 0, 255874
AppSec [baseline] (56.105 ms) : 0, 56105
AppSec [candidate] (55.215 ms) : 0, 55215
Remote Config [baseline] (727.25 µs) : 0, 727
Remote Config [candidate] (724.795 µs) : 0, 725
Telemetry [baseline] (14.545 ms) : 0, 14545
Telemetry [candidate] (14.244 ms) : 0, 14244
section iast
BytebuddyAgent [baseline] (834.703 ms) : 0, 834703
BytebuddyAgent [candidate] (836.849 ms) : 0, 836849
GlobalTracer [baseline] (247.057 ms) : 0, 247057
GlobalTracer [candidate] (248.477 ms) : 0, 248477
AppSec [baseline] (58.353 ms) : 0, 58353
AppSec [candidate] (58.854 ms) : 0, 58854
IAST [baseline] (21.432 ms) : 0, 21432
IAST [candidate] (22.153 ms) : 0, 22153
Remote Config [baseline] (678.393 µs) : 0, 678
Remote Config [candidate] (684.387 µs) : 0, 684
Telemetry [baseline] (8.876 ms) : 0, 8876
Telemetry [candidate] (9.011 ms) : 0, 9011
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (830.817 ms) : 0, 830817
BytebuddyAgent [candidate] (830.999 ms) : 0, 830999
GlobalTracer [baseline] (246.79 ms) : 0, 246790
GlobalTracer [candidate] (247.207 ms) : 0, 247207
AppSec [baseline] (58.19 ms) : 0, 58190
AppSec [candidate] (58.311 ms) : 0, 58311
IAST [baseline] (21.278 ms) : 0, 21278
IAST [candidate] (21.45 ms) : 0, 21450
Remote Config [baseline] (661.967 µs) : 0, 662
Remote Config [candidate] (674.611 µs) : 0, 675
Telemetry [baseline] (8.78 ms) : 0, 8780
Telemetry [candidate] (8.769 ms) : 0, 8769
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (832.231 ms) : 0, 832231
BytebuddyAgent [candidate] (827.461 ms) : 0, 827461
GlobalTracer [baseline] (247.711 ms) : 0, 247711
GlobalTracer [candidate] (246.963 ms) : 0, 246963
AppSec [baseline] (57.897 ms) : 0, 57897
AppSec [candidate] (57.992 ms) : 0, 57992
IAST [baseline] (20.826 ms) : 0, 20826
IAST [candidate] (20.69 ms) : 0, 20690
Remote Config [baseline] (634.49 µs) : 0, 634
Remote Config [candidate] (640.301 µs) : 0, 640
Telemetry [baseline] (8.594 ms) : 0, 8594
Telemetry [candidate] (8.599 ms) : 0, 8599
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.45.0-SNAPSHOT~1323af91db, baseline=1.45.0-SNAPSHOT~d3d6f9c5e0

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.055 s) : 0, 1054665
Total [baseline] (10.389 s) : 0, 10389466
Agent [candidate] (1.06 s) : 0, 1060342
Total [candidate] (10.491 s) : 0, 10490876
section appsec
Agent [baseline] (1.187 s) : 0, 1186816
Total [baseline] (10.697 s) : 0, 10697282
Agent [candidate] (1.192 s) : 0, 1192206
Total [candidate] (10.724 s) : 0, 10723736
section iast
Agent [baseline] (1.188 s) : 0, 1188377
Total [baseline] (10.975 s) : 0, 10974796
Agent [candidate] (1.18 s) : 0, 1180246
Total [candidate] (10.955 s) : 0, 10954693
section profiling
Agent [baseline] (1.273 s) : 0, 1273365
Total [baseline] (10.762 s) : 0, 10761741
Agent [candidate] (1.287 s) : 0, 1286919
Total [candidate] (10.855 s) : 0, 10855485
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.055 s -
Agent appsec 1.187 s 132.15 ms (12.5%)
Agent iast 1.188 s 133.711 ms (12.7%)
Agent profiling 1.273 s 218.7 ms (20.7%)
Total tracing 10.389 s -
Total appsec 10.697 s 307.816 ms (3.0%)
Total iast 10.975 s 585.33 ms (5.6%)
Total profiling 10.762 s 372.274 ms (3.6%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.06 s -
Agent appsec 1.192 s 131.864 ms (12.4%)
Agent iast 1.18 s 119.904 ms (11.3%)
Agent profiling 1.287 s 226.577 ms (21.4%)
Total tracing 10.491 s -
Total appsec 10.724 s 232.86 ms (2.2%)
Total iast 10.955 s 463.818 ms (4.4%)
Total profiling 10.855 s 364.609 ms (3.5%)
gantt
    title petclinic - break down per module: candidate=1.45.0-SNAPSHOT~1323af91db, baseline=1.45.0-SNAPSHOT~d3d6f9c5e0

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (712.4 ms) : 0, 712400
BytebuddyAgent [candidate] (718.292 ms) : 0, 718292
GlobalTracer [baseline] (255.707 ms) : 0, 255707
GlobalTracer [candidate] (258.14 ms) : 0, 258140
AppSec [baseline] (55.283 ms) : 0, 55283
AppSec [candidate] (55.72 ms) : 0, 55720
Remote Config [baseline] (719.335 µs) : 0, 719
Remote Config [candidate] (734.375 µs) : 0, 734
Telemetry [baseline] (15.634 ms) : 0, 15634
Telemetry [candidate] (12.315 ms) : 0, 12315
section appsec
BytebuddyAgent [baseline] (730.0 ms) : 0, 730000
BytebuddyAgent [candidate] (733.103 ms) : 0, 733103
GlobalTracer [baseline] (252.477 ms) : 0, 252477
GlobalTracer [candidate] (253.92 ms) : 0, 253920
AppSec [baseline] (170.866 ms) : 0, 170866
AppSec [candidate] (171.206 ms) : 0, 171206
Remote Config [baseline] (667.063 µs) : 0, 667
Remote Config [candidate] (651.342 µs) : 0, 651
Telemetry [baseline] (8.195 ms) : 0, 8195
Telemetry [candidate] (8.552 ms) : 0, 8552
IAST [baseline] (19.323 ms) : 0, 19323
IAST [candidate] (19.46 ms) : 0, 19460
section iast
BytebuddyAgent [baseline] (837.286 ms) : 0, 837286
BytebuddyAgent [candidate] (830.349 ms) : 0, 830349
GlobalTracer [baseline] (246.724 ms) : 0, 246724
GlobalTracer [candidate] (246.334 ms) : 0, 246334
AppSec [baseline] (58.466 ms) : 0, 58466
AppSec [candidate] (57.966 ms) : 0, 57966
Remote Config [baseline] (662.634 µs) : 0, 663
Remote Config [candidate] (658.865 µs) : 0, 659
Telemetry [baseline] (8.875 ms) : 0, 8875
Telemetry [candidate] (8.68 ms) : 0, 8680
IAST [baseline] (21.277 ms) : 0, 21277
IAST [candidate] (21.152 ms) : 0, 21152
section profiling
ProfilingAgent [baseline] (95.298 ms) : 0, 95298
ProfilingAgent [candidate] (96.716 ms) : 0, 96716
BytebuddyAgent [baseline] (701.671 ms) : 0, 701671
BytebuddyAgent [candidate] (707.787 ms) : 0, 707787
GlobalTracer [baseline] (371.942 ms) : 0, 371942
GlobalTracer [candidate] (374.591 ms) : 0, 374591
AppSec [baseline] (53.842 ms) : 0, 53842
AppSec [candidate] (56.716 ms) : 0, 56716
Remote Config [baseline] (655.053 µs) : 0, 655
Remote Config [candidate] (672.968 µs) : 0, 673
Telemetry [baseline] (8.104 ms) : 0, 8104
Telemetry [candidate] (8.308 ms) : 0, 8308
Profiling [baseline] (95.322 ms) : 0, 95322
Profiling [candidate] (96.741 ms) : 0, 96741
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-01-08T15:20:04 2025-01-08T15:27:03
git_branch master andrea.marziali/reactor-optimizable
git_commit_date 1736346099 1736349095
git_commit_sha d3d6f9c 1323af9
release_version 1.45.0-SNAPSHOT~d3d6f9c5e0 1.45.0-SNAPSHOT~1323af91db
start_time 2025-01-08T15:19:51 2025-01-08T15:26:49
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1736350374 1736350374
ci_job_id 758678815 758678815
ci_pipeline_id 52448174 52448174
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 12 metrics, 16 unstable metrics.

Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~1323af91db, baseline=1.45.0-SNAPSHOT~d3d6f9c5e0
    dateFormat X
    axisFormat %s
section baseline
no_agent (377.435 µs) : 356, 399
.   : milestone, 377,
iast (491.913 µs) : 471, 513
.   : milestone, 492,
iast_FULL (653.859 µs) : 632, 676
.   : milestone, 654,
iast_GLOBAL (524.638 µs) : 502, 548
.   : milestone, 525,
iast_HARDCODED_SECRET_DISABLED (489.931 µs) : 468, 511
.   : milestone, 490,
iast_INACTIVE (453.437 µs) : 432, 475
.   : milestone, 453,
iast_TELEMETRY_OFF (479.341 µs) : 458, 501
.   : milestone, 479,
tracing (450.12 µs) : 430, 471
.   : milestone, 450,
section candidate
no_agent (385.831 µs) : 364, 408
.   : milestone, 386,
iast (487.528 µs) : 466, 509
.   : milestone, 488,
iast_FULL (650.49 µs) : 629, 672
.   : milestone, 650,
iast_GLOBAL (514.137 µs) : 493, 535
.   : milestone, 514,
iast_HARDCODED_SECRET_DISABLED (497.988 µs) : 476, 520
.   : milestone, 498,
iast_INACTIVE (452.205 µs) : 431, 473
.   : milestone, 452,
iast_TELEMETRY_OFF (480.769 µs) : 459, 502
.   : milestone, 481,
tracing (449.6 µs) : 428, 471
.   : milestone, 450,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 377.435 µs [356.072 µs, 398.798 µs] -
iast 491.913 µs [470.516 µs, 513.31 µs] 114.478 µs (30.3%)
iast_FULL 653.859 µs [632.171 µs, 675.547 µs] 276.424 µs (73.2%)
iast_GLOBAL 524.638 µs [501.59 µs, 547.685 µs] 147.203 µs (39.0%)
iast_HARDCODED_SECRET_DISABLED 489.931 µs [468.404 µs, 511.459 µs] 112.496 µs (29.8%)
iast_INACTIVE 453.437 µs [432.216 µs, 474.658 µs] 76.002 µs (20.1%)
iast_TELEMETRY_OFF 479.341 µs [457.603 µs, 501.078 µs] 101.905 µs (27.0%)
tracing 450.12 µs [429.625 µs, 470.616 µs] 72.685 µs (19.3%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 385.831 µs [363.768 µs, 407.894 µs] -
iast 487.528 µs [466.126 µs, 508.931 µs] 101.697 µs (26.4%)
iast_FULL 650.49 µs [628.819 µs, 672.162 µs] 264.659 µs (68.6%)
iast_GLOBAL 514.137 µs [492.863 µs, 535.411 µs] 128.306 µs (33.3%)
iast_HARDCODED_SECRET_DISABLED 497.988 µs [476.101 µs, 519.874 µs] 112.157 µs (29.1%)
iast_INACTIVE 452.205 µs [431.213 µs, 473.197 µs] 66.374 µs (17.2%)
iast_TELEMETRY_OFF 480.769 µs [459.107 µs, 502.43 µs] 94.938 µs (24.6%)
tracing 449.6 µs [428.49 µs, 470.71 µs] 63.769 µs (16.5%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~1323af91db, baseline=1.45.0-SNAPSHOT~d3d6f9c5e0
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.376 ms) : 1357, 1396
.   : milestone, 1376,
appsec (1.749 ms) : 1725, 1772
.   : milestone, 1749,
appsec_no_iast (1.754 ms) : 1731, 1778
.   : milestone, 1754,
iast (1.494 ms) : 1471, 1516
.   : milestone, 1494,
profiling (1.518 ms) : 1495, 1541
.   : milestone, 1518,
tracing (1.482 ms) : 1457, 1508
.   : milestone, 1482,
section candidate
no_agent (1.355 ms) : 1335, 1374
.   : milestone, 1355,
appsec (1.735 ms) : 1711, 1759
.   : milestone, 1735,
appsec_no_iast (1.749 ms) : 1725, 1773
.   : milestone, 1749,
iast (1.493 ms) : 1470, 1515
.   : milestone, 1493,
profiling (1.506 ms) : 1482, 1529
.   : milestone, 1506,
tracing (1.485 ms) : 1461, 1509
.   : milestone, 1485,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.376 ms [1.357 ms, 1.396 ms] -
appsec 1.749 ms [1.725 ms, 1.772 ms] 372.336 µs (27.1%)
appsec_no_iast 1.754 ms [1.731 ms, 1.778 ms] 378.242 µs (27.5%)
iast 1.494 ms [1.471 ms, 1.516 ms] 117.382 µs (8.5%)
profiling 1.518 ms [1.495 ms, 1.541 ms] 141.676 µs (10.3%)
tracing 1.482 ms [1.457 ms, 1.508 ms] 106.178 µs (7.7%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.355 ms [1.335 ms, 1.374 ms] -
appsec 1.735 ms [1.711 ms, 1.759 ms] 380.331 µs (28.1%)
appsec_no_iast 1.749 ms [1.725 ms, 1.773 ms] 394.471 µs (29.1%)
iast 1.493 ms [1.47 ms, 1.515 ms] 137.919 µs (10.2%)
profiling 1.506 ms [1.482 ms, 1.529 ms] 150.939 µs (11.1%)
tracing 1.485 ms [1.461 ms, 1.509 ms] 130.227 µs (9.6%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master andrea.marziali/reactor-optimizable
git_commit_date 1736346099 1736349095
git_commit_sha d3d6f9c 1323af9
release_version 1.45.0-SNAPSHOT~d3d6f9c5e0 1.45.0-SNAPSHOT~1323af91db
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1736351085 1736351085
ci_job_id 758678816 758678816
ci_pipeline_id 52448174 52448174
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 12 metrics, 0 unstable metrics.

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~1323af91db, baseline=1.45.0-SNAPSHOT~d3d6f9c5e0
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.48 ms) : 1468, 1491
.   : milestone, 1480,
appsec (2.365 ms) : 2323, 2408
.   : milestone, 2365,
iast (2.111 ms) : 2057, 2165
.   : milestone, 2111,
iast_GLOBAL (2.151 ms) : 2096, 2205
.   : milestone, 2151,
profiling (1.988 ms) : 1944, 2033
.   : milestone, 1988,
tracing (1.936 ms) : 1895, 1978
.   : milestone, 1936,
section candidate
no_agent (1.476 ms) : 1464, 1487
.   : milestone, 1476,
appsec (2.357 ms) : 2315, 2400
.   : milestone, 2357,
iast (2.115 ms) : 2061, 2168
.   : milestone, 2115,
iast_GLOBAL (2.153 ms) : 2099, 2208
.   : milestone, 2153,
profiling (1.992 ms) : 1947, 2036
.   : milestone, 1992,
tracing (1.949 ms) : 1907, 1991
.   : milestone, 1949,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.48 ms [1.468 ms, 1.491 ms] -
appsec 2.365 ms [2.323 ms, 2.408 ms] 885.58 µs (59.9%)
iast 2.111 ms [2.057 ms, 2.165 ms] 630.938 µs (42.6%)
iast_GLOBAL 2.151 ms [2.096 ms, 2.205 ms] 671.242 µs (45.4%)
profiling 1.988 ms [1.944 ms, 2.033 ms] 508.467 µs (34.4%)
tracing 1.936 ms [1.895 ms, 1.978 ms] 456.632 µs (30.9%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.476 ms [1.464 ms, 1.487 ms] -
appsec 2.357 ms [2.315 ms, 2.4 ms] 881.382 µs (59.7%)
iast 2.115 ms [2.061 ms, 2.168 ms] 639.013 µs (43.3%)
iast_GLOBAL 2.153 ms [2.099 ms, 2.208 ms] 677.45 µs (45.9%)
profiling 1.992 ms [1.947 ms, 2.036 ms] 516.012 µs (35.0%)
tracing 1.949 ms [1.907 ms, 1.991 ms] 472.963 µs (32.0%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~1323af91db, baseline=1.45.0-SNAPSHOT~d3d6f9c5e0
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.946 s) : 14946000, 14946000
.   : milestone, 14946000,
appsec (15.107 s) : 15107000, 15107000
.   : milestone, 15107000,
iast (18.712 s) : 18712000, 18712000
.   : milestone, 18712000,
iast_GLOBAL (18.127 s) : 18127000, 18127000
.   : milestone, 18127000,
profiling (14.947 s) : 14947000, 14947000
.   : milestone, 14947000,
tracing (14.95 s) : 14950000, 14950000
.   : milestone, 14950000,
section candidate
no_agent (15.46 s) : 15460000, 15460000
.   : milestone, 15460000,
appsec (14.821 s) : 14821000, 14821000
.   : milestone, 14821000,
iast (19.091 s) : 19091000, 19091000
.   : milestone, 19091000,
iast_GLOBAL (18.338 s) : 18338000, 18338000
.   : milestone, 18338000,
profiling (15.14 s) : 15140000, 15140000
.   : milestone, 15140000,
tracing (15.04 s) : 15040000, 15040000
.   : milestone, 15040000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.946 s [14.946 s, 14.946 s] -
appsec 15.107 s [15.107 s, 15.107 s] 161.0 ms (1.1%)
iast 18.712 s [18.712 s, 18.712 s] 3.766 s (25.2%)
iast_GLOBAL 18.127 s [18.127 s, 18.127 s] 3.181 s (21.3%)
profiling 14.947 s [14.947 s, 14.947 s] 1.0 ms (0.0%)
tracing 14.95 s [14.95 s, 14.95 s] 4.0 ms (0.0%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.46 s [15.46 s, 15.46 s] -
appsec 14.821 s [14.821 s, 14.821 s] -639.0 ms (-4.1%)
iast 19.091 s [19.091 s, 19.091 s] 3.631 s (23.5%)
iast_GLOBAL 18.338 s [18.338 s, 18.338 s] 2.878 s (18.6%)
profiling 15.14 s [15.14 s, 15.14 s] -320.0 ms (-2.1%)
tracing 15.04 s [15.04 s, 15.04 s] -420.0 ms (-2.7%)

@amarziali amarziali enabled auto-merge (squash) January 8, 2025 15:11
Copy link
Contributor

github-actions bot commented Jan 8, 2025

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.

@amarziali amarziali disabled auto-merge January 8, 2025 15:20
@amarziali amarziali merged commit 73f194e into master Jan 8, 2025
149 of 150 checks passed
@amarziali amarziali deleted the andrea.marziali/reactor-optimizable branch January 8, 2025 16:00
@github-actions github-actions bot added this to the 1.45.0 milestone Jan 8, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Jan 9, 2025
| 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 | patch |
`2.50.0` -> `2.50.1` |
|
[com.google.cloud:google-cloud-core-http](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.49.0` -> `2.49.1` |
|
[com.google.cloud:google-cloud-core](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.49.0` -> `2.49.1` |
| [com.google.api:gax](https://github.com/googleapis/sdk-platform-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.59.0` -> `2.59.1` |
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.44.1` -> `1.45.0` |
| [com.datadoghq:dd-trace-ot](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.44.1` -> `1.45.0` |
| [software.amazon.awssdk:sdk-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |
|
[software.amazon.awssdk:dynamodb-enhanced](https://aws.amazon.com/sdkforjava)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |
| [software.amazon.awssdk:dynamodb](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |
| [software.amazon.awssdk:aws-core](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |
| [software.amazon.awssdk:bom](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |
| [software.amazon.awssdk:auth](https://aws.amazon.com/sdkforjava) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`2.29.47` -> `2.29.48` |

---

### Release Notes

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

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

##### Breaking changes

> \[!WARNING]\
> Support for custom scope manager using OpenTelemetry tracer artifact
(`dd-trace-ot`) is dropped.
> Tracing with OpenTracing API and custom scope manager will continue to
work on 1.44.x releases.

##### Components

##### Application Security Management (IAST)

- ✨ Add propagation to URI#toURL method
([#&#8203;8146](DataDog/dd-trace-java#8146) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Increase IAST propagation to StringBuilder setLength
([#&#8203;8119](DataDog/dd-trace-java#8119) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Increase IAST propagation to StringBuffer append
([#&#8203;8082](DataDog/dd-trace-java#8082) -
[@&#8203;Mariovido](https://github.com/Mariovido))
- ✨ Handle IAST security controls custom validation and
sanitization methods
([#&#8203;7997](DataDog/dd-trace-java#7997) -
[@&#8203;jandro996](https://github.com/jandro996))

##### Application Security Management (WAF)

- ✨ Update user lifecycle tracking to V3
([#&#8203;8108](DataDog/dd-trace-java#8108) -
[@&#8203;manuel-alvarez-alvarez](https://github.com/manuel-alvarez-alvarez))
- ✨ Exploit prevention for Shell Injection / Command Injection
([#&#8203;7615](DataDog/dd-trace-java#7615) -
[@&#8203;jandro996](https://github.com/jandro996))

##### Build & Tooling

- 💡 Support instrumentation of repackaged libraries
([#&#8203;8153](DataDog/dd-trace-java#8153) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Configure native image build setting for JDK-22 based
GraalVM
([#&#8203;8092](DataDog/dd-trace-java#8092) -
[@&#8203;MattAlp](https://github.com/MattAlp))

##### Database Monitoring

- ✨ Add full APM/DBM mode for Oracle
([#&#8203;8090](DataDog/dd-trace-java#8090) -
[@&#8203;nenadnoveljic](https://github.com/nenadnoveljic))

##### Dynamic Instrumentation

- 🐛 make local var hoisting disabled by default
([#&#8203;8158](DataDog/dd-trace-java#8158) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Fix var hoisting issue when no previous store
([#&#8203;8122](DataDog/dd-trace-java#8122) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- ✨ Only decorate spans without code origin information
([#&#8203;8105](DataDog/dd-trace-java#8105) -
[@&#8203;evanchooly](https://github.com/evanchooly))
- 🐛 Fix suspend Kotlin methods instrumentation
([#&#8203;8080](DataDog/dd-trace-java#8080) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Fix class file version detection
([#&#8203;8057](DataDog/dd-trace-java#8057) -
[@&#8203;jpbempel](https://github.com/jpbempel))

##### GraalVM native-image

- ✨ Configure native image build setting for JDK-22 based
GraalVM
([#&#8203;8092](DataDog/dd-trace-java#8092) -
[@&#8203;MattAlp](https://github.com/MattAlp))

##### ML Observability (LLMObs)

- ✨🧪 Add LLMObs configuration
([#&#8203;8076](DataDog/dd-trace-java#8076) -
[@&#8203;gary-huang](https://github.com/gary-huang))

##### Metrics

- Bump integrations-core submodule to 7.60.0
([#&#8203;8098](DataDog/dd-trace-java#8098) -
[@&#8203;mcculls](https://github.com/mcculls))
- Upgrade to java-dogstatsd-client v4.4.3
([#&#8203;8096](DataDog/dd-trace-java#8096) -
[@&#8203;mcculls](https://github.com/mcculls))

##### OpenTracing

- ⚠️🧹 Remove custom scope manager support
([#&#8203;8164](DataDog/dd-trace-java#8164) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

##### Telemetry

- ✨ Retry telemetry requests if CI Visibility is enabled
([#&#8203;8147](DataDog/dd-trace-java#8147) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Add configurable Dependency service resolution period
([#&#8203;8079](DataDog/dd-trace-java#8079) -
[@&#8203;jandro996](https://github.com/jandro996))

##### Testing

- 🐛 Remove restriction to not run vertx4 latest tests on java 17
([#&#8203;8133](DataDog/dd-trace-java#8133) -
[@&#8203;vandonr](https://github.com/vandonr))

##### Tracer core

- ✨ Defer remote components to avoid OkHttp class-loading
side-effects
([#&#8203;8131](DataDog/dd-trace-java#8131) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Improve Context API null handling and Javadoc
([#&#8203;8129](DataDog/dd-trace-java#8129) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- 🐛⚡ Avoid performing blocking I/O operation on application
thread
([#&#8203;8120](DataDog/dd-trace-java#8120) -
[@&#8203;mcculls](https://github.com/mcculls))
- 💡 Introduce a shared context component, independent of tracing
([#&#8203;8117](DataDog/dd-trace-java#8117) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Improves ServiceNameCollector
([#&#8203;8109](DataDog/dd-trace-java#8109) -
[@&#8203;amarziali](https://github.com/amarziali))
- Upgrade to ASM 9.7.1 (adds new constant for Java 24)
([#&#8203;8097](DataDog/dd-trace-java#8097) -
[@&#8203;mcculls](https://github.com/mcculls))
- 🐛 Dynamically evaluate service name for message consumers
([#&#8203;8088](DataDog/dd-trace-java#8088) -
[@&#8203;amarziali](https://github.com/amarziali))

##### Serverless

- 🐛 Add avoid double instrumenting lambda non-streaming handlers.
([#&#8203;8073](DataDog/dd-trace-java#8073) -
[@&#8203;purple4reina](https://github.com/purple4reina))

##### Instrumentations

##### AWS SDK instrumentation

- 💡 Instrument EMR's relocated AWS SDK
([#&#8203;8157](DataDog/dd-trace-java#8157) -
[@&#8203;mcculls](https://github.com/mcculls))

##### Eclipse Vert.x instrumentation

- 🐛 Remove restriction to not run vertx4 latest tests on java 17
([#&#8203;8133](DataDog/dd-trace-java#8133) -
[@&#8203;vandonr](https://github.com/vandonr))

##### JDBC instrumentation

- ✨ Add full APM/DBM mode for Oracle
([#&#8203;8090](DataDog/dd-trace-java#8090) -
[@&#8203;nenadnoveljic](https://github.com/nenadnoveljic))

##### Jetty instrumentation

- 🐛 Ensure jetty 12 has servlet.path starting with /
([#&#8203;8093](DataDog/dd-trace-java#8093) -
[@&#8203;github-actions](https://github.com/github-actions)\[bot])

##### JMS instrumentation

- 🧹 Re-use `javax` JMS module for `jakarta` namespace
([#&#8203;8155](DataDog/dd-trace-java#8155) -
[@&#8203;mcculls](https://github.com/mcculls))
- 🧹 Group `javax.jms` instrumentations under a single module
([#&#8203;8154](DataDog/dd-trace-java#8154) -
[@&#8203;mcculls](https://github.com/mcculls))

##### Reactor instrumentation

- 🐛 Reactor: early propagate span in context when subscribing
([#&#8203;8166](DataDog/dd-trace-java#8166) -
[@&#8203;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: ba2355aa4e2e39ab1fee27319cc4176238efd90b
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
inst: reactor Reactor instrumentation type: bug
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants