Skip to content

Conversation

mcculls
Copy link
Contributor

@mcculls mcculls commented May 21, 2025

Motivation

This avoids potential class-loading delegation issues when using other products in dd-java-agent

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@mcculls mcculls added type: enhancement Enhancements and improvements inst: java Core Java language instrumentation labels May 21, 2025
@pr-commenter
Copy link

pr-commenter bot commented May 21, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mcculls/classloader-delegation-instrumentation-independent-of-tracing
git_commit_date 1747843428 1747862031
git_commit_sha 58089f3 9670fbf
release_version 1.50.0-SNAPSHOT~58089f324f 1.50.0-SNAPSHOT~9670fbf555
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1747864527 1747864527
ci_job_id 949218892 949218892
ci_pipeline_id 65800006 65800006
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-xfgrdzbb-project-304-concurrent-0-mk8gi6s5 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-xfgrdzbb-project-304-concurrent-0-mk8gi6s5 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None
variant iast iast

Summary

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

Startup time reports for petclinic
gantt title petclinic - global startup overhead: candidate=1.50.0-SNAPSHOT~9670fbf555, baseline=1.50.0-SNAPSHOT~58089f324f dateFormat X axisFormat %s section tracing Agent [baseline] (1.02 s) : 0, 1019908 Total [baseline] (10.507 s) : 0, 10507350 Agent [candidate] (1.024 s) : 0, 1024101 Total [candidate] (10.465 s) : 0, 10465353 section appsec Agent [baseline] (1.162 s) : 0, 1162124 Total [baseline] (10.729 s) : 0, 10728547 Agent [candidate] (1.17 s) : 0, 1170170 Total [candidate] (10.704 s) : 0, 10704118 section iast Agent [baseline] (1.152 s) : 0, 1152103 Total [baseline] (10.872 s) : 0, 10871856 Agent [candidate] (1.158 s) : 0, 1158480 Total [candidate] (10.997 s) : 0, 10996980 section profiling Agent [baseline] (1.265 s) : 0, 1265157 Total [baseline] (10.844 s) : 0, 10844042 Agent [candidate] (1.274 s) : 0, 1274043 Total [candidate] (10.885 s) : 0, 10885162 
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.02 s -
Agent appsec 1.162 s 142.216 ms (13.9%)
Agent iast 1.152 s 132.195 ms (13.0%)
Agent profiling 1.265 s 245.249 ms (24.0%)
Total tracing 10.507 s -
Total appsec 10.729 s 221.197 ms (2.1%)
Total iast 10.872 s 364.506 ms (3.5%)
Total profiling 10.844 s 336.692 ms (3.2%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.024 s -
Agent appsec 1.17 s 146.069 ms (14.3%)
Agent iast 1.158 s 134.378 ms (13.1%)
Agent profiling 1.274 s 249.941 ms (24.4%)
Total tracing 10.465 s -
Total appsec 10.704 s 238.765 ms (2.3%)
Total iast 10.997 s 531.627 ms (5.1%)
Total profiling 10.885 s 419.809 ms (4.0%)
gantt title petclinic - break down per module: candidate=1.50.0-SNAPSHOT~9670fbf555, baseline=1.50.0-SNAPSHOT~58089f324f dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (683.853 ms) : 0, 683853 BytebuddyAgent [candidate] (685.772 ms) : 0, 685772 GlobalTracer [baseline] (240.489 ms) : 0, 240489 GlobalTracer [candidate] (241.115 ms) : 0, 241115 AppSec [baseline] (55.061 ms) : 0, 55061 AppSec [candidate] (55.427 ms) : 0, 55427 Debugger [baseline] (6.975 ms) : 0, 6975 Debugger [candidate] (6.889 ms) : 0, 6889 Remote Config [baseline] (710.338 µs) : 0, 710 Remote Config [candidate] (716.498 µs) : 0, 716 Telemetry [baseline] (9.177 ms) : 0, 9177 Telemetry [candidate] (10.508 ms) : 0, 10508 section appsec BytebuddyAgent [baseline] (701.179 ms) : 0, 701179 BytebuddyAgent [candidate] (706.678 ms) : 0, 706678 GlobalTracer [baseline] (236.94 ms) : 0, 236940 GlobalTracer [candidate] (238.23 ms) : 0, 238230 IAST [baseline] (21.804 ms) : 0, 21804 IAST [candidate] (21.819 ms) : 0, 21819 AppSec [baseline] (175.15 ms) : 0, 175150 AppSec [candidate] (176.206 ms) : 0, 176206 Debugger [baseline] (6.35 ms) : 0, 6350 Debugger [candidate] (5.962 ms) : 0, 5962 Remote Config [baseline] (634.447 µs) : 0, 634 Remote Config [candidate] (645.589 µs) : 0, 646 Telemetry [baseline] (7.398 ms) : 0, 7398 Telemetry [candidate] (7.838 ms) : 0, 7838 section iast BytebuddyAgent [baseline] (804.238 ms) : 0, 804238 BytebuddyAgent [candidate] (808.551 ms) : 0, 808551 GlobalTracer [baseline] (230.953 ms) : 0, 230953 GlobalTracer [candidate] (232.626 ms) : 0, 232626 IAST [baseline] (27.552 ms) : 0, 27552 IAST [candidate] (29.367 ms) : 0, 29367 AppSec [baseline] (51.345 ms) : 0, 51345 AppSec [candidate] (49.577 ms) : 0, 49577 Debugger [baseline] (5.928 ms) : 0, 5928 Debugger [candidate] (5.991 ms) : 0, 5991 Remote Config [baseline] (604.067 µs) : 0, 604 Remote Config [candidate] (613.596 µs) : 0, 614 Telemetry [baseline] (7.868 ms) : 0, 7868 Telemetry [candidate] (7.975 ms) : 0, 7975 section profiling BytebuddyAgent [baseline] (673.656 ms) : 0, 673656 BytebuddyAgent [candidate] (679.291 ms) : 0, 679291 GlobalTracer [baseline] (360.532 ms) : 0, 360532 GlobalTracer [candidate] (361.657 ms) : 0, 361657 AppSec [baseline] (61.869 ms) : 0, 61869 AppSec [candidate] (62.454 ms) : 0, 62454 Debugger [baseline] (6.261 ms) : 0, 6261 Debugger [candidate] (6.327 ms) : 0, 6327 Remote Config [baseline] (657.25 µs) : 0, 657 Remote Config [candidate] (672.019 µs) : 0, 672 Telemetry [baseline] (8.22 ms) : 0, 8220 Telemetry [candidate] (8.32 ms) : 0, 8320 ProfilingAgent [baseline] (102.992 ms) : 0, 102992 ProfilingAgent [candidate] (104.016 ms) : 0, 104016 Profiling [baseline] (103.016 ms) : 0, 103016 Profiling [candidate] (104.04 ms) : 0, 104040 
Loading
Startup time reports for insecure-bank
gantt title insecure-bank - global startup overhead: candidate=1.50.0-SNAPSHOT~9670fbf555, baseline=1.50.0-SNAPSHOT~58089f324f dateFormat X axisFormat %s section tracing Agent [baseline] (1.019 s) : 0, 1019330 Total [baseline] (8.646 s) : 0, 8646069 Agent [candidate] (1.021 s) : 0, 1021174 Total [candidate] (8.631 s) : 0, 8630974 section iast Agent [baseline] (1.15 s) : 0, 1149643 Total [baseline] (9.218 s) : 0, 9217725 Agent [candidate] (1.164 s) : 0, 1164334 Total [candidate] (9.248 s) : 0, 9248042 section iast_HARDCODED_SECRET_DISABLED Agent [baseline] (1.15 s) : 0, 1149653 Total [baseline] (9.211 s) : 0, 9211128 Agent [candidate] (1.149 s) : 0, 1149184 Total [candidate] (9.152 s) : 0, 9152459 section iast_TELEMETRY_OFF Agent [baseline] (1.147 s) : 0, 1147270 Total [baseline] (9.212 s) : 0, 9212084 Agent [candidate] (1.152 s) : 0, 1152404 Total [candidate] (9.266 s) : 0, 9266328 
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.019 s -
Agent iast 1.15 s 130.313 ms (12.8%)
Agent iast_HARDCODED_SECRET_DISABLED 1.15 s 130.324 ms (12.8%)
Agent iast_TELEMETRY_OFF 1.147 s 127.94 ms (12.6%)
Total tracing 8.646 s -
Total iast 9.218 s 571.656 ms (6.6%)
Total iast_HARDCODED_SECRET_DISABLED 9.211 s 565.059 ms (6.5%)
Total iast_TELEMETRY_OFF 9.212 s 566.016 ms (6.5%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.021 s -
Agent iast 1.164 s 143.16 ms (14.0%)
Agent iast_HARDCODED_SECRET_DISABLED 1.149 s 128.01 ms (12.5%)
Agent iast_TELEMETRY_OFF 1.152 s 131.23 ms (12.9%)
Total tracing 8.631 s -
Total iast 9.248 s 617.068 ms (7.1%)
Total iast_HARDCODED_SECRET_DISABLED 9.152 s 521.485 ms (6.0%)
Total iast_TELEMETRY_OFF 9.266 s 635.353 ms (7.4%)
gantt title insecure-bank - break down per module: candidate=1.50.0-SNAPSHOT~9670fbf555, baseline=1.50.0-SNAPSHOT~58089f324f dateFormat X axisFormat %s section tracing BytebuddyAgent [baseline] (682.658 ms) : 0, 682658 BytebuddyAgent [candidate] (681.918 ms) : 0, 681918 GlobalTracer [baseline] (239.909 ms) : 0, 239909 GlobalTracer [candidate] (240.155 ms) : 0, 240155 AppSec [baseline] (54.347 ms) : 0, 54347 AppSec [candidate] (54.51 ms) : 0, 54510 Debugger [baseline] (6.883 ms) : 0, 6883 Debugger [candidate] (10.51 ms) : 0, 10510 Remote Config [baseline] (719.68 µs) : 0, 720 Remote Config [candidate] (712.746 µs) : 0, 713 Telemetry [baseline] (11.362 ms) : 0, 11362 Telemetry [candidate] (9.807 ms) : 0, 9807 section iast BytebuddyAgent [baseline] (802.918 ms) : 0, 802918 BytebuddyAgent [candidate] (812.956 ms) : 0, 812956 GlobalTracer [baseline] (230.236 ms) : 0, 230236 GlobalTracer [candidate] (233.249 ms) : 0, 233249 IAST [baseline] (28.944 ms) : 0, 28944 IAST [candidate] (27.365 ms) : 0, 27365 AppSec [baseline] (48.743 ms) : 0, 48743 AppSec [candidate] (50.075 ms) : 0, 50075 Debugger [baseline] (5.933 ms) : 0, 5933 Debugger [candidate] (6.052 ms) : 0, 6052 Remote Config [baseline] (605.547 µs) : 0, 606 Remote Config [candidate] (593.992 µs) : 0, 594 Telemetry [baseline] (7.91 ms) : 0, 7910 Telemetry [candidate] (7.974 ms) : 0, 7974 section iast_HARDCODED_SECRET_DISABLED BytebuddyAgent [baseline] (801.766 ms) : 0, 801766 BytebuddyAgent [candidate] (801.601 ms) : 0, 801601 GlobalTracer [baseline] (230.828 ms) : 0, 230828 GlobalTracer [candidate] (230.725 ms) : 0, 230725 IAST [baseline] (27.756 ms) : 0, 27756 IAST [candidate] (28.74 ms) : 0, 28740 AppSec [baseline] (51.323 ms) : 0, 51323 AppSec [candidate] (49.46 ms) : 0, 49460 Debugger [baseline] (5.89 ms) : 0, 5890 Debugger [candidate] (5.905 ms) : 0, 5905 Remote Config [baseline] (587.94 µs) : 0, 588 Remote Config [candidate] (594.268 µs) : 0, 594 Telemetry [baseline] (7.923 ms) : 0, 7923 Telemetry [candidate] (7.894 ms) : 0, 7894 section iast_TELEMETRY_OFF BytebuddyAgent [baseline] (799.293 ms) : 0, 799293 BytebuddyAgent [candidate] (804.385 ms) : 0, 804385 GlobalTracer [baseline] (230.73 ms) : 0, 230730 GlobalTracer [candidate] (231.839 ms) : 0, 231839 IAST [baseline] (22.481 ms) : 0, 22481 IAST [candidate] (23.294 ms) : 0, 23294 AppSec [baseline] (56.787 ms) : 0, 56787 AppSec [candidate] (54.864 ms) : 0, 54864 Debugger [baseline] (5.997 ms) : 0, 5997 Debugger [candidate] (5.958 ms) : 0, 5958 Remote Config [baseline] (597.113 µs) : 0, 597 Remote Config [candidate] (612.122 µs) : 0, 612 Telemetry [baseline] (7.78 ms) : 0, 7780 Telemetry [candidate] (7.808 ms) : 0, 7808 
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-05-21T21:25:45 2025-05-21T21:33:30
git_branch master mcculls/classloader-delegation-instrumentation-independent-of-tracing
git_commit_date 1747843428 1747862031
git_commit_sha 58089f3 9670fbf
release_version 1.50.0-SNAPSHOT~58089f324f 1.50.0-SNAPSHOT~9670fbf555
start_time 2025-05-21T21:25:30 2025-05-21T21:33:16
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1747863611 1747863611
ci_job_id 949218893 949218893
ci_pipeline_id 65800006 65800006
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-qzhj-cns-project-304-concurrent-0-8ri23pjx 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-qzhj-cns-project-304-concurrent-0-8ri23pjx 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
variant iast iast

Summary

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

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:petclinic:profiling worse
[+31.139µs; +83.801µs] or [+2.034%; +5.474%]
unstable
[-627.312op/s; +399.392op/s] or [-20.388%; +12.980%]
1.588ms 2962.963op/s 1.531ms 3076.923op/s
Request duration reports for insecure-bank
gantt title insecure-bank - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~9670fbf555, baseline=1.50.0-SNAPSHOT~58089f324f dateFormat X axisFormat %s section baseline no_agent (393.878 µs) : 374, 414 . : milestone, 394, iast (527.108 µs) : 504, 550 . : milestone, 527, iast_FULL (738.291 µs) : 716, 760 . : milestone, 738, iast_GLOBAL (567.056 µs) : 545, 589 . : milestone, 567, iast_HARDCODED_SECRET_DISABLED (531.683 µs) : 509, 555 . : milestone, 532, iast_INACTIVE (468.129 µs) : 446, 491 . : milestone, 468, iast_TELEMETRY_OFF (504.919 µs) : 482, 528 . : milestone, 505, tracing (465.364 µs) : 443, 488 . : milestone, 465, section candidate no_agent (390.676 µs) : 370, 411 . : milestone, 391, iast (524.266 µs) : 501, 547 . : milestone, 524, iast_FULL (739.815 µs) : 718, 762 . : milestone, 740, iast_GLOBAL (574.224 µs) : 552, 597 . : milestone, 574, iast_HARDCODED_SECRET_DISABLED (515.336 µs) : 493, 538 . : milestone, 515, iast_INACTIVE (463.804 µs) : 443, 485 . : milestone, 464, iast_TELEMETRY_OFF (526.493 µs) : 503, 550 . : milestone, 526, tracing (467.673 µs) : 445, 490 . : milestone, 468, 
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 393.878 µs [373.846 µs, 413.91 µs] -
iast 527.108 µs [503.818 µs, 550.398 µs] 133.23 µs (33.8%)
iast_FULL 738.291 µs [716.178 µs, 760.404 µs] 344.413 µs (87.4%)
iast_GLOBAL 567.056 µs [544.981 µs, 589.131 µs] 173.178 µs (44.0%)
iast_HARDCODED_SECRET_DISABLED 531.683 µs [508.813 µs, 554.553 µs] 137.805 µs (35.0%)
iast_INACTIVE 468.129 µs [445.61 µs, 490.648 µs] 74.251 µs (18.9%)
iast_TELEMETRY_OFF 504.919 µs [482.147 µs, 527.692 µs] 111.041 µs (28.2%)
tracing 465.364 µs [442.897 µs, 487.832 µs] 71.486 µs (18.1%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 390.676 µs [369.974 µs, 411.377 µs] -
iast 524.266 µs [501.307 µs, 547.225 µs] 133.59 µs (34.2%)
iast_FULL 739.815 µs [717.837 µs, 761.793 µs] 349.139 µs (89.4%)
iast_GLOBAL 574.224 µs [551.92 µs, 596.529 µs] 183.549 µs (47.0%)
iast_HARDCODED_SECRET_DISABLED 515.336 µs [492.996 µs, 537.676 µs] 124.66 µs (31.9%)
iast_INACTIVE 463.804 µs [442.804 µs, 484.804 µs] 73.129 µs (18.7%)
iast_TELEMETRY_OFF 526.493 µs [502.948 µs, 550.037 µs] 135.817 µs (34.8%)
tracing 467.673 µs [444.958 µs, 490.388 µs] 76.997 µs (19.7%)
Request duration reports for petclinic
gantt title petclinic - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~9670fbf555, baseline=1.50.0-SNAPSHOT~58089f324f dateFormat X axisFormat %s section baseline no_agent (1.369 ms) : 1349, 1389 . : milestone, 1369, appsec (1.738 ms) : 1714, 1762 . : milestone, 1738, appsec_no_iast (1.739 ms) : 1716, 1762 . : milestone, 1739, code_origins (1.671 ms) : 1645, 1698 . : milestone, 1671, iast (1.52 ms) : 1497, 1544 . : milestone, 1520, profiling (1.531 ms) : 1508, 1554 . : milestone, 1531, tracing (1.497 ms) : 1472, 1521 . : milestone, 1497, section candidate no_agent (1.367 ms) : 1347, 1387 . : milestone, 1367, appsec (1.749 ms) : 1725, 1773 . : milestone, 1749, appsec_no_iast (1.752 ms) : 1729, 1775 . : milestone, 1752, code_origins (1.663 ms) : 1636, 1690 . : milestone, 1663, iast (1.528 ms) : 1504, 1551 . : milestone, 1528, profiling (1.588 ms) : 1563, 1614 . : milestone, 1588, tracing (1.509 ms) : 1484, 1534 . : milestone, 1509, 
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.369 ms [1.349 ms, 1.389 ms] -
appsec 1.738 ms [1.714 ms, 1.762 ms] 369.102 µs (27.0%)
appsec_no_iast 1.739 ms [1.716 ms, 1.762 ms] 369.87 µs (27.0%)
code_origins 1.671 ms [1.645 ms, 1.698 ms] 302.28 µs (22.1%)
iast 1.52 ms [1.497 ms, 1.544 ms] 151.295 µs (11.1%)
profiling 1.531 ms [1.508 ms, 1.554 ms] 161.959 µs (11.8%)
tracing 1.497 ms [1.472 ms, 1.521 ms] 127.66 µs (9.3%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.367 ms [1.347 ms, 1.387 ms] -
appsec 1.749 ms [1.725 ms, 1.773 ms] 381.915 µs (27.9%)
appsec_no_iast 1.752 ms [1.729 ms, 1.775 ms] 385.068 µs (28.2%)
code_origins 1.663 ms [1.636 ms, 1.69 ms] 295.437 µs (21.6%)
iast 1.528 ms [1.504 ms, 1.551 ms] 160.323 µs (11.7%)
profiling 1.588 ms [1.563 ms, 1.614 ms] 221.278 µs (16.2%)
tracing 1.509 ms [1.484 ms, 1.534 ms] 141.676 µs (10.4%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mcculls/classloader-delegation-instrumentation-independent-of-tracing
git_commit_date 1747843428 1747862031
git_commit_sha 58089f3 9670fbf
release_version 1.50.0-SNAPSHOT~58089f324f 1.50.0-SNAPSHOT~9670fbf555
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1747864020 1747864020
ci_job_id 949218894 949218894
ci_pipeline_id 65800006 65800006
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-vhwr7gmc-project-304-concurrent-0-2iwpc7sh 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-vhwr7gmc-project-304-concurrent-0-2iwpc7sh 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
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.50.0-SNAPSHOT~9670fbf555, baseline=1.50.0-SNAPSHOT~58089f324f dateFormat X axisFormat %s section baseline no_agent (1.481 ms) : 1470, 1493 . : milestone, 1481, appsec (2.413 ms) : 2364, 2462 . : milestone, 2413, iast (2.198 ms) : 2136, 2259 . : milestone, 2198, iast_GLOBAL (2.232 ms) : 2170, 2294 . : milestone, 2232, profiling (2.033 ms) : 1985, 2082 . : milestone, 2033, tracing (2.028 ms) : 1980, 2076 . : milestone, 2028, section candidate no_agent (1.48 ms) : 1468, 1491 . : milestone, 1480, appsec (2.417 ms) : 2368, 2465 . : milestone, 2417, iast (2.202 ms) : 2139, 2264 . : milestone, 2202, iast_GLOBAL (2.232 ms) : 2170, 2293 . : milestone, 2232, profiling (2.035 ms) : 1986, 2084 . : milestone, 2035, tracing (2.041 ms) : 1992, 2089 . : milestone, 2041, 
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.481 ms [1.47 ms, 1.493 ms] -
appsec 2.413 ms [2.364 ms, 2.462 ms] 931.354 µs (62.9%)
iast 2.198 ms [2.136 ms, 2.259 ms] 716.32 µs (48.4%)
iast_GLOBAL 2.232 ms [2.17 ms, 2.294 ms] 750.812 µs (50.7%)
profiling 2.033 ms [1.985 ms, 2.082 ms] 551.762 µs (37.2%)
tracing 2.028 ms [1.98 ms, 2.076 ms] 546.324 µs (36.9%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.48 ms [1.468 ms, 1.491 ms] -
appsec 2.417 ms [2.368 ms, 2.465 ms] 936.877 µs (63.3%)
iast 2.202 ms [2.139 ms, 2.264 ms] 721.756 µs (48.8%)
iast_GLOBAL 2.232 ms [2.17 ms, 2.293 ms] 751.675 µs (50.8%)
profiling 2.035 ms [1.986 ms, 2.084 ms] 554.778 µs (37.5%)
tracing 2.041 ms [1.992 ms, 2.089 ms] 560.645 µs (37.9%)
Execution time for biojava
gantt title biojava - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~9670fbf555, baseline=1.50.0-SNAPSHOT~58089f324f dateFormat X axisFormat %s section baseline no_agent (15.451 s) : 15451000, 15451000 . : milestone, 15451000, appsec (15.017 s) : 15017000, 15017000 . : milestone, 15017000, iast (18.334 s) : 18334000, 18334000 . : milestone, 18334000, iast_GLOBAL (18.073 s) : 18073000, 18073000 . : milestone, 18073000, profiling (14.946 s) : 14946000, 14946000 . : milestone, 14946000, tracing (14.863 s) : 14863000, 14863000 . : milestone, 14863000, section candidate no_agent (15.458 s) : 15458000, 15458000 . : milestone, 15458000, appsec (14.796 s) : 14796000, 14796000 . : milestone, 14796000, iast (19.105 s) : 19105000, 19105000 . : milestone, 19105000, iast_GLOBAL (18.265 s) : 18265000, 18265000 . : milestone, 18265000, profiling (15.132 s) : 15132000, 15132000 . : milestone, 15132000, tracing (14.953 s) : 14953000, 14953000 . : milestone, 14953000, 
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.451 s [15.451 s, 15.451 s] -
appsec 15.017 s [15.017 s, 15.017 s] -434.0 ms (-2.8%)
iast 18.334 s [18.334 s, 18.334 s] 2.883 s (18.7%)
iast_GLOBAL 18.073 s [18.073 s, 18.073 s] 2.622 s (17.0%)
profiling 14.946 s [14.946 s, 14.946 s] -505.0 ms (-3.3%)
tracing 14.863 s [14.863 s, 14.863 s] -588.0 ms (-3.8%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.458 s [15.458 s, 15.458 s] -
appsec 14.796 s [14.796 s, 14.796 s] -662.0 ms (-4.3%)
iast 19.105 s [19.105 s, 19.105 s] 3.647 s (23.6%)
iast_GLOBAL 18.265 s [18.265 s, 18.265 s] 2.807 s (18.2%)
profiling 15.132 s [15.132 s, 15.132 s] -326.0 ms (-2.1%)
tracing 14.953 s [14.953 s, 14.953 s] -505.0 ms (-3.3%)
…CE_ENABLED=false This avoids potential class-loading delegation issues when using other products in dd-java-agent
@mcculls mcculls force-pushed the mcculls/classloader-delegation-instrumentation-independent-of-tracing branch from 54f795e to 9670fbf Compare May 21, 2025 21:13
@mcculls mcculls marked this pull request as ready for review May 21, 2025 22:35
@mcculls mcculls requested a review from a team as a code owner May 21, 2025 22:35
@mcculls mcculls enabled auto-merge (squash) May 21, 2025 22:35
@mcculls mcculls merged commit 43d6612 into master May 22, 2025
591 of 592 checks passed
@mcculls mcculls deleted the mcculls/classloader-delegation-instrumentation-independent-of-tracing branch May 22, 2025 06:53
@github-actions github-actions bot added this to the 1.50.0 milestone May 22, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Jun 20, 2025
| 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.49.0` -> `1.50.0` | --- ### Release Notes <details> <summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary> ### [`v1.50.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.50.0): 1.50.0 ### Deprecation Notice > \[!NOTE] > `DD_RUNTIME_ID_ENABLED` has been deprecated and will be removed in future releases. Please use `DD_RUNTIME_METRICS_RUNTIME_ID_ENABLED` instead. ### Components #### Application Security Management (WAF) - 🐛 Add String length truncation limit to ObjectIntrospector and update truncation metrics ([#&#8203;8825](DataDog/dd-trace-java#8825) - [@&#8203;jandro996](https://github.com/jandro996)) - 🐛 Adapt standalone ASM to support API Security ([#&#8203;8804](DataDog/dd-trace-java#8804) - [@&#8203;jandro996](https://github.com/jandro996)) - ✨ Add appsec.waf.input\_truncated metric ([#&#8203;8791](DataDog/dd-trace-java#8791) - [@&#8203;jandro996](https://github.com/jandro996)) - ✨ Extended appsec request body collection ([#&#8203;8748](DataDog/dd-trace-java#8748) - [@&#8203;jandro996](https://github.com/jandro996)) - ✨ Extended appsec request/response headers collection ([#&#8203;8724](DataDog/dd-trace-java#8724) - [@&#8203;jandro996](https://github.com/jandro996)) #### Build & Tooling - ✨ Add artifacts to public s3 bucket ([#&#8203;8947](DataDog/dd-trace-java#8947) - [@&#8203;randomanderson](https://github.com/randomanderson)) #### Continuous Integration Visibility - ✨ Improve PR information building ([#&#8203;8908](DataDog/dd-trace-java#8908) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Truncate span stack traces when Test Optimization is enabled ([#&#8203;8903](DataDog/dd-trace-java#8903) - [@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Ensure auto-detected service name is the same for every process in the same build ([#&#8203;8902](DataDog/dd-trace-java#8902) - [@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog)) - 🐛 Use tag as fallback in api requests if no branch is available ([#&#8203;8876](DataDog/dd-trace-java#8876) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Add support for JUnit 5.13-RC1 ([#&#8203;8865](DataDog/dd-trace-java#8865), [#&#8203;8871](DataDog/dd-trace-java#8871) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Implement attempt to fix v3 and v4 and bump capability version ([#&#8203;8824](DataDog/dd-trace-java#8824) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) - 🧹 Align retry logic for all test framework instrumentations ([#&#8203;8803](DataDog/dd-trace-java#8803) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) - 🐛 Always build ci workspace without trailing separator ([#&#8203;8788](DataDog/dd-trace-java#8788) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) - ✨ Add commit discrepancies telemetry when building repository git information ([#&#8203;8763](DataDog/dd-trace-java#8763) - [@&#8203;daniel-mohedano](https://github.com/daniel-mohedano)) #### Data Streams Monitoring - 💡 Surface process tags in dsm payloads and use them for base hash calculation ([#&#8203;8836](DataDog/dd-trace-java#8836) - [@&#8203;amarziali](https://github.com/amarziali)) #### Dynamic Instrumentation - ✨ Optimized allocations for collection filter functions ([#&#8203;8896](DataDog/dd-trace-java#8896) - [@&#8203;jpbempel](https://github.com/jpbempel)) - 🐛 Fix SymDB upload size check ([#&#8203;8887](DataDog/dd-trace-java#8887) - [@&#8203;jpbempel](https://github.com/jpbempel)) - 🐛 Add support for Set in filter function ([#&#8203;8873](DataDog/dd-trace-java#8873) - [@&#8203;jpbempel](https://github.com/jpbempel)) - 🐛 Add support for isDefined in log template ([#&#8203;8859](DataDog/dd-trace-java#8859) - [@&#8203;jpbempel](https://github.com/jpbempel)) - 🐛 Fix Max captured frames for Exception Replay ([#&#8203;8856](DataDog/dd-trace-java#8856) - [@&#8203;jpbempel](https://github.com/jpbempel)) - 🐛 Remove static inherited fields collection ([#&#8203;8832](DataDog/dd-trace-java#8832) - [@&#8203;jpbempel](https://github.com/jpbempel)) - 💡 Add process tags to dynamic instrumentation intake payload ([#&#8203;8779](DataDog/dd-trace-java#8779) - [@&#8203;amarziali](https://github.com/amarziali)) #### GraalVM native-image - ✨ Add support for GraalVM Native GC metrics ([#&#8203;8913](DataDog/dd-trace-java#8913) - [@&#8203;ygree](https://github.com/ygree)) - ✨ Add JMXFetch support for GraalVM Native ([#&#8203;8569](DataDog/dd-trace-java#8569) - [@&#8203;ygree](https://github.com/ygree)) #### JMX fetch - ✨ Add support for GraalVM Native GC metrics ([#&#8203;8913](DataDog/dd-trace-java#8913) - [@&#8203;ygree](https://github.com/ygree)) #### Library Injection - ✨ Deny oracle db jvm based tools ([#&#8203;8909](DataDog/dd-trace-java#8909) - [@&#8203;bric3](https://github.com/bric3)) #### OpenTracing - 🐛 Fix OT packaging for exception replay ([#&#8203;8912](DataDog/dd-trace-java#8912) - [@&#8203;jpbempel](https://github.com/jpbempel)) #### Profiling - ✨ Bump ddprof to 1.27.0 ([#&#8203;8893](DataDog/dd-trace-java#8893) - [@&#8203;jbachorik](https://github.com/jbachorik)) - Properly handle the adaptive sampling interval overflow by [@&#8203;jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#213 - Fix [#&#8203;200](DataDog/dd-trace-java#200) Crash related to aligned\_alloc and free in context by [@&#8203;yanglong1010](https://github.com/yanglong1010) in DataDog/java-profiler#208 - Explicitly initialize empty context page by [@&#8203;jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#210 - Re-connect crash recursion protection with VM stackwalker by [@&#8203;jbachorik](https://github.com/jbachorik) in DataDog/java-profiler#214 - ✨ Enable ZSTD compression for profiling ([#&#8203;8862](DataDog/dd-trace-java#8862) - [@&#8203;MattAlp](https://github.com/MattAlp)) - ✨ Extend JPS re-implementation to J9 family ([#&#8203;8813](DataDog/dd-trace-java#8813) - [@&#8203;MattAlp](https://github.com/MattAlp)) - 💡 Collect process tags for profiling upload requests ([#&#8203;8780](DataDog/dd-trace-java#8780) - [@&#8203;amarziali](https://github.com/amarziali)) #### Telemetry - 💡 Surface process tags on telemetry payloads ([#&#8203;8837](DataDog/dd-trace-java#8837) - [@&#8203;amarziali](https://github.com/amarziali)) #### Trace context propagation - ✨ Migrating all HttpClient Instrumentations to Inject Full Context ([#&#8203;8826](DataDog/dd-trace-java#8826) - [@&#8203;mhlidd](https://github.com/mhlidd)) - ✨ Migrating all HttpServer Instrumentations to Extract full Context ([#&#8203;8820](DataDog/dd-trace-java#8820) - [@&#8203;mhlidd](https://github.com/mhlidd)) - ✨ Add context API support OTel propagators ([#&#8203;8770](DataDog/dd-trace-java#8770) - [@&#8203;PerfectSlayer](https://github.com/PerfectSlayer)) #### Tracer core - ✨⚡ Skip JAXB generated classes classloader ([#&#8203;9003](DataDog/dd-trace-java#9003) - [@&#8203;bric3](https://github.com/bric3)) - ✨ Add DD\_RUNTIME\_METRICS\_RUNTIME\_ID\_ENABLED alias for runtime id generation ([#&#8203;8981](DataDog/dd-trace-java#8981) - [@&#8203;amarziali](https://github.com/amarziali)) - 🐛 Use resolved address for peer.hostname when available without hitting the cache ([#&#8203;8915](DataDog/dd-trace-java#8915) - [@&#8203;amarziali](https://github.com/amarziali)) - 💡 Surface server name process tag for tomcat ([#&#8203;8894](DataDog/dd-trace-java#8894) - [@&#8203;amarziali](https://github.com/amarziali)) - 💡 Surface websphere cell and server name on process tags ([#&#8203;8880](DataDog/dd-trace-java#8880) - [@&#8203;amarziali](https://github.com/amarziali)) - ✨ Added special lightweight pre-main class that skips installation on incompatible JVMs. ([#&#8203;8855](DataDog/dd-trace-java#8855) - [@&#8203;AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD)) - 💡 Add entrypoint type to process tags ([#&#8203;8839](DataDog/dd-trace-java#8839) - [@&#8203;amarziali](https://github.com/amarziali)) - ✨ Extend JPS re-implementation to J9 family ([#&#8203;8813](DataDog/dd-trace-java#8813) - [@&#8203;MattAlp](https://github.com/MattAlp)) - ✨ Notify listeners when the scope top changes after switching scope stacks ([#&#8203;8797](DataDog/dd-trace-java#8797) - [@&#8203;mcculls](https://github.com/mcculls)) - ✨ Read hsperfdata for Java PIDs if jvmstat is unavailable ([#&#8203;8792](DataDog/dd-trace-java#8792) - [@&#8203;MattAlp](https://github.com/MattAlp)) - 🐛 Turn JDK socket support on by default ([#&#8203;8752](DataDog/dd-trace-java#8752) - [@&#8203;sarahchen6](https://github.com/sarahchen6)) - ✨ Simplify context propagation ([#&#8203;8719](DataDog/dd-trace-java#8719) - [@&#8203;PerfectSlayer](https://github.com/PerfectSlayer)) - ✨ Add JSON parsing support ([#&#8203;8579](DataDog/dd-trace-java#8579) - [@&#8203;PerfectSlayer](https://github.com/PerfectSlayer)) #### Tracer internal logging - ✨ Fix printing format of span identifiers ([#&#8203;8897](DataDog/dd-trace-java#8897) - [@&#8203;vandonr](https://github.com/vandonr)) #### Tracer public API - 💡 Track the source of installation ([#&#8203;8956](DataDog/dd-trace-java#8956) - [@&#8203;mabdinur](https://github.com/mabdinur)) - ✨ Enforce size limit on application\_monitoring.yaml files ([#&#8203;8789](DataDog/dd-trace-java#8789) - [@&#8203;mtoffl01](https://github.com/mtoffl01)) - ✨ Enabling baggage cache to support limits and non-ascii characters ([#&#8203;8713](DataDog/dd-trace-java#8713) - [@&#8203;mhlidd](https://github.com/mhlidd)) ### Instrumentations #### AWS Lambda instrumentation - ✨ Pass Lambda Request ID to Extension ([#&#8203;8814](DataDog/dd-trace-java#8814) - [@&#8203;nhulston](https://github.com/nhulston)) #### Core Java language instrumentation - ✨ Ensure ClassloadingInstrumentation is always applied even with `DD_TRACE_ENABLED=false` ([#&#8203;8863](DataDog/dd-trace-java#8863) - [@&#8203;mcculls](https://github.com/mcculls)) #### Eclipse Vert.x instrumentation - 🐛 Do not override route with / in vertx instrumentation ([#&#8203;8881](DataDog/dd-trace-java#8881) - [@&#8203;vandonr](https://github.com/vandonr)) #### IBM Liberty - 🐛 Fix error mark on http status for IBM liberty ([#&#8203;8822](DataDog/dd-trace-java#8822) - [@&#8203;amarziali](https://github.com/amarziali)) #### JDBC instrumentation - 🐛 Do not prepend DBM <> APM trace comment in SQLCommenter if there is a pg plan hint ([#&#8203;8864](DataDog/dd-trace-java#8864) - [@&#8203;edengorevoy](https://github.com/edengorevoy)) #### JMS instrumentation - ✨ Add jms as an extra integration name where there is JMS involved ([#&#8203;8933](DataDog/dd-trace-java#8933) - [@&#8203;vandonr](https://github.com/vandonr)) #### Kotlin instrumentation - ✨ Enable kotlin\_coroutine integration by default ([#&#8203;8848](DataDog/dd-trace-java#8848) - [@&#8203;mcculls](https://github.com/mcculls)) - 🧹 Rework Kotlin coroutines instrumentation around coroutine context ([#&#8203;8774](DataDog/dd-trace-java#8774) - [@&#8203;mcculls](https://github.com/mcculls)) #### OpenTelemetry instrumentation - 🐛 Support WithSpan inheritContext attribute ([#&#8203;8858](DataDog/dd-trace-java#8858) - [@&#8203;amarziali](https://github.com/amarziali)) - ✨ Add context API support OTel propagators ([#&#8203;8770](DataDog/dd-trace-java#8770) - [@&#8203;PerfectSlayer](https://github.com/PerfectSlayer)) #### Play Framework instrumentation - 🐛 Fix the Play Framework's span resource name priority so that the client JAX-RS 404 cannot override it ([#&#8203;8591](DataDog/dd-trace-java#8591) - [@&#8203;ygree](https://github.com/ygree)) #### Quarkus Instrumentation - 🐛 Ignore quarkus jaxrs stubs and cdi wrapper proxies ([#&#8203;8891](DataDog/dd-trace-java#8891) - [@&#8203;amarziali](https://github.com/amarziali)) #### ServiceTalk - ✨ Improve ServiceTalk Captured Context API Instrumentation for v0.42.56+ ([#&#8203;8821](DataDog/dd-trace-java#8821) - [@&#8203;ygree](https://github.com/ygree)) #### Spring instrumentation - ✨ Supporting Baggage for Instrumentations used in Weblog Tests ([#&#8203;8773](DataDog/dd-trace-java#8773) - [@&#8203;mhlidd](https://github.com/mhlidd)) #### WebSocket Instrumentation - 💡 Trace websocket for spring webflux reactive handlers ([#&#8203;8831](DataDog/dd-trace-java#8831) - [@&#8203;amarziali](https://github.com/amarziali)) - 💡:test\_tube: WebSocket support for Netty ([#&#8203;8632](DataDog/dd-trace-java#8632) - [@&#8203;ValentinZakharov](https://github.com/ValentinZakharov)) #### Zio Instrumentation - 🧹 Cleanup Zio fiber instrumentation to avoid repeated activation of continuation ([#&#8203;8798](DataDog/dd-trace-java#8798) - [@&#8203;mcculls](https://github.com/mcculls)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 6pm every weekday,before 2am every weekday" in timezone Australia/Melbourne, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- 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: 9207366cdb6a1bd098082305d354a0a3c4622d7a
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

inst: java Core Java language instrumentation type: enhancement Enhancements and improvements

2 participants