Skip to content

Automatically register crashtracking via native extensions #8851

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

Draft
wants to merge 26 commits into
base: master
Choose a base branch
from

Conversation

MattAlp
Copy link
Contributor

@MattAlp MattAlp commented May 19, 2025

What Does This Do

This PR

  • reorganizes some of our Gradle dependencies to pull in ddprof.jar just the one time despite being used for multiple tracer features
  • enables crashtracking's automatic registration (if the dependent JVM flags have not been set by the customer via the command line)

Motivation

We would like to automatically enable crashtracking.

Additional Notes

The native library loading behavior & interactions via the tracer's Java code have been documented in our internal wiki, see "Loading of the ddprof Native Library in dd-trace-java". We could potentially include these docs in this PR for external contributors.

Contributor Checklist

Jira ticket: PROF-11747 [PROF-10707] [PROF-11858]

@MattAlp MattAlp requested review from a team as code owners May 19, 2025 19:34
@MattAlp MattAlp requested a review from mcculls May 19, 2025 19:34
@MattAlp MattAlp added tag: dependencies Dependencies related changes comp: profiling Profiling comp: tooling Build & Tooling comp: crash tracking Crash tracking labels May 19, 2025
@pr-commenter
Copy link

pr-commenter bot commented May 19, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mattalp/reroute-gradle-profiler-dependencies
git_commit_date 1746789389 1748434761
git_commit_sha ad6d5fe dc725c3
release_version 1.50.0-SNAPSHOT~ad6d5fef42 1.50.0-SNAPSHOT~dc725c3ede
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1748437111 1748437111
ci_job_id 957412427 957412427
ci_pipeline_id 66306273 66306273
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-qshkhgbg-project-304-concurrent-0-mvvw4i1z 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-qshkhgbg-project-304-concurrent-0-mvvw4i1z 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 11 performance improvements and 18 performance regressions! Performance is the same for 27 metrics, 15 unstable metrics.

scenario Δ mean execution_time candidate mean execution_time baseline mean execution_time
scenario:startup:insecure-bank:iast:Agent.start worse
[+124.357ms; +167.396ms] or [+10.742%; +14.460%]
1.304s 1.158s
scenario:startup:insecure-bank:iast:BytebuddyAgent worse
[+18.205ms; +53.137ms] or [+2.253%; +6.575%]
843.798ms 808.126ms
scenario:startup:insecure-bank:iast:GlobalTracer better
[-42.853ms; -36.691ms] or [-18.471%; -15.815%]
192.234ms 232.006ms
scenario:startup:insecure-bank:iast:Telemetry worse
[+6.791ms; +7.434ms] or [+85.765%; +93.878%]
15.031ms 7.918ms
scenario:startup:insecure-bank:iast_HARDCODED_SECRET_DISABLED:Agent.start worse
[+140.819ms; +151.366ms] or [+12.247%; +13.164%]
1.296s 1.150s
scenario:startup:insecure-bank:iast_HARDCODED_SECRET_DISABLED:BytebuddyAgent worse
[+31.845ms; +38.001ms] or [+3.970%; +4.737%]
837.103ms 802.181ms
scenario:startup:insecure-bank:iast_HARDCODED_SECRET_DISABLED:GlobalTracer better
[-39.482ms; -36.679ms] or [-17.099%; -15.885%]
192.818ms 230.899ms
scenario:startup:insecure-bank:iast_TELEMETRY_OFF:Agent.start worse
[+138.821ms; +147.331ms] or [+12.129%; +12.872%]
1.288s 1.145s
scenario:startup:insecure-bank:iast_TELEMETRY_OFF:BytebuddyAgent worse
[+31.030ms; +36.975ms] or [+3.888%; +4.633%]
832.129ms 798.127ms
scenario:startup:insecure-bank:iast_TELEMETRY_OFF:GlobalTracer better
[-39.810ms; -37.905ms] or [-17.284%; -16.457%]
191.476ms 230.334ms
scenario:startup:insecure-bank:tracing:Agent.start worse
[+135.504ms; +145.709ms] or [+13.305%; +14.307%]
1.159s 1.018s
scenario:startup:insecure-bank:tracing:BytebuddyAgent worse
[+34.097ms; +40.129ms] or [+5.000%; +5.885%]
719.020ms 681.908ms
scenario:startup:insecure-bank:tracing:GlobalTracer better
[-42.023ms; -39.808ms] or [-17.527%; -16.604%]
198.840ms 239.756ms
scenario:startup:insecure-bank:tracing:Remote Config better
[-59.315µs; -19.621µs] or [-8.502%; -2.812%]
658.212µs 697.680µs
scenario:startup:petclinic:appsec:Agent.start worse
[+120.061ms; +137.890ms] or [+10.331%; +11.865%]
1.291s 1.162s
scenario:startup:petclinic:appsec:BytebuddyAgent worse
[+31.550ms; +38.508ms] or [+4.499%; +5.491%]
736.327ms 701.297ms
scenario:startup:petclinic:appsec:GlobalTracer better
[-40.446ms; -37.093ms] or [-17.072%; -15.657%]
198.140ms 236.910ms
scenario:startup:petclinic:appsec:AppSec better
[-12.917ms; -10.915ms] or [-7.356%; -6.216%]
163.697ms 175.614ms
scenario:startup:petclinic:iast:Agent.start worse
[+121.955ms; +157.058ms] or [+10.550%; +13.587%]
1.295s 1.156s
scenario:startup:petclinic:iast:GlobalTracer better
[-42.135ms; -35.053ms] or [-18.181%; -15.125%]
193.164ms 231.758ms
scenario:startup:petclinic:iast:Telemetry worse
[+6.598ms; +7.147ms] or [+82.345%; +89.204%]
14.885ms 8.012ms
scenario:startup:petclinic:profiling:Agent.start worse
[+27.691ms; +38.295ms] or [+2.153%; +2.977%]
1.319s 1.286s
scenario:startup:petclinic:profiling:BytebuddyAgent worse
[+66.787ms; +73.927ms] or [+9.881%; +10.938%]
746.257ms 675.900ms
scenario:startup:petclinic:profiling:GlobalTracer better
[-165.582ms; -161.950ms] or [-43.572%; -42.616%]
216.253ms 380.019ms
scenario:startup:petclinic:profiling:AppSec worse
[+5.537ms; +8.736ms] or [+10.118%; +15.961%]
61.867ms 54.731ms
scenario:startup:petclinic:tracing:Agent.start worse
[+132.695ms; +144.560ms] or [+12.987%; +14.148%]
1.160s 1.022s
scenario:startup:petclinic:tracing:BytebuddyAgent worse
[+32.793ms; +37.826ms] or [+4.791%; +5.526%]
719.821ms 684.511ms
scenario:startup:petclinic:tracing:GlobalTracer better
[-43.315ms; -41.603ms] or [-17.973%; -17.263%]
198.538ms 240.997ms
scenario:startup:petclinic:tracing:Remote Config better
[-82.020µs; -39.522µs] or [-11.548%; -5.564%]
649.515µs 710.287µs
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.50.0-SNAPSHOT~dc725c3ede, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.018 s) : 0, 1018447
Total [baseline] (8.641 s) : 0, 8640880
Agent [candidate] (1.159 s) : 0, 1159054
Total [candidate] (8.78 s) : 0, 8780362
section iast
Agent [baseline] (1.158 s) : 0, 1157641
Total [baseline] (9.275 s) : 0, 9274792
Agent [candidate] (1.304 s) : 0, 1303518
Total [candidate] (9.345 s) : 0, 9345400
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.15 s) : 0, 1149832
Total [baseline] (9.201 s) : 0, 9201198
Agent [candidate] (1.296 s) : 0, 1295925
Total [candidate] (9.333 s) : 0, 9332685
section iast_TELEMETRY_OFF
Agent [baseline] (1.145 s) : 0, 1144564
Total [baseline] (9.209 s) : 0, 9209084
Agent [candidate] (1.288 s) : 0, 1287640
Total [candidate] (9.33 s) : 0, 9330195
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.018 s -
Agent iast 1.158 s 139.194 ms (13.7%)
Agent iast_HARDCODED_SECRET_DISABLED 1.15 s 131.385 ms (12.9%)
Agent iast_TELEMETRY_OFF 1.145 s 126.117 ms (12.4%)
Total tracing 8.641 s -
Total iast 9.275 s 633.912 ms (7.3%)
Total iast_HARDCODED_SECRET_DISABLED 9.201 s 560.318 ms (6.5%)
Total iast_TELEMETRY_OFF 9.209 s 568.204 ms (6.6%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.159 s -
Agent iast 1.304 s 144.464 ms (12.5%)
Agent iast_HARDCODED_SECRET_DISABLED 1.296 s 136.871 ms (11.8%)
Agent iast_TELEMETRY_OFF 1.288 s 128.586 ms (11.1%)
Total tracing 8.78 s -
Total iast 9.345 s 565.038 ms (6.4%)
Total iast_HARDCODED_SECRET_DISABLED 9.333 s 552.323 ms (6.3%)
Total iast_TELEMETRY_OFF 9.33 s 549.832 ms (6.3%)
gantt
    title insecure-bank - break down per module: candidate=1.50.0-SNAPSHOT~dc725c3ede, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (681.908 ms) : 0, 681908
BytebuddyAgent [candidate] (719.02 ms) : 0, 719020
GlobalTracer [baseline] (239.756 ms) : 0, 239756
GlobalTracer [candidate] (198.84 ms) : 0, 198840
AppSec [baseline] (54.226 ms) : 0, 54226
AppSec [candidate] (54.408 ms) : 0, 54408
Debugger [baseline] (6.221 ms) : 0, 6221
Debugger [candidate] (6.226 ms) : 0, 6226
Remote Config [baseline] (697.68 µs) : 0, 698
Remote Config [candidate] (658.212 µs) : 0, 658
Telemetry [baseline] (12.139 ms) : 0, 12139
Telemetry [candidate] (12.188 ms) : 0, 12188
section iast
BytebuddyAgent [baseline] (808.126 ms) : 0, 808126
BytebuddyAgent [candidate] (843.798 ms) : 0, 843798
GlobalTracer [baseline] (232.006 ms) : 0, 232006
GlobalTracer [candidate] (192.234 ms) : 0, 192234
IAST [baseline] (28.625 ms) : 0, 28625
IAST [candidate] (26.283 ms) : 0, 26283
AppSec [baseline] (50.78 ms) : 0, 50780
AppSec [candidate] (50.994 ms) : 0, 50994
Debugger [baseline] (5.969 ms) : 0, 5969
Debugger [candidate] (5.871 ms) : 0, 5871
Remote Config [baseline] (603.383 µs) : 0, 603
Remote Config [candidate] (595.335 µs) : 0, 595
Telemetry [baseline] (7.918 ms) : 0, 7918
Telemetry [candidate] (15.031 ms) : 0, 15031
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (802.181 ms) : 0, 802181
BytebuddyAgent [candidate] (837.103 ms) : 0, 837103
GlobalTracer [baseline] (230.899 ms) : 0, 230899
GlobalTracer [candidate] (192.818 ms) : 0, 192818
IAST [baseline] (29.355 ms) : 0, 29355
IAST [candidate] (28.238 ms) : 0, 28238
AppSec [baseline] (49.525 ms) : 0, 49525
AppSec [candidate] (49.283 ms) : 0, 49283
Debugger [baseline] (5.94 ms) : 0, 5940
Debugger [candidate] (5.901 ms) : 0, 5901
Remote Config [baseline] (602.605 µs) : 0, 603
Remote Config [candidate] (616.49 µs) : 0, 616
Telemetry [baseline] (7.839 ms) : 0, 7839
Telemetry [candidate] (13.564 ms) : 0, 13564
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (798.127 ms) : 0, 798127
BytebuddyAgent [candidate] (832.129 ms) : 0, 832129
GlobalTracer [baseline] (230.334 ms) : 0, 230334
GlobalTracer [candidate] (191.476 ms) : 0, 191476
IAST [baseline] (23.878 ms) : 0, 23878
IAST [candidate] (28.553 ms) : 0, 28553
AppSec [baseline] (54.253 ms) : 0, 54253
AppSec [candidate] (49.326 ms) : 0, 49326
Debugger [baseline] (5.968 ms) : 0, 5968
Debugger [candidate] (5.847 ms) : 0, 5847
Remote Config [baseline] (597.19 µs) : 0, 597
Remote Config [candidate] (588.3 µs) : 0, 588
Telemetry [baseline] (7.816 ms) : 0, 7816
Telemetry [candidate] (11.769 ms) : 0, 11769
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.50.0-SNAPSHOT~dc725c3ede, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.022 s) : 0, 1021750
Total [baseline] (10.502 s) : 0, 10501948
Agent [candidate] (1.16 s) : 0, 1160378
Total [candidate] (10.539 s) : 0, 10538596
section appsec
Agent [baseline] (1.162 s) : 0, 1162178
Total [baseline] (10.678 s) : 0, 10678256
Agent [candidate] (1.291 s) : 0, 1291154
Total [candidate] (10.813 s) : 0, 10812804
section iast
Agent [baseline] (1.156 s) : 0, 1155975
Total [baseline] (10.886 s) : 0, 10885968
Agent [candidate] (1.295 s) : 0, 1295482
Total [candidate] (11.094 s) : 0, 11094487
section profiling
Agent [baseline] (1.286 s) : 0, 1286289
Total [baseline] (10.93 s) : 0, 10929909
Agent [candidate] (1.319 s) : 0, 1319282
Total [candidate] (10.968 s) : 0, 10968201
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.022 s -
Agent appsec 1.162 s 140.428 ms (13.7%)
Agent iast 1.156 s 134.225 ms (13.1%)
Agent profiling 1.286 s 264.539 ms (25.9%)
Total tracing 10.502 s -
Total appsec 10.678 s 176.308 ms (1.7%)
Total iast 10.886 s 384.02 ms (3.7%)
Total profiling 10.93 s 427.961 ms (4.1%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.16 s -
Agent appsec 1.291 s 130.776 ms (11.3%)
Agent iast 1.295 s 135.104 ms (11.6%)
Agent profiling 1.319 s 158.904 ms (13.7%)
Total tracing 10.539 s -
Total appsec 10.813 s 274.208 ms (2.6%)
Total iast 11.094 s 555.891 ms (5.3%)
Total profiling 10.968 s 429.605 ms (4.1%)
gantt
    title petclinic - break down per module: candidate=1.50.0-SNAPSHOT~dc725c3ede, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (684.511 ms) : 0, 684511
BytebuddyAgent [candidate] (719.821 ms) : 0, 719821
GlobalTracer [baseline] (240.997 ms) : 0, 240997
GlobalTracer [candidate] (198.538 ms) : 0, 198538
AppSec [baseline] (54.584 ms) : 0, 54584
AppSec [candidate] (54.39 ms) : 0, 54390
Debugger [baseline] (6.915 ms) : 0, 6915
Debugger [candidate] (6.189 ms) : 0, 6189
Remote Config [baseline] (710.287 µs) : 0, 710
Remote Config [candidate] (649.515 µs) : 0, 650
Telemetry [baseline] (10.529 ms) : 0, 10529
Telemetry [candidate] (12.969 ms) : 0, 12969
section appsec
BytebuddyAgent [baseline] (701.297 ms) : 0, 701297
BytebuddyAgent [candidate] (736.327 ms) : 0, 736327
GlobalTracer [baseline] (236.91 ms) : 0, 236910
GlobalTracer [candidate] (198.14 ms) : 0, 198140
AppSec [baseline] (175.614 ms) : 0, 175614
AppSec [candidate] (163.697 ms) : 0, 163697
Debugger [baseline] (5.942 ms) : 0, 5942
Debugger [candidate] (5.977 ms) : 0, 5977
Remote Config [baseline] (624.455 µs) : 0, 624
Remote Config [candidate] (636.401 µs) : 0, 636
Telemetry [baseline] (7.381 ms) : 0, 7381
Telemetry [candidate] (7.394 ms) : 0, 7394
IAST [baseline] (21.75 ms) : 0, 21750
IAST [candidate] (21.353 ms) : 0, 21353
section iast
BytebuddyAgent [baseline] (807.377 ms) : 0, 807377
BytebuddyAgent [candidate] (836.063 ms) : 0, 836063
GlobalTracer [baseline] (231.758 ms) : 0, 231758
GlobalTracer [candidate] (193.164 ms) : 0, 193164
AppSec [baseline] (49.672 ms) : 0, 49672
AppSec [candidate] (49.394 ms) : 0, 49394
Debugger [baseline] (5.91 ms) : 0, 5910
Debugger [candidate] (5.84 ms) : 0, 5840
Remote Config [baseline] (587.168 µs) : 0, 587
Remote Config [candidate] (591.56 µs) : 0, 592
Telemetry [baseline] (8.012 ms) : 0, 8012
Telemetry [candidate] (14.885 ms) : 0, 14885
IAST [baseline] (26.807 ms) : 0, 26807
IAST [candidate] (27.265 ms) : 0, 27265
section profiling
ProfilingAgent [baseline] (109.907 ms) : 0, 109907
ProfilingAgent [candidate] (107.796 ms) : 0, 107796
BytebuddyAgent [baseline] (675.9 ms) : 0, 675900
BytebuddyAgent [candidate] (746.257 ms) : 0, 746257
GlobalTracer [baseline] (380.019 ms) : 0, 380019
GlobalTracer [candidate] (216.253 ms) : 0, 216253
AppSec [baseline] (54.731 ms) : 0, 54731
AppSec [candidate] (61.867 ms) : 0, 61867
Debugger [baseline] (6.174 ms) : 0, 6174
Debugger [candidate] (6.012 ms) : 0, 6012
Remote Config [baseline] (668.401 µs) : 0, 668
Remote Config [candidate] (800.75 µs) : 0, 801
Telemetry [baseline] (8.193 ms) : 0, 8193
Telemetry [candidate] (8.056 ms) : 0, 8056
Profiling [baseline] (109.933 ms) : 0, 109933
Profiling [candidate] (107.82 ms) : 0, 107820
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-05-28T12:31:00 2025-05-28T12:38:45
git_branch master mattalp/reroute-gradle-profiler-dependencies
git_commit_date 1746789389 1748434761
git_commit_sha ad6d5fe dc725c3
release_version 1.50.0-SNAPSHOT~ad6d5fef42 1.50.0-SNAPSHOT~dc725c3ede
start_time 2025-05-28T12:30:46 2025-05-28T12:38:31
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1748436324 1748436324
ci_job_id 957412428 957412428
ci_pipeline_id 66306273 66306273
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-8t2n4jps-project-304-concurrent-0-xeswk3wg 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-8t2n4jps-project-304-concurrent-0-xeswk3wg 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 0 performance regressions! Performance is the same for 12 metrics, 18 unstable metrics.

Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~dc725c3ede, baseline=1.50.0-SNAPSHOT~ad6d5fef42
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.347 ms) : 1327, 1367
.   : milestone, 1347,
appsec (1.733 ms) : 1710, 1757
.   : milestone, 1733,
appsec_no_iast (1.722 ms) : 1699, 1745
.   : milestone, 1722,
code_origins (1.691 ms) : 1664, 1717
.   : milestone, 1691,
iast (1.498 ms) : 1474, 1522
.   : milestone, 1498,
profiling (1.532 ms) : 1509, 1555
.   : milestone, 1532,
tracing (1.503 ms) : 1478, 1527
.   : milestone, 1503,
section candidate
no_agent (1.348 ms) : 1328, 1368
.   : milestone, 1348,
appsec (1.746 ms) : 1723, 1769
.   : milestone, 1746,
appsec_no_iast (1.725 ms) : 1701, 1749
.   : milestone, 1725,
code_origins (1.668 ms) : 1640, 1696
.   : milestone, 1668,
iast (1.525 ms) : 1501, 1549
.   : milestone, 1525,
profiling (1.512 ms) : 1488, 1535
.   : milestone, 1512,
tracing (1.499 ms) : 1476, 1523
.   : milestone, 1499,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.347 ms [1.327 ms, 1.367 ms] -
appsec 1.733 ms [1.71 ms, 1.757 ms] 386.143 µs (28.7%)
appsec_no_iast 1.722 ms [1.699 ms, 1.745 ms] 374.641 µs (27.8%)
code_origins 1.691 ms [1.664 ms, 1.717 ms] 343.619 µs (25.5%)
iast 1.498 ms [1.474 ms, 1.522 ms] 150.95 µs (11.2%)
profiling 1.532 ms [1.509 ms, 1.555 ms] 185.097 µs (13.7%)
tracing 1.503 ms [1.478 ms, 1.527 ms] 155.68 µs (11.6%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.348 ms [1.328 ms, 1.368 ms] -
appsec 1.746 ms [1.723 ms, 1.769 ms] 398.631 µs (29.6%)
appsec_no_iast 1.725 ms [1.701 ms, 1.749 ms] 377.044 µs (28.0%)
code_origins 1.668 ms [1.64 ms, 1.696 ms] 320.262 µs (23.8%)
iast 1.525 ms [1.501 ms, 1.549 ms] 177.43 µs (13.2%)
profiling 1.512 ms [1.488 ms, 1.535 ms] 164.031 µs (12.2%)
tracing 1.499 ms [1.476 ms, 1.523 ms] 151.729 µs (11.3%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~dc725c3ede, baseline=1.50.0-SNAPSHOT~ad6d5fef42
    dateFormat X
    axisFormat %s
section baseline
no_agent (377.939 µs) : 358, 397
.   : milestone, 378,
iast (517.278 µs) : 495, 539
.   : milestone, 517,
iast_FULL (733.599 µs) : 712, 756
.   : milestone, 734,
iast_GLOBAL (562.864 µs) : 541, 585
.   : milestone, 563,
iast_HARDCODED_SECRET_DISABLED (532.253 µs) : 508, 556
.   : milestone, 532,
iast_INACTIVE (471.719 µs) : 450, 494
.   : milestone, 472,
iast_TELEMETRY_OFF (511.592 µs) : 488, 535
.   : milestone, 512,
tracing (463.122 µs) : 441, 485
.   : milestone, 463,
section candidate
no_agent (389.634 µs) : 369, 410
.   : milestone, 390,
iast (512.521 µs) : 490, 535
.   : milestone, 513,
iast_FULL (738.222 µs) : 715, 761
.   : milestone, 738,
iast_GLOBAL (571.995 µs) : 549, 595
.   : milestone, 572,
iast_HARDCODED_SECRET_DISABLED (517.527 µs) : 494, 541
.   : milestone, 518,
iast_INACTIVE (459.35 µs) : 437, 482
.   : milestone, 459,
iast_TELEMETRY_OFF (510.5 µs) : 488, 533
.   : milestone, 511,
tracing (460.987 µs) : 439, 483
.   : milestone, 461,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 377.939 µs [358.392 µs, 397.486 µs] -
iast 517.278 µs [495.312 µs, 539.245 µs] 139.34 µs (36.9%)
iast_FULL 733.599 µs [711.52 µs, 755.679 µs] 355.66 µs (94.1%)
iast_GLOBAL 562.864 µs [541.098 µs, 584.629 µs] 184.925 µs (48.9%)
iast_HARDCODED_SECRET_DISABLED 532.253 µs [508.096 µs, 556.409 µs] 154.314 µs (40.8%)
iast_INACTIVE 471.719 µs [449.852 µs, 493.587 µs] 93.78 µs (24.8%)
iast_TELEMETRY_OFF 511.592 µs [488.336 µs, 534.848 µs] 133.653 µs (35.4%)
tracing 463.122 µs [440.786 µs, 485.457 µs] 85.183 µs (22.5%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 389.634 µs [369.457 µs, 409.812 µs] -
iast 512.521 µs [489.888 µs, 535.154 µs] 122.887 µs (31.5%)
iast_FULL 738.222 µs [715.349 µs, 761.095 µs] 348.588 µs (89.5%)
iast_GLOBAL 571.995 µs [549.199 µs, 594.792 µs] 182.361 µs (46.8%)
iast_HARDCODED_SECRET_DISABLED 517.527 µs [494.317 µs, 540.738 µs] 127.893 µs (32.8%)
iast_INACTIVE 459.35 µs [436.911 µs, 481.789 µs] 69.716 µs (17.9%)
iast_TELEMETRY_OFF 510.5 µs [487.722 µs, 533.278 µs] 120.866 µs (31.0%)
tracing 460.987 µs [439.137 µs, 482.837 µs] 71.353 µs (18.3%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mattalp/reroute-gradle-profiler-dependencies
git_commit_date 1746789389 1748434761
git_commit_sha ad6d5fe dc725c3
release_version 1.50.0-SNAPSHOT~ad6d5fef42 1.50.0-SNAPSHOT~dc725c3ede
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1748436717 1748436717
ci_job_id 957412429 957412429
ci_pipeline_id 66306273 66306273
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-snyqapa8-project-304-concurrent-0-m148l4pw 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-snyqapa8-project-304-concurrent-0-m148l4pw 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~dc725c3ede, baseline=1.50.0-SNAPSHOT~ad6d5fef42
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.469 ms) : 1458, 1481
.   : milestone, 1469,
appsec (2.39 ms) : 2341, 2438
.   : milestone, 2390,
iast (2.17 ms) : 2109, 2232
.   : milestone, 2170,
iast_GLOBAL (2.214 ms) : 2153, 2275
.   : milestone, 2214,
profiling (2.043 ms) : 1993, 2094
.   : milestone, 2043,
tracing (2.005 ms) : 1957, 2052
.   : milestone, 2005,
section candidate
no_agent (1.47 ms) : 1458, 1481
.   : milestone, 1470,
appsec (2.391 ms) : 2343, 2440
.   : milestone, 2391,
iast (2.184 ms) : 2122, 2246
.   : milestone, 2184,
iast_GLOBAL (2.224 ms) : 2162, 2286
.   : milestone, 2224,
profiling (2.015 ms) : 1966, 2065
.   : milestone, 2015,
tracing (1.994 ms) : 1947, 2042
.   : milestone, 1994,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.469 ms [1.458 ms, 1.481 ms] -
appsec 2.39 ms [2.341 ms, 2.438 ms] 920.118 µs (62.6%)
iast 2.17 ms [2.109 ms, 2.232 ms] 700.835 µs (47.7%)
iast_GLOBAL 2.214 ms [2.153 ms, 2.275 ms] 744.613 µs (50.7%)
profiling 2.043 ms [1.993 ms, 2.094 ms] 573.891 µs (39.1%)
tracing 2.005 ms [1.957 ms, 2.052 ms] 535.129 µs (36.4%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.47 ms [1.458 ms, 1.481 ms] -
appsec 2.391 ms [2.343 ms, 2.44 ms] 921.341 µs (62.7%)
iast 2.184 ms [2.122 ms, 2.246 ms] 713.803 µs (48.6%)
iast_GLOBAL 2.224 ms [2.162 ms, 2.286 ms] 753.956 µs (51.3%)
profiling 2.015 ms [1.966 ms, 2.065 ms] 545.584 µs (37.1%)
tracing 1.994 ms [1.947 ms, 2.042 ms] 524.534 µs (35.7%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~dc725c3ede, baseline=1.50.0-SNAPSHOT~ad6d5fef42
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.964 s) : 14964000, 14964000
.   : milestone, 14964000,
appsec (15.133 s) : 15133000, 15133000
.   : milestone, 15133000,
iast (18.336 s) : 18336000, 18336000
.   : milestone, 18336000,
iast_GLOBAL (18.068 s) : 18068000, 18068000
.   : milestone, 18068000,
profiling (15.02 s) : 15020000, 15020000
.   : milestone, 15020000,
tracing (14.932 s) : 14932000, 14932000
.   : milestone, 14932000,
section candidate
no_agent (14.951 s) : 14951000, 14951000
.   : milestone, 14951000,
appsec (15.0 s) : 15000000, 15000000
.   : milestone, 15000000,
iast (18.909 s) : 18909000, 18909000
.   : milestone, 18909000,
iast_GLOBAL (17.93 s) : 17930000, 17930000
.   : milestone, 17930000,
profiling (15.241 s) : 15241000, 15241000
.   : milestone, 15241000,
tracing (15.189 s) : 15189000, 15189000
.   : milestone, 15189000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.964 s [14.964 s, 14.964 s] -
appsec 15.133 s [15.133 s, 15.133 s] 169.0 ms (1.1%)
iast 18.336 s [18.336 s, 18.336 s] 3.372 s (22.5%)
iast_GLOBAL 18.068 s [18.068 s, 18.068 s] 3.104 s (20.7%)
profiling 15.02 s [15.02 s, 15.02 s] 56.0 ms (0.4%)
tracing 14.932 s [14.932 s, 14.932 s] -32.0 ms (-0.2%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.951 s [14.951 s, 14.951 s] -
appsec 15.0 s [15.0 s, 15.0 s] 49.0 ms (0.3%)
iast 18.909 s [18.909 s, 18.909 s] 3.958 s (26.5%)
iast_GLOBAL 17.93 s [17.93 s, 17.93 s] 2.979 s (19.9%)
profiling 15.241 s [15.241 s, 15.241 s] 290.0 ms (1.9%)
tracing 15.189 s [15.189 s, 15.189 s] 238.0 ms (1.6%)

Copy link
Contributor

@jbachorik jbachorik left a comment

Choose a reason for hiding this comment

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

The added dependencies on agent-bootstrap are not necessary.

Could you, please, make the tempdir location configurable? We've seen a handful of non-standard setups recently so let's better be ready for it.

And yes, the initialization is causing startup regression :( You will need to run it in a background thread.

@MattAlp MattAlp requested a review from jbachorik May 21, 2025 20:52
Copy link
Contributor

@jbachorik jbachorik left a comment

Choose a reason for hiding this comment

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

Looking good

@jbachorik jbachorik force-pushed the mattalp/reroute-gradle-profiler-dependencies branch 3 times, most recently from 4378322 to a8eeb0b Compare May 27, 2025 16:57
@jbachorik jbachorik force-pushed the mattalp/reroute-gradle-profiler-dependencies branch from 3006c65 to 58ae723 Compare May 28, 2025 10:10
@jbachorik jbachorik marked this pull request as draft May 28, 2025 17:19
@jbachorik
Copy link
Contributor

I put this PR to draft state intentionally, not to merge it before 1.50.0 is released.
Once 1.50.0 is out this PR should be merged, pending approval, such that it can be tested in dogfooding for a while before releasing it to public.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants