Skip to content

Conversation

@sarahchen6
Copy link
Contributor

@sarahchen6 sarahchen6 commented Oct 24, 2025

What Does This Do

This PR turns the configure_tests.gradle file into a convention plugin. It is also introduces the testInstrumentation extension that is added to relevant instrumentation build.gradle files. This helps separate the build and instrumentation logic, adding to our efforts to modularize and organize the build system. The PR also makes a few lazy API improvements along the way.

Motivation

Improve our build!

Additional Notes

Contributor Checklist

Jira ticket: https://datadoghq.atlassian.net/browse/APMLP-623

@sarahchen6 sarahchen6 added type: enhancement Enhancements and improvements tag: no release notes Changes to exclude from release notes comp: tooling Build & Tooling labels Oct 24, 2025
@pr-commenter
Copy link

pr-commenter bot commented Oct 24, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master sarahchen6/configure-tests-convention-plugin
git_commit_date 1762458209 1762460737
git_commit_sha 5743cd5 97348c5
release_version 1.56.0-SNAPSHOT~5743cd5c9d 1.55.0-SNAPSHOT~97348c5470
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1762462562 1762462562
ci_job_id 1220877700 1220877700
ci_pipeline_id 81517844 81517844
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-g33bl0u1 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-g33bl0u1 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None

Summary

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

Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.55.0-SNAPSHOT~97348c5470, baseline=1.56.0-SNAPSHOT~5743cd5c9d

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.047 s) : 0, 1047218
Total [baseline] (10.729 s) : 0, 10728831
Agent [candidate] (1.053 s) : 0, 1052506
Total [candidate] (10.797 s) : 0, 10796779
section appsec
Agent [baseline] (1.221 s) : 0, 1220806
Total [baseline] (10.813 s) : 0, 10813134
Agent [candidate] (1.231 s) : 0, 1230802
Total [candidate] (10.89 s) : 0, 10890404
section iast
Agent [baseline] (1.189 s) : 0, 1188905
Total [baseline] (11.115 s) : 0, 11115196
Agent [candidate] (1.182 s) : 0, 1182350
Total [candidate] (11.22 s) : 0, 11219525
section profiling
Agent [baseline] (1.194 s) : 0, 1193732
Total [baseline] (10.96 s) : 0, 10959503
Agent [candidate] (1.202 s) : 0, 1201797
Total [candidate] (10.897 s) : 0, 10897218
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.047 s -
Agent appsec 1.221 s 173.588 ms (16.6%)
Agent iast 1.189 s 141.687 ms (13.5%)
Agent profiling 1.194 s 146.513 ms (14.0%)
Total tracing 10.729 s -
Total appsec 10.813 s 84.303 ms (0.8%)
Total iast 11.115 s 386.365 ms (3.6%)
Total profiling 10.96 s 230.672 ms (2.2%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.053 s -
Agent appsec 1.231 s 178.297 ms (16.9%)
Agent iast 1.182 s 129.844 ms (12.3%)
Agent profiling 1.202 s 149.291 ms (14.2%)
Total tracing 10.797 s -
Total appsec 10.89 s 93.625 ms (0.9%)
Total iast 11.22 s 422.746 ms (3.9%)
Total profiling 10.897 s 100.439 ms (0.9%)
gantt
    title petclinic - break down per module: candidate=1.55.0-SNAPSHOT~97348c5470, baseline=1.56.0-SNAPSHOT~5743cd5c9d

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.451 ms) : 0, 1451
crashtracking [candidate] (1.461 ms) : 0, 1461
BytebuddyAgent [baseline] (705.214 ms) : 0, 705214
BytebuddyAgent [candidate] (709.74 ms) : 0, 709740
GlobalTracer [baseline] (246.164 ms) : 0, 246164
GlobalTracer [candidate] (246.599 ms) : 0, 246599
AppSec [baseline] (32.274 ms) : 0, 32274
AppSec [candidate] (32.343 ms) : 0, 32343
Debugger [baseline] (6.406 ms) : 0, 6406
Debugger [candidate] (6.367 ms) : 0, 6367
Remote Config [baseline] (723.365 µs) : 0, 723
Remote Config [candidate] (706.022 µs) : 0, 706
Telemetry [baseline] (15.235 ms) : 0, 15235
Telemetry [candidate] (12.331 ms) : 0, 12331
Flare Poller [baseline] (5.002 ms) : 0, 5002
Flare Poller [candidate] (8.172 ms) : 0, 8172
section appsec
crashtracking [baseline] (1.457 ms) : 0, 1457
crashtracking [candidate] (1.469 ms) : 0, 1469
BytebuddyAgent [baseline] (728.61 ms) : 0, 728610
BytebuddyAgent [candidate] (734.962 ms) : 0, 734962
GlobalTracer [baseline] (237.141 ms) : 0, 237141
GlobalTracer [candidate] (239.158 ms) : 0, 239158
AppSec [baseline] (174.699 ms) : 0, 174699
AppSec [candidate] (175.775 ms) : 0, 175775
Debugger [baseline] (6.015 ms) : 0, 6015
Debugger [candidate] (6.028 ms) : 0, 6028
Remote Config [baseline] (652.566 µs) : 0, 653
Remote Config [candidate] (659.807 µs) : 0, 660
Telemetry [baseline] (8.564 ms) : 0, 8564
Telemetry [candidate] (8.57 ms) : 0, 8570
Flare Poller [baseline] (4.066 ms) : 0, 4066
Flare Poller [candidate] (3.993 ms) : 0, 3993
IAST [baseline] (24.697 ms) : 0, 24697
IAST [candidate] (25.164 ms) : 0, 25164
section iast
crashtracking [baseline] (1.483 ms) : 0, 1483
crashtracking [candidate] (1.452 ms) : 0, 1452
BytebuddyAgent [baseline] (835.704 ms) : 0, 835704
BytebuddyAgent [candidate] (829.099 ms) : 0, 829099
GlobalTracer [baseline] (235.859 ms) : 0, 235859
GlobalTracer [candidate] (236.218 ms) : 0, 236218
AppSec [baseline] (27.087 ms) : 0, 27087
AppSec [candidate] (28.958 ms) : 0, 28958
Debugger [baseline] (6.013 ms) : 0, 6013
Debugger [candidate] (6.014 ms) : 0, 6014
Remote Config [baseline] (600.032 µs) : 0, 600
Remote Config [candidate] (614.286 µs) : 0, 614
Telemetry [baseline] (8.481 ms) : 0, 8481
Telemetry [candidate] (8.4 ms) : 0, 8400
Flare Poller [baseline] (4.169 ms) : 0, 4169
Flare Poller [candidate] (4.155 ms) : 0, 4155
IAST [baseline] (34.665 ms) : 0, 34665
IAST [candidate] (32.754 ms) : 0, 32754
section profiling
crashtracking [baseline] (1.435 ms) : 0, 1435
crashtracking [candidate] (1.449 ms) : 0, 1449
BytebuddyAgent [baseline] (729.686 ms) : 0, 729686
BytebuddyAgent [candidate] (734.662 ms) : 0, 734662
GlobalTracer [baseline] (222.073 ms) : 0, 222073
GlobalTracer [candidate] (223.58 ms) : 0, 223580
AppSec [baseline] (32.197 ms) : 0, 32197
AppSec [candidate] (32.499 ms) : 0, 32499
Debugger [baseline] (9.023 ms) : 0, 9023
Debugger [candidate] (6.792 ms) : 0, 6792
Remote Config [baseline] (707.79 µs) : 0, 708
Remote Config [candidate] (1.423 ms) : 0, 1423
Telemetry [baseline] (14.05 ms) : 0, 14050
Telemetry [candidate] (15.565 ms) : 0, 15565
Flare Poller [baseline] (4.098 ms) : 0, 4098
Flare Poller [candidate] (4.16 ms) : 0, 4160
ProfilingAgent [baseline] (110.692 ms) : 0, 110692
ProfilingAgent [candidate] (111.359 ms) : 0, 111359
Profiling [baseline] (111.346 ms) : 0, 111346
Profiling [candidate] (112.048 ms) : 0, 112048
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.55.0-SNAPSHOT~97348c5470, baseline=1.56.0-SNAPSHOT~5743cd5c9d

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.063 s) : 0, 1063487
Total [baseline] (8.663 s) : 0, 8662916
Agent [candidate] (1.056 s) : 0, 1055585
Total [candidate] (8.633 s) : 0, 8632512
section iast
Agent [baseline] (1.179 s) : 0, 1178597
Total [baseline] (9.273 s) : 0, 9272870
Agent [candidate] (1.178 s) : 0, 1177760
Total [candidate] (9.25 s) : 0, 9250126
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.063 s -
Agent iast 1.179 s 115.11 ms (10.8%)
Total tracing 8.663 s -
Total iast 9.273 s 609.954 ms (7.0%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.056 s -
Agent iast 1.178 s 122.175 ms (11.6%)
Total tracing 8.633 s -
Total iast 9.25 s 617.614 ms (7.2%)
gantt
    title insecure-bank - break down per module: candidate=1.55.0-SNAPSHOT~97348c5470, baseline=1.56.0-SNAPSHOT~5743cd5c9d

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.476 ms) : 0, 1476
crashtracking [candidate] (1.483 ms) : 0, 1483
BytebuddyAgent [baseline] (716.152 ms) : 0, 716152
BytebuddyAgent [candidate] (710.734 ms) : 0, 710734
GlobalTracer [baseline] (249.147 ms) : 0, 249147
GlobalTracer [candidate] (247.694 ms) : 0, 247694
AppSec [baseline] (32.862 ms) : 0, 32862
AppSec [candidate] (32.791 ms) : 0, 32791
Debugger [baseline] (6.567 ms) : 0, 6567
Debugger [candidate] (6.429 ms) : 0, 6429
Remote Config [baseline] (723.937 µs) : 0, 724
Remote Config [candidate] (717.803 µs) : 0, 718
Telemetry [baseline] (13.177 ms) : 0, 13177
Telemetry [candidate] (13.582 ms) : 0, 13582
Flare Poller [baseline] (8.304 ms) : 0, 8304
Flare Poller [candidate] (7.345 ms) : 0, 7345
section iast
crashtracking [baseline] (1.466 ms) : 0, 1466
crashtracking [candidate] (1.445 ms) : 0, 1445
BytebuddyAgent [baseline] (827.863 ms) : 0, 827863
BytebuddyAgent [candidate] (826.972 ms) : 0, 826972
GlobalTracer [baseline] (234.282 ms) : 0, 234282
GlobalTracer [candidate] (234.296 ms) : 0, 234296
AppSec [baseline] (27.89 ms) : 0, 27890
AppSec [candidate] (30.473 ms) : 0, 30473
Debugger [baseline] (6.0 ms) : 0, 6000
Debugger [candidate] (5.988 ms) : 0, 5988
Remote Config [baseline] (597.231 µs) : 0, 597
Remote Config [candidate] (596.588 µs) : 0, 597
Telemetry [baseline] (8.418 ms) : 0, 8418
Telemetry [candidate] (8.387 ms) : 0, 8387
Flare Poller [baseline] (4.091 ms) : 0, 4091
Flare Poller [candidate] (4.194 ms) : 0, 4194
IAST [baseline] (33.232 ms) : 0, 33232
IAST [candidate] (30.672 ms) : 0, 30672
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master sarahchen6/configure-tests-convention-plugin
git_commit_date 1762458209 1762460737
git_commit_sha 5743cd5 97348c5
release_version 1.56.0-SNAPSHOT~5743cd5c9d 1.55.0-SNAPSHOT~97348c5470
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1762463055 1762463055
ci_job_id 1220877702 1220877702
ci_pipeline_id 81517844 81517844
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-du9r2fyl 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-du9r2fyl 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 1 performance improvements and 1 performance regressions! Performance is the same for 10 metrics, 12 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:no_agent:high_load worse
[+607.539µs; +1001.512µs] or [+3.490%; +5.753%]
unstable
[-40.955op/s; +17.330op/s] or [-15.280%; +6.466%]
18.214ms 256.219op/s 17.409ms 268.031op/s
scenario:load:petclinic:tracing:high_load better
[-1.234ms; -0.839ms] or [-6.556%; -4.458%]
unstable
[-12.377op/s; +41.127op/s] or [-4.993%; +16.590%]
17.788ms 262.281op/s 18.825ms 247.906op/s
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.55.0-SNAPSHOT~97348c5470, baseline=1.56.0-SNAPSHOT~5743cd5c9d
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.228 ms) : 1216, 1241
.   : milestone, 1228,
iast (3.212 ms) : 3165, 3259
.   : milestone, 3212,
iast_FULL (5.82 ms) : 5761, 5878
.   : milestone, 5820,
iast_GLOBAL (3.706 ms) : 3637, 3775
.   : milestone, 3706,
profiling (1.924 ms) : 1907, 1940
.   : milestone, 1924,
tracing (1.766 ms) : 1752, 1779
.   : milestone, 1766,
section candidate
no_agent (1.212 ms) : 1200, 1224
.   : milestone, 1212,
iast (3.186 ms) : 3149, 3222
.   : milestone, 3186,
iast_FULL (5.895 ms) : 5835, 5954
.   : milestone, 5895,
iast_GLOBAL (3.633 ms) : 3578, 3688
.   : milestone, 3633,
profiling (1.973 ms) : 1957, 1990
.   : milestone, 1973,
tracing (1.804 ms) : 1789, 1820
.   : milestone, 1804,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.228 ms [1.216 ms, 1.241 ms] -
iast 3.212 ms [3.165 ms, 3.259 ms] 1.984 ms (161.5%)
iast_FULL 5.82 ms [5.761 ms, 5.878 ms] 4.592 ms (373.8%)
iast_GLOBAL 3.706 ms [3.637 ms, 3.775 ms] 2.478 ms (201.7%)
profiling 1.924 ms [1.907 ms, 1.94 ms] 695.435 µs (56.6%)
tracing 1.766 ms [1.752 ms, 1.779 ms] 537.403 µs (43.8%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.212 ms [1.2 ms, 1.224 ms] -
iast 3.186 ms [3.149 ms, 3.222 ms] 1.974 ms (162.9%)
iast_FULL 5.895 ms [5.835 ms, 5.954 ms] 4.683 ms (386.4%)
iast_GLOBAL 3.633 ms [3.578 ms, 3.688 ms] 2.421 ms (199.8%)
profiling 1.973 ms [1.957 ms, 1.99 ms] 761.684 µs (62.9%)
tracing 1.804 ms [1.789 ms, 1.82 ms] 592.476 µs (48.9%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.55.0-SNAPSHOT~97348c5470, baseline=1.56.0-SNAPSHOT~5743cd5c9d
    dateFormat X
    axisFormat %s
section baseline
no_agent (17.409 ms) : 17234, 17585
.   : milestone, 17409,
appsec (18.653 ms) : 18464, 18842
.   : milestone, 18653,
code_origins (17.88 ms) : 17705, 18055
.   : milestone, 17880,
iast (17.911 ms) : 17730, 18092
.   : milestone, 17911,
profiling (18.869 ms) : 18679, 19059
.   : milestone, 18869,
tracing (18.825 ms) : 18637, 19014
.   : milestone, 18825,
section candidate
no_agent (18.214 ms) : 18024, 18404
.   : milestone, 18214,
appsec (18.665 ms) : 18477, 18852
.   : milestone, 18665,
code_origins (18.011 ms) : 17833, 18190
.   : milestone, 18011,
iast (17.88 ms) : 17699, 18062
.   : milestone, 17880,
profiling (18.902 ms) : 18712, 19093
.   : milestone, 18902,
tracing (17.788 ms) : 17610, 17967
.   : milestone, 17788,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 17.409 ms [17.234 ms, 17.585 ms] -
appsec 18.653 ms [18.464 ms, 18.842 ms] 1.244 ms (7.1%)
code_origins 17.88 ms [17.705 ms, 18.055 ms] 470.611 µs (2.7%)
iast 17.911 ms [17.73 ms, 18.092 ms] 501.623 µs (2.9%)
profiling 18.869 ms [18.679 ms, 19.059 ms] 1.46 ms (8.4%)
tracing 18.825 ms [18.637 ms, 19.014 ms] 1.416 ms (8.1%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 18.214 ms [18.024 ms, 18.404 ms] -
appsec 18.665 ms [18.477 ms, 18.852 ms] 450.775 µs (2.5%)
code_origins 18.011 ms [17.833 ms, 18.19 ms] -202.472 µs (-1.1%)
iast 17.88 ms [17.699 ms, 18.062 ms] -333.377 µs (-1.8%)
profiling 18.902 ms [18.712 ms, 19.093 ms] 688.604 µs (3.8%)
tracing 17.788 ms [17.61 ms, 17.967 ms] -425.43 µs (-2.3%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master sarahchen6/configure-tests-convention-plugin
git_commit_date 1762458209 1762460737
git_commit_sha 5743cd5 97348c5
release_version 1.56.0-SNAPSHOT~5743cd5c9d 1.55.0-SNAPSHOT~97348c5470
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1762462785 1762462785
ci_job_id 1220877705 1220877705
ci_pipeline_id 81517844 81517844
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-1-uwc3vyv4 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-1-uwc3vyv4 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

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.55.0-SNAPSHOT~97348c5470, baseline=1.56.0-SNAPSHOT~5743cd5c9d
    dateFormat X
    axisFormat %s
section baseline
no_agent (15.523 s) : 15523000, 15523000
.   : milestone, 15523000,
appsec (14.721 s) : 14721000, 14721000
.   : milestone, 14721000,
iast (18.582 s) : 18582000, 18582000
.   : milestone, 18582000,
iast_GLOBAL (17.778 s) : 17778000, 17778000
.   : milestone, 17778000,
profiling (15.13 s) : 15130000, 15130000
.   : milestone, 15130000,
tracing (14.718 s) : 14718000, 14718000
.   : milestone, 14718000,
section candidate
no_agent (14.851 s) : 14851000, 14851000
.   : milestone, 14851000,
appsec (14.929 s) : 14929000, 14929000
.   : milestone, 14929000,
iast (18.311 s) : 18311000, 18311000
.   : milestone, 18311000,
iast_GLOBAL (18.0 s) : 18000000, 18000000
.   : milestone, 18000000,
profiling (15.782 s) : 15782000, 15782000
.   : milestone, 15782000,
tracing (14.841 s) : 14841000, 14841000
.   : milestone, 14841000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.523 s [15.523 s, 15.523 s] -
appsec 14.721 s [14.721 s, 14.721 s] -802.0 ms (-5.2%)
iast 18.582 s [18.582 s, 18.582 s] 3.059 s (19.7%)
iast_GLOBAL 17.778 s [17.778 s, 17.778 s] 2.255 s (14.5%)
profiling 15.13 s [15.13 s, 15.13 s] -393.0 ms (-2.5%)
tracing 14.718 s [14.718 s, 14.718 s] -805.0 ms (-5.2%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.851 s [14.851 s, 14.851 s] -
appsec 14.929 s [14.929 s, 14.929 s] 78.0 ms (0.5%)
iast 18.311 s [18.311 s, 18.311 s] 3.46 s (23.3%)
iast_GLOBAL 18.0 s [18.0 s, 18.0 s] 3.149 s (21.2%)
profiling 15.782 s [15.782 s, 15.782 s] 931.0 ms (6.3%)
tracing 14.841 s [14.841 s, 14.841 s] -10.0 ms (-0.1%)
Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.55.0-SNAPSHOT~97348c5470, baseline=1.56.0-SNAPSHOT~5743cd5c9d
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.474 ms) : 1463, 1486
.   : milestone, 1474,
appsec (3.698 ms) : 3481, 3916
.   : milestone, 3698,
iast (2.224 ms) : 2160, 2288
.   : milestone, 2224,
iast_GLOBAL (2.264 ms) : 2200, 2328
.   : milestone, 2264,
profiling (2.077 ms) : 2024, 2131
.   : milestone, 2077,
tracing (2.032 ms) : 1983, 2082
.   : milestone, 2032,
section candidate
no_agent (1.476 ms) : 1465, 1488
.   : milestone, 1476,
appsec (3.661 ms) : 3446, 3876
.   : milestone, 3661,
iast (2.21 ms) : 2146, 2274
.   : milestone, 2210,
iast_GLOBAL (2.258 ms) : 2195, 2322
.   : milestone, 2258,
profiling (2.079 ms) : 2026, 2132
.   : milestone, 2079,
tracing (2.042 ms) : 1992, 2092
.   : milestone, 2042,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.474 ms [1.463 ms, 1.486 ms] -
appsec 3.698 ms [3.481 ms, 3.916 ms] 2.224 ms (150.9%)
iast 2.224 ms [2.16 ms, 2.288 ms] 749.616 µs (50.8%)
iast_GLOBAL 2.264 ms [2.2 ms, 2.328 ms] 789.362 µs (53.5%)
profiling 2.077 ms [2.024 ms, 2.131 ms] 603.132 µs (40.9%)
tracing 2.032 ms [1.983 ms, 2.082 ms] 558.26 µs (37.9%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.476 ms [1.465 ms, 1.488 ms] -
appsec 3.661 ms [3.446 ms, 3.876 ms] 2.184 ms (147.9%)
iast 2.21 ms [2.146 ms, 2.274 ms] 733.958 µs (49.7%)
iast_GLOBAL 2.258 ms [2.195 ms, 2.322 ms] 781.936 µs (53.0%)
profiling 2.079 ms [2.026 ms, 2.132 ms] 602.662 µs (40.8%)
tracing 2.042 ms [1.992 ms, 2.092 ms] 565.772 µs (38.3%)

@datadog-datadog-prod-us1
Copy link
Contributor

datadog-datadog-prod-us1 bot commented Oct 24, 2025

🎯 Code Coverage
Patch Coverage: 100.00%
Total Coverage: 59.63% (+0.03%)

View detailed report

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 97348c5 | Docs | Datadog PR Page | Was this helpful? Give us feedback!

@pr-commenter
Copy link

pr-commenter bot commented Oct 24, 2025

Kafka / producer-benchmark

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master sarahchen6/configure-tests-convention-plugin
git_commit_date 1762458209 1762460737
git_commit_sha 5743cd5 97348c5
See matching parameters
Baseline Candidate
ci_job_date 1762461870 1762461870
ci_job_id 1220877714 1220877714
ci_pipeline_id 81517844 81517844
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
jdkVersion 11.0.25 11.0.25
jmhVersion 1.36 1.36
jvm /usr/lib/jvm/java-11-openjdk-amd64/bin/java /usr/lib/jvm/java-11-openjdk-amd64/bin/java
jvmArgs -Dfile.encoding=UTF-8 -Djava.io.tmpdir=/go/src/github.com/DataDog/apm-reliability/dd-trace-java/platform/src/producer-benchmark/build/tmp/jmh -Duser.country=US -Duser.language=en -Duser.variant -Dfile.encoding=UTF-8 -Djava.io.tmpdir=/go/src/github.com/DataDog/apm-reliability/dd-trace-java/platform/src/producer-benchmark/build/tmp/jmh -Duser.country=US -Duser.language=en -Duser.variant
vmName OpenJDK 64-Bit Server VM OpenJDK 64-Bit Server VM
vmVersion 11.0.25+9-post-Ubuntu-1ubuntu122.04 11.0.25+9-post-Ubuntu-1ubuntu122.04

Summary

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

See unchanged results
scenario Δ mean throughput
scenario:not-instrumented/KafkaProduceBenchmark.benchProduce same
scenario:only-tracing-dsm-disabled-benchmarks/KafkaProduceBenchmark.benchProduce same
scenario:only-tracing-dsm-enabled-benchmarks/KafkaProduceBenchmark.benchProduce same

@pr-commenter
Copy link

pr-commenter bot commented Oct 24, 2025

Kafka / consumer-benchmark

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master sarahchen6/configure-tests-convention-plugin
git_commit_date 1762458209 1762460737
git_commit_sha 5743cd5 97348c5
See matching parameters
Baseline Candidate
ci_job_date 1762461919 1762461919
ci_job_id 1220877716 1220877716
ci_pipeline_id 81517844 81517844
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
jdkVersion 11.0.25 11.0.25
jmhVersion 1.36 1.36
jvm /usr/lib/jvm/java-11-openjdk-amd64/bin/java /usr/lib/jvm/java-11-openjdk-amd64/bin/java
jvmArgs -Dfile.encoding=UTF-8 -Djava.io.tmpdir=/go/src/github.com/DataDog/apm-reliability/dd-trace-java/platform/src/consumer-benchmark/build/tmp/jmh -Duser.country=US -Duser.language=en -Duser.variant -Dfile.encoding=UTF-8 -Djava.io.tmpdir=/go/src/github.com/DataDog/apm-reliability/dd-trace-java/platform/src/consumer-benchmark/build/tmp/jmh -Duser.country=US -Duser.language=en -Duser.variant
vmName OpenJDK 64-Bit Server VM OpenJDK 64-Bit Server VM
vmVersion 11.0.25+9-post-Ubuntu-1ubuntu122.04 11.0.25+9-post-Ubuntu-1ubuntu122.04

Summary

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

See unchanged results
scenario Δ mean throughput
scenario:not-instrumented/KafkaConsumerBenchmark.benchConsume same
scenario:only-tracing-dsm-disabled-benchmarks/KafkaConsumerBenchmark.benchConsume same
scenario:only-tracing-dsm-enabled-benchmarks/KafkaConsumerBenchmark.benchConsume same

@sarahchen6 sarahchen6 force-pushed the sarahchen6/configure-tests-convention-plugin branch from 24e44ed to be41722 Compare October 27, 2025 14:36
@sarahchen6 sarahchen6 marked this pull request as ready for review October 27, 2025 16:44
@sarahchen6 sarahchen6 requested review from a team as code owners October 27, 2025 16:44
Comment on lines 51 to 57
val activePartitionProvider = providers.provider {
project.extra.properties["activePartition"] as? Boolean ?: true
}

// Go through the Test tasks and configure them
tasks.withType(Test::class.java).configureEach {
enabled = activePartitionProvider.get()
Copy link
Contributor

Choose a reason for hiding this comment

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

thought: I wonder if this "trait" or "feature" should be moved over the ci convention plugin ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Do you mean this entire tasks.withType<Test>() block in the ci-jobs convention plugin? I think it makes sense to keep this here in that case because this section is more just configuring the tests (configure-tests plugin) with some CI input... I guess if we want all things CI-related in the ci-jobs plugin though, we could move this there?

Copy link
Contributor

Choose a reason for hiding this comment

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

The idea of the active partition is a concept of the ci-jobs and actually the main purpose of ci-jobs. Using the partition here feels "non encapsulated".

Also it's perfectly normal that some plugin can affect tasks behavior. That said, we can do it in another PR. Because the ci-jobs plugin is applied to the root project, while the configure-tests is applied to each sub-projects.

Copy link
Contributor Author

@sarahchen6 sarahchen6 Nov 6, 2025

Choose a reason for hiding this comment

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

Ohhh okay I see. Agreed. For some reason I thought you were referring to this entire test block 😅

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Follow-up here: #9912 !

Comment on lines +47 to +53
val skipTestsProvider = rootProject.providers.gradleProperty("skipTests")
val skipForkedTestsProvider = rootProject.providers.gradleProperty("skipForkedTests")
val skipFlakyTestsProvider = rootProject.providers.gradleProperty("skipFlakyTests")
val runFlakyTestsProvider = rootProject.providers.gradleProperty("runFlakyTests")
val activePartitionProvider = providers.provider {
project.extra.properties["activePartition"] as? Boolean ?: true
}
Copy link
Contributor

Choose a reason for hiding this comment

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

note: Maybe, these could end-up in the extension I mentioned earlier. I'm kind if undecided there.

@bric3
Copy link
Contributor

bric3 commented Oct 28, 2025

Cool, I have been eying to convert this script.

Looking further down the road, I believe this could be split in two, as some tests config might only make sense for integrations, not so much for other components.

import java.time.Duration
import java.time.temporal.ChronoUnit

val isTestingInstrumentation = project.findProperty("testingInstrumentation") as? Boolean ?: false
Copy link
Contributor

Choose a reason for hiding this comment

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

note: This is a good trade-off today, but ultimately we should avoid extra properties. In the future, when we have convention plugins everywhere, it might be better to have a "simple" conventions for "testing frameworks instrumentation".

@sarahchen6 sarahchen6 merged commit 434b694 into master Nov 6, 2025
541 checks passed
@sarahchen6 sarahchen6 deleted the sarahchen6/configure-tests-convention-plugin branch November 6, 2025 21:47
@github-actions github-actions bot added this to the 1.56.0 milestone Nov 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: tooling Build & Tooling tag: no release notes Changes to exclude from release notes type: enhancement Enhancements and improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants