Skip to content

Report dd-java-agent itself as a Maven dependency in SCA telemetry#10975

Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 15 commits intomasterfrom
alejandro.gonzalez/APPSEC-61920
Apr 7, 2026
Merged

Report dd-java-agent itself as a Maven dependency in SCA telemetry#10975
gh-worker-dd-mergequeue-cf854d[bot] merged 15 commits intomasterfrom
alejandro.gonzalez/APPSEC-61920

Conversation

@jandro996
Copy link
Copy Markdown
Member

@jandro996 jandro996 commented Mar 26, 2026

What Does This Do

Adds a generatePomProperties Gradle task that generates META-INF/maven/com.datadoghq/dd-java-agent/pom.properties at build time with groupId, artifactId, and version. The output directory is wired as a resource source dir so it is automatically included in the shadow JAR.

Motivation

The SCA dependency pipeline (LocationsCollectingTransformerDependencyResolverJarReader) detects dependencies by reading META-INF/maven/**/pom.properties from JARs. Without its own pom.properties, the tracer was invisible to its own SCA inventory — the tool couldn't report the version of itself that was running.

Jira ticket: APPSEC-61920

Generate META-INF/maven/com.datadoghq/dd-java-agent/pom.properties at
build time so the SCA dependency pipeline (JarReader → DependencyResolver)
detects com.datadoghq:dd-java-agent in the APP_DEPENDENCIES_LOADED
telemetry events.

Add a unit test in DependencyResolverSpecification verifying the resolver
correctly parses the generated pom.properties, and extend the
AbstractServerSmokeTest tracer-dependency assertion to include
com.datadoghq:dd-java-agent so all server smoke tests validate this
end-to-end against the real shadow JAR.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@jandro996 jandro996 added type: bug Bug report and fix comp: core Tracer core comp: telemetry Telemetry and removed comp: core Tracer core labels Mar 26, 2026
@jandro996 jandro996 requested review from anderruiz and smola March 26, 2026 10:13
@PerfectSlayer PerfectSlayer requested review from bric3 March 26, 2026 10:26
@pr-commenter
Copy link
Copy Markdown

pr-commenter bot commented Mar 26, 2026

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master alejandro.gonzalez/APPSEC-61920
git_commit_date 1774519958 1774519374
git_commit_sha 17a89d1ec3 f34cb20
release_version 1.61.0-SNAPSHOT~517a89d1ec3 1.61.0-SNAPSHOT~f34cb203d4
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1774521239 1774521239
ci_job_id 1540416877 1540416877
ci_pipeline_id 104490129 104490129
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-i8bq9452 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-i8bq9452 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 63 metrics, 8 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.61.0-SNAPSHOT~f34cb203d4, baseline=1.61.0-SNAPSHOT~517a89d1ec3

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.054 s) : 0, 1053658
Total [baseline] (8.899 s) : 0, 8898939
Agent [candidate] (1.063 s) : 0, 1062643
Total [candidate] (8.905 s) : 0, 8904912
section iast
Agent [baseline] (1.232 s) : 0, 1231997
Total [baseline] (9.584 s) : 0, 9584350
Agent [candidate] (1.236 s) : 0, 1235634
Total [candidate] (9.598 s) : 0, 9598410
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.054 s -
Agent iast 1.232 s 178.339 ms (16.9%)
Total tracing 8.899 s -
Total iast 9.584 s 685.411 ms (7.7%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.063 s -
Agent iast 1.236 s 172.992 ms (16.3%)
Total tracing 8.905 s -
Total iast 9.598 s 693.497 ms (7.8%)
gantt
    title insecure-bank - break down per module: candidate=1.61.0-SNAPSHOT~f34cb203d4, baseline=1.61.0-SNAPSHOT~517a89d1ec3

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.216 ms) : 0, 1216
crashtracking [candidate] (1.229 ms) : 0, 1229
BytebuddyAgent [baseline] (627.094 ms) : 0, 627094
BytebuddyAgent [candidate] (632.248 ms) : 0, 632248
AgentMeter [baseline] (29.377 ms) : 0, 29377
AgentMeter [candidate] (29.575 ms) : 0, 29575
GlobalTracer [baseline] (256.584 ms) : 0, 256584
GlobalTracer [candidate] (258.915 ms) : 0, 258915
AppSec [baseline] (31.686 ms) : 0, 31686
AppSec [candidate] (31.985 ms) : 0, 31985
Debugger [baseline] (59.418 ms) : 0, 59418
Debugger [candidate] (60.13 ms) : 0, 60130
Remote Config [baseline] (586.332 µs) : 0, 586
Remote Config [candidate] (586.113 µs) : 0, 586
Telemetry [baseline] (8.043 ms) : 0, 8043
Telemetry [candidate] (8.111 ms) : 0, 8111
Flare Poller [baseline] (3.507 ms) : 0, 3507
Flare Poller [candidate] (3.544 ms) : 0, 3544
section iast
crashtracking [baseline] (1.218 ms) : 0, 1218
crashtracking [candidate] (1.224 ms) : 0, 1224
BytebuddyAgent [baseline] (799.31 ms) : 0, 799310
BytebuddyAgent [candidate] (801.489 ms) : 0, 801489
AgentMeter [baseline] (11.448 ms) : 0, 11448
AgentMeter [candidate] (11.44 ms) : 0, 11440
GlobalTracer [baseline] (248.685 ms) : 0, 248685
GlobalTracer [candidate] (249.506 ms) : 0, 249506
IAST [baseline] (25.446 ms) : 0, 25446
IAST [candidate] (25.42 ms) : 0, 25420
AppSec [baseline] (26.696 ms) : 0, 26696
AppSec [candidate] (26.578 ms) : 0, 26578
Debugger [baseline] (68.564 ms) : 0, 68564
Debugger [candidate] (68.385 ms) : 0, 68385
Remote Config [baseline] (545.911 µs) : 0, 546
Remote Config [candidate] (527.101 µs) : 0, 527
Telemetry [baseline] (10.45 ms) : 0, 10450
Telemetry [candidate] (11.074 ms) : 0, 11074
Flare Poller [baseline] (3.429 ms) : 0, 3429
Flare Poller [candidate] (3.579 ms) : 0, 3579
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.61.0-SNAPSHOT~f34cb203d4, baseline=1.61.0-SNAPSHOT~517a89d1ec3

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.06 s) : 0, 1060497
Total [baseline] (11.159 s) : 0, 11159278
Agent [candidate] (1.066 s) : 0, 1066092
Total [candidate] (11.207 s) : 0, 11207240
section appsec
Agent [baseline] (1.246 s) : 0, 1246304
Total [baseline] (11.177 s) : 0, 11176918
Agent [candidate] (1.269 s) : 0, 1269020
Total [candidate] (11.225 s) : 0, 11225231
section iast
Agent [baseline] (1.228 s) : 0, 1227745
Total [baseline] (10.635 s) : 0, 10635140
Agent [candidate] (1.243 s) : 0, 1242589
Total [candidate] (11.301 s) : 0, 11300745
section profiling
Agent [baseline] (1.185 s) : 0, 1185329
Total [baseline] (11.085 s) : 0, 11084631
Agent [candidate] (1.189 s) : 0, 1189384
Total [candidate] (11.052 s) : 0, 11051624
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.06 s -
Agent appsec 1.246 s 185.807 ms (17.5%)
Agent iast 1.228 s 167.249 ms (15.8%)
Agent profiling 1.185 s 124.832 ms (11.8%)
Total tracing 11.159 s -
Total appsec 11.177 s 17.641 ms (0.2%)
Total iast 10.635 s -524.138 ms (-4.7%)
Total profiling 11.085 s -74.647 ms (-0.7%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.066 s -
Agent appsec 1.269 s 202.928 ms (19.0%)
Agent iast 1.243 s 176.497 ms (16.6%)
Agent profiling 1.189 s 123.291 ms (11.6%)
Total tracing 11.207 s -
Total appsec 11.225 s 17.991 ms (0.2%)
Total iast 11.301 s 93.505 ms (0.8%)
Total profiling 11.052 s -155.616 ms (-1.4%)
gantt
    title petclinic - break down per module: candidate=1.61.0-SNAPSHOT~f34cb203d4, baseline=1.61.0-SNAPSHOT~517a89d1ec3

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.243 ms) : 0, 1243
crashtracking [candidate] (1.222 ms) : 0, 1222
BytebuddyAgent [baseline] (629.869 ms) : 0, 629869
BytebuddyAgent [candidate] (633.149 ms) : 0, 633149
AgentMeter [baseline] (29.501 ms) : 0, 29501
AgentMeter [candidate] (29.775 ms) : 0, 29775
GlobalTracer [baseline] (257.794 ms) : 0, 257794
GlobalTracer [candidate] (259.822 ms) : 0, 259822
AppSec [baseline] (31.8 ms) : 0, 31800
AppSec [candidate] (32.183 ms) : 0, 32183
Debugger [baseline] (60.274 ms) : 0, 60274
Debugger [candidate] (61.3 ms) : 0, 61300
Remote Config [baseline] (596.07 µs) : 0, 596
Remote Config [candidate] (602.376 µs) : 0, 602
Telemetry [baseline] (8.072 ms) : 0, 8072
Telemetry [candidate] (8.099 ms) : 0, 8099
Flare Poller [baseline] (5.09 ms) : 0, 5090
Flare Poller [candidate] (3.587 ms) : 0, 3587
section appsec
crashtracking [baseline] (1.217 ms) : 0, 1217
crashtracking [candidate] (1.246 ms) : 0, 1246
BytebuddyAgent [baseline] (657.569 ms) : 0, 657569
BytebuddyAgent [candidate] (671.028 ms) : 0, 671028
AgentMeter [baseline] (12.189 ms) : 0, 12189
AgentMeter [candidate] (12.392 ms) : 0, 12392
GlobalTracer [baseline] (257.651 ms) : 0, 257651
GlobalTracer [candidate] (262.503 ms) : 0, 262503
AppSec [baseline] (177.973 ms) : 0, 177973
AppSec [candidate] (179.66 ms) : 0, 179660
Debugger [baseline] (65.565 ms) : 0, 65565
Debugger [candidate] (67.755 ms) : 0, 67755
Remote Config [baseline] (643.604 µs) : 0, 644
Remote Config [candidate] (669.604 µs) : 0, 670
Telemetry [baseline] (8.627 ms) : 0, 8627
Telemetry [candidate] (8.58 ms) : 0, 8580
Flare Poller [baseline] (4.49 ms) : 0, 4490
Flare Poller [candidate] (3.653 ms) : 0, 3653
IAST [baseline] (24.076 ms) : 0, 24076
IAST [candidate] (24.614 ms) : 0, 24614
section iast
crashtracking [baseline] (1.216 ms) : 0, 1216
crashtracking [candidate] (1.229 ms) : 0, 1229
BytebuddyAgent [baseline] (796.058 ms) : 0, 796058
BytebuddyAgent [candidate] (806.603 ms) : 0, 806603
AgentMeter [baseline] (11.467 ms) : 0, 11467
AgentMeter [candidate] (11.574 ms) : 0, 11574
GlobalTracer [baseline] (247.775 ms) : 0, 247775
GlobalTracer [candidate] (250.253 ms) : 0, 250253
AppSec [baseline] (26.447 ms) : 0, 26447
AppSec [candidate] (26.852 ms) : 0, 26852
Debugger [baseline] (69.474 ms) : 0, 69474
Debugger [candidate] (70.258 ms) : 0, 70258
Remote Config [baseline] (525.048 µs) : 0, 525
Remote Config [candidate] (528.634 µs) : 0, 529
Telemetry [baseline] (9.739 ms) : 0, 9739
Telemetry [candidate] (9.796 ms) : 0, 9796
Flare Poller [baseline] (3.462 ms) : 0, 3462
Flare Poller [candidate] (3.406 ms) : 0, 3406
IAST [baseline] (25.355 ms) : 0, 25355
IAST [candidate] (25.613 ms) : 0, 25613
section profiling
ProfilingAgent [baseline] (94.166 ms) : 0, 94166
ProfilingAgent [candidate] (94.296 ms) : 0, 94296
crashtracking [baseline] (1.187 ms) : 0, 1187
crashtracking [candidate] (1.178 ms) : 0, 1178
BytebuddyAgent [baseline] (684.254 ms) : 0, 684254
BytebuddyAgent [candidate] (686.724 ms) : 0, 686724
AgentMeter [baseline] (9.025 ms) : 0, 9025
AgentMeter [candidate] (9.008 ms) : 0, 9008
GlobalTracer [baseline] (215.32 ms) : 0, 215320
GlobalTracer [candidate] (215.839 ms) : 0, 215839
AppSec [baseline] (32.3 ms) : 0, 32300
AppSec [candidate] (32.32 ms) : 0, 32320
Debugger [baseline] (65.41 ms) : 0, 65410
Debugger [candidate] (66.034 ms) : 0, 66034
Remote Config [baseline] (565.871 µs) : 0, 566
Remote Config [candidate] (568.005 µs) : 0, 568
Telemetry [baseline] (7.742 ms) : 0, 7742
Telemetry [candidate] (7.8 ms) : 0, 7800
Flare Poller [baseline] (4.262 ms) : 0, 4262
Flare Poller [candidate] (4.312 ms) : 0, 4312
Profiling [baseline] (94.727 ms) : 0, 94727
Profiling [candidate] (94.843 ms) : 0, 94843
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master alejandro.gonzalez/APPSEC-61920
git_commit_date 1774520089 1774519374
git_commit_sha 17a89d1ec3 f34cb20
release_version 1.61.0-SNAPSHOT~517a89d1ec3 1.61.0-SNAPSHOT~f34cb203d4
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1774521856 1774521856
ci_job_id 1540416878 1540416878
ci_pipeline_id 104490129 104490129
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-rswqnill 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-rswqnill 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 3 performance improvements and 4 performance regressions! Performance is the same for 11 metrics, 18 unstable metrics.

scenario Δ mean agg_http_req_duration_p50 Δ mean agg_http_req_duration_p95 Δ mean throughput candidate mean agg_http_req_duration_p50 candidate mean agg_http_req_duration_p95 candidate mean throughput baseline mean agg_http_req_duration_p50 baseline mean agg_http_req_duration_p95 baseline mean throughput
scenario:load:insecure-bank:profiling:high_load worse
[+127.320µs; +241.922µs] or [+7.970%; +15.144%]
unstable
[+0.622ms; +1.448ms] or [+14.096%; +32.841%]
unstable
[-574.514op/s; -105.924op/s] or [-24.743%; -4.562%]
1.782ms 5.445ms 1981.688op/s 1.597ms 4.410ms 2321.906op/s
scenario:load:insecure-bank:iast_GLOBAL:high_load better
[-265.262µs; -154.632µs] or [-8.930%; -5.206%]
unstable
[-1316.587µs; -85.295µs] or [-15.501%; -1.004%]
unstable
[-71.517op/s; +200.330op/s] or [-5.829%; +16.327%]
2.760ms 7.793ms 1291.406op/s 2.970ms 8.494ms 1227.000op/s
scenario:load:insecure-bank:iast_FULL:high_load worse
[+268.980µs; +556.662µs] or [+5.275%; +10.916%]
worse
[+0.719ms; +1.368ms] or [+5.946%; +11.320%]
unstable
[-133.905op/s; +16.530op/s] or [-16.562%; +2.045%]
5.512ms 13.127ms 749.812op/s 5.099ms 12.083ms 808.500op/s
scenario:load:petclinic:profiling:high_load worse
[+0.806ms; +1.732ms] or [+4.430%; +9.520%]
same
[-238.029µs; +1685.608µs] or [-0.809%; +5.726%]
unstable
[-42.564op/s; +16.064op/s] or [-16.871%; +6.367%]
19.458ms 30.163ms 239.031op/s 18.189ms 29.439ms 252.281op/s
scenario:load:petclinic:iast:high_load better
[-3.053ms; -2.186ms] or [-15.497%; -11.094%]
better
[-4.660ms; -2.612ms] or [-14.969%; -8.392%]
unstable
[+1.565op/s; +61.622op/s] or [+0.665%; +26.174%]
17.081ms 27.492ms 267.031op/s 19.700ms 31.128ms 235.438op/s
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.61.0-SNAPSHOT~f34cb203d4, baseline=1.61.0-SNAPSHOT~517a89d1ec3
    dateFormat X
    axisFormat %s
section baseline
no_agent (18.249 ms) : 18058, 18439
.   : milestone, 18249,
appsec (18.71 ms) : 18515, 18905
.   : milestone, 18710,
code_origins (17.893 ms) : 17716, 18071
.   : milestone, 17893,
iast (19.831 ms) : 19632, 20030
.   : milestone, 19831,
profiling (18.497 ms) : 18314, 18680
.   : milestone, 18497,
tracing (17.77 ms) : 17594, 17947
.   : milestone, 17770,
section candidate
no_agent (19.416 ms) : 19216, 19617
.   : milestone, 19416,
appsec (18.587 ms) : 18399, 18775
.   : milestone, 18587,
code_origins (17.893 ms) : 17716, 18070
.   : milestone, 17893,
iast (17.475 ms) : 17304, 17646
.   : milestone, 17475,
profiling (19.531 ms) : 19337, 19725
.   : milestone, 19531,
tracing (17.725 ms) : 17553, 17898
.   : milestone, 17725,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 18.249 ms [18.058 ms, 18.439 ms] -
appsec 18.71 ms [18.515 ms, 18.905 ms] 460.973 µs (2.5%)
code_origins 17.893 ms [17.716 ms, 18.071 ms] -355.716 µs (-1.9%)
iast 19.831 ms [19.632 ms, 20.03 ms] 1.582 ms (8.7%)
profiling 18.497 ms [18.314 ms, 18.68 ms] 248.278 µs (1.4%)
tracing 17.77 ms [17.594 ms, 17.947 ms] -478.379 µs (-2.6%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 19.416 ms [19.216 ms, 19.617 ms] -
appsec 18.587 ms [18.399 ms, 18.775 ms] -829.477 µs (-4.3%)
code_origins 17.893 ms [17.716 ms, 18.07 ms] -1.524 ms (-7.8%)
iast 17.475 ms [17.304 ms, 17.646 ms] -1.941 ms (-10.0%)
profiling 19.531 ms [19.337 ms, 19.725 ms] 114.666 µs (0.6%)
tracing 17.725 ms [17.553 ms, 17.898 ms] -1.691 ms (-8.7%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.61.0-SNAPSHOT~f34cb203d4, baseline=1.61.0-SNAPSHOT~517a89d1ec3
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.17 ms) : 1159, 1182
.   : milestone, 1170,
iast (3.171 ms) : 3128, 3213
.   : milestone, 3171,
iast_FULL (5.717 ms) : 5661, 5773
.   : milestone, 5717,
iast_GLOBAL (3.74 ms) : 3676, 3805
.   : milestone, 3740,
profiling (1.941 ms) : 1923, 1959
.   : milestone, 1941,
tracing (1.798 ms) : 1784, 1813
.   : milestone, 1798,
section candidate
no_agent (1.189 ms) : 1178, 1201
.   : milestone, 1189,
iast (3.13 ms) : 3090, 3170
.   : milestone, 3130,
iast_FULL (6.167 ms) : 6104, 6230
.   : milestone, 6167,
iast_GLOBAL (3.549 ms) : 3484, 3615
.   : milestone, 3549,
profiling (2.287 ms) : 2264, 2310
.   : milestone, 2287,
tracing (1.789 ms) : 1773, 1804
.   : milestone, 1789,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.17 ms [1.159 ms, 1.182 ms] -
iast 3.171 ms [3.128 ms, 3.213 ms] 2.0 ms (170.9%)
iast_FULL 5.717 ms [5.661 ms, 5.773 ms] 4.546 ms (388.5%)
iast_GLOBAL 3.74 ms [3.676 ms, 3.805 ms] 2.57 ms (219.6%)
profiling 1.941 ms [1.923 ms, 1.959 ms] 770.784 µs (65.9%)
tracing 1.798 ms [1.784 ms, 1.813 ms] 628.078 µs (53.7%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.189 ms [1.178 ms, 1.201 ms] -
iast 3.13 ms [3.09 ms, 3.17 ms] 1.941 ms (163.2%)
iast_FULL 6.167 ms [6.104 ms, 6.23 ms] 4.978 ms (418.5%)
iast_GLOBAL 3.549 ms [3.484 ms, 3.615 ms] 2.36 ms (198.4%)
profiling 2.287 ms [2.264 ms, 2.31 ms] 1.098 ms (92.3%)
tracing 1.789 ms [1.773 ms, 1.804 ms] 599.366 µs (50.4%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master alejandro.gonzalez/APPSEC-61920
git_commit_date 1774519969 1774519374
git_commit_sha 17a89d1ec3 f34cb20
release_version 1.61.0-SNAPSHOT~517a89d1ec3 1.61.0-SNAPSHOT~f34cb203d4
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1774521450 1774521450
ci_job_id 1540416879 1540416879
ci_pipeline_id 104490129 104490129
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-krnw44yr 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-krnw44yr 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 10 metrics, 2 unstable metrics.

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.61.0-SNAPSHOT~f34cb203d4, baseline=1.61.0-SNAPSHOT~517a89d1ec3
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.488 ms) : 1476, 1500
.   : milestone, 1488,
appsec (3.758 ms) : 3541, 3975
.   : milestone, 3758,
iast (2.263 ms) : 2194, 2332
.   : milestone, 2263,
iast_GLOBAL (2.305 ms) : 2236, 2374
.   : milestone, 2305,
profiling (2.538 ms) : 2367, 2709
.   : milestone, 2538,
tracing (2.065 ms) : 2012, 2118
.   : milestone, 2065,
section candidate
no_agent (1.481 ms) : 1469, 1493
.   : milestone, 1481,
appsec (3.824 ms) : 3602, 4046
.   : milestone, 3824,
iast (2.258 ms) : 2189, 2327
.   : milestone, 2258,
iast_GLOBAL (2.303 ms) : 2234, 2372
.   : milestone, 2303,
profiling (2.091 ms) : 2036, 2145
.   : milestone, 2091,
tracing (2.069 ms) : 2015, 2122
.   : milestone, 2069,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.488 ms [1.476 ms, 1.5 ms] -
appsec 3.758 ms [3.541 ms, 3.975 ms] 2.27 ms (152.5%)
iast 2.263 ms [2.194 ms, 2.332 ms] 775.11 µs (52.1%)
iast_GLOBAL 2.305 ms [2.236 ms, 2.374 ms] 816.849 µs (54.9%)
profiling 2.538 ms [2.367 ms, 2.709 ms] 1.05 ms (70.6%)
tracing 2.065 ms [2.012 ms, 2.118 ms] 577.02 µs (38.8%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.481 ms [1.469 ms, 1.493 ms] -
appsec 3.824 ms [3.602 ms, 4.046 ms] 2.343 ms (158.2%)
iast 2.258 ms [2.189 ms, 2.327 ms] 777.011 µs (52.5%)
iast_GLOBAL 2.303 ms [2.234 ms, 2.372 ms] 822.045 µs (55.5%)
profiling 2.091 ms [2.036 ms, 2.145 ms] 609.808 µs (41.2%)
tracing 2.069 ms [2.015 ms, 2.122 ms] 587.395 µs (39.7%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.61.0-SNAPSHOT~f34cb203d4, baseline=1.61.0-SNAPSHOT~517a89d1ec3
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.707 s) : 14707000, 14707000
.   : milestone, 14707000,
appsec (14.904 s) : 14904000, 14904000
.   : milestone, 14904000,
iast (18.303 s) : 18303000, 18303000
.   : milestone, 18303000,
iast_GLOBAL (17.723 s) : 17723000, 17723000
.   : milestone, 17723000,
profiling (14.757 s) : 14757000, 14757000
.   : milestone, 14757000,
tracing (14.793 s) : 14793000, 14793000
.   : milestone, 14793000,
section candidate
no_agent (15.587 s) : 15587000, 15587000
.   : milestone, 15587000,
appsec (14.879 s) : 14879000, 14879000
.   : milestone, 14879000,
iast (18.477 s) : 18477000, 18477000
.   : milestone, 18477000,
iast_GLOBAL (17.87 s) : 17870000, 17870000
.   : milestone, 17870000,
profiling (14.918 s) : 14918000, 14918000
.   : milestone, 14918000,
tracing (14.767 s) : 14767000, 14767000
.   : milestone, 14767000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.707 s [14.707 s, 14.707 s] -
appsec 14.904 s [14.904 s, 14.904 s] 197.0 ms (1.3%)
iast 18.303 s [18.303 s, 18.303 s] 3.596 s (24.5%)
iast_GLOBAL 17.723 s [17.723 s, 17.723 s] 3.016 s (20.5%)
profiling 14.757 s [14.757 s, 14.757 s] 50.0 ms (0.3%)
tracing 14.793 s [14.793 s, 14.793 s] 86.0 ms (0.6%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.587 s [15.587 s, 15.587 s] -
appsec 14.879 s [14.879 s, 14.879 s] -708.0 ms (-4.5%)
iast 18.477 s [18.477 s, 18.477 s] 2.89 s (18.5%)
iast_GLOBAL 17.87 s [17.87 s, 17.87 s] 2.283 s (14.6%)
profiling 14.918 s [14.918 s, 14.918 s] -669.0 ms (-4.3%)
tracing 14.767 s [14.767 s, 14.767 s] -820.0 ms (-5.3%)

@jandro996 jandro996 marked this pull request as ready for review March 26, 2026 11:21
@jandro996 jandro996 requested review from a team as code owners March 26, 2026 11:21
@github-actions github-actions bot added the tag: ai generated Largely based on code generated by an AI or LLM label Mar 26, 2026
}
sourceSets.main.resources.srcDir(generateAgentJarIndex)

def generatePomProperties = tasks.register('generatePomProperties') {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I wonder if there isn't some built-in Gradle option to generate this.
But in the absence of it (cc @bric3?), looks good to me.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I added @bric3 as reviewer about the task definition (input / output / cache / ordering / etc...)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

todo: Good catch @smola, indeed this task can be refactored to use the org.gradle.api.tasks.WriteProperties task, that could looks like:

def pomPropertiesOutputDir = project.layout.buildDirectory.dir("generated/maven-metadata")                                                                                                                                                                                        
def generatePomProperties = tasks.register('generatePomProperties', WriteProperties) {
    destinationFile = pomPropertiesOutputDir.map { it.file("META-INF/maven/com.datadoghq/dd-java-agent/pom.properties") }                                                                                                                                                           
    property("groupId", "com.datadoghq")                                                                                                                                                                                                                                            
    property("artifactId", "dd-java-agent")                                                                                                                                                                                                                                         
    property("version", project.providers.provider { project.version.toString() })                                                                                                                                                                                                  
}                                                                                                                                                                                                                                                                                 
sourceSets.main.resources.srcDir(pomPropertiesOutputDir)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Thanks! modified

jandro996 and others added 5 commits April 7, 2026 14:06
…ncyResolverSpecification.groovy

Co-authored-by: Brice Dutheil <brice.dutheil@gmail.com>
- Use built-in Gradle WriteProperties task instead of custom doLast
  action, which handles inputs/outputs/caching natively
- Fix Groovy with{} usage in test: apply it on ZipOutputStream
  (not ZipEntry as incorrectly suggested in the upstream commit)
Use the built-in Gradle WriteProperties task as suggested by bric3.

Instead of splitting the output directory into a separate variable and
adding an explicit dependsOn (which bric3 did not suggest), derive the
srcDir provider from the task itself via generatePomProperties.map{...}.
This way Gradle infers the processResources -> generatePomProperties
dependency automatically, without extra boilerplate.
Follow the same pattern as includedAgentDir/includedJarFileTree:
- declare pomPropertiesDir and pomPropertiesFileTree near the top
- add dependsOn(pomPropertiesFileTree) to processResources
- declare main.resources.srcDir(pomPropertiesDir) in the sourceSets block
- register generatePomProperties (WriteProperties) near generateAgentJarIndex
- wire pomPropertiesFileTree.builtBy(generatePomProperties)

This avoids the need for a task-provider-mapped srcDir since WriteProperties
outputs a single file (not a directory), so the fileTree + builtBy approach
is the correct way to express the dependency.
Replace two separate srcDir calls with a single srcDirs(includedAgentDir, pomPropertiesDir)
as suggested by bric3.
includedAgentDir was registered twice — once via srcDir and again
inside srcDirs. Replace both with a single srcDirs call.
sourcesJar includes main.resources srcDirs (including pomPropertiesDir)
but had no dependency on generatePomProperties. Add explicit
dependsOn(pomPropertiesFileTree) consistent with the processResources
wiring.
@jandro996 jandro996 enabled auto-merge April 7, 2026 14:12
@jandro996 jandro996 added this pull request to the merge queue Apr 7, 2026
@dd-octo-sts
Copy link
Copy Markdown
Contributor

dd-octo-sts bot commented Apr 7, 2026

/merge

@gh-worker-devflow-routing-ef8351
Copy link
Copy Markdown

gh-worker-devflow-routing-ef8351 bot commented Apr 7, 2026

View all feedbacks in Devflow UI.

2026-04-07 15:53:33 UTC ℹ️ Start processing command /merge


2026-04-07 15:53:38 UTC ℹ️ MergeQueue: pull request added to the queue

The expected merge time in master is approximately 2h (p90).


2026-04-07 18:13:12 UTC ℹ️ MergeQueue: Readding this merge request to the queue because another merge request processed with yours failed. No action is needed from your side.


2026-04-07 19:17:58 UTC ℹ️ MergeQueue: This merge request was merged

@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Apr 7, 2026
@jandro996 jandro996 added this pull request to the merge queue Apr 7, 2026
@dd-octo-sts
Copy link
Copy Markdown
Contributor

dd-octo-sts bot commented Apr 7, 2026

/merge

@gh-worker-devflow-routing-ef8351
Copy link
Copy Markdown

gh-worker-devflow-routing-ef8351 bot commented Apr 7, 2026

View all feedbacks in Devflow UI.

2026-04-07 17:17:37 UTC ℹ️ Start processing command /merge


2026-04-07 17:17:39 UTC ❌ MergeQueue

PR already in the queue with status in_progress

@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Apr 7, 2026
@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d bot merged commit e0914eb into master Apr 7, 2026
555 of 568 checks passed
@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d bot deleted the alejandro.gonzalez/APPSEC-61920 branch April 7, 2026 19:17
@github-actions github-actions bot added this to the 1.61.0 milestone Apr 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: telemetry Telemetry tag: ai generated Largely based on code generated by an AI or LLM type: bug Bug report and fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants