Skip to content

Improve tag propagation between test event levels - #9278

Merged
daniel-mohedano merged 7 commits into
masterfrom
daniel.mohedano/merge-test-frameworks
Aug 5, 2025
Merged

Improve tag propagation between test event levels#9278
daniel-mohedano merged 7 commits into
masterfrom
daniel.mohedano/merge-test-frameworks

Conversation

@daniel-mohedano

@daniel-mohedanodaniel-mohedano commented Jul 30, 2025

Copy link
Copy Markdown
Contributor

What Does This Do

  • Avoids building framework information if the name is null, instead of checking for both name and version being null.
  • Synchronizes during tag propagation between a test event level and the next (test -> suite -> module -> session), to avoid possible race conditions between read and write (especially when merging tag values).

Motivation

Although very rarely, we have seen issues where propagated tags don't have the expected values (like test.framework=null and test.framework_version!=null). We suspect this is caused by race conditions on the tag propagation. Hopefully these changes help alleviate the problem.

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@pr-commenter

pr-commenterBot commented Jul 30, 2025

Copy link
Copy Markdown

Benchmarks

Startup

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
git_branchmasterdaniel.mohedano/merge-test-frameworks
git_commit_date17543177961754319383
git_commit_shad7684b9d738f84
release_version1.52.0-SNAPSHOT~d7684b94491.51.1-SNAPSHOT~d738f842d8
See matching parameters
BaselineCandidate
applicationinsecure-bankinsecure-bank
ci_job_date17543213461754321346
ci_job_id10627076041062707604
ci_pipeline_id7260053072600530
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_versionLinux runner-zfyrx7zua-project-304-concurrent-0-p9xvb1xp 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/LinuxLinux runner-zfyrx7zua-project-304-concurrent-0-p9xvb1xp 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
moduleAgentAgent
parentNoneNone

Summary

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

Startup time reports for insecure-bank
gantt
title insecure-bank - global startup overhead: candidate=1.51.1-SNAPSHOT~d738f842d8, baseline=1.52.0-SNAPSHOT~d7684b9449
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.05 s) : 0, 1050145
Total [baseline] (8.58 s) : 0, 8579675
Agent [candidate] (1.046 s) : 0, 1045818
Total [candidate] (8.597 s) : 0, 8597200
section iast
Agent [baseline] (1.187 s) : 0, 1186717
Total [baseline] (9.328 s) : 0, 9327889
Agent [candidate] (1.173 s) : 0, 1173087
Total [candidate] (9.38 s) : 0, 9379771
Loading
  • baseline results
ModuleVariantDurationΔ tracing
Agenttracing1.05 s-
Agentiast1.187 s136.572 ms (13.0%)
Totaltracing8.58 s-
Totaliast9.328 s748.214 ms (8.7%)
  • candidate results
ModuleVariantDurationΔ tracing
Agenttracing1.046 s-
Agentiast1.173 s127.269 ms (12.2%)
Totaltracing8.597 s-
Totaliast9.38 s782.57 ms (9.1%)
gantt
title insecure-bank - break down per module: candidate=1.51.1-SNAPSHOT~d738f842d8, baseline=1.52.0-SNAPSHOT~d7684b9449
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.43 ms) : 0, 1430
crashtracking [candidate] (1.431 ms) : 0, 1431
BytebuddyAgent [baseline] (735.851 ms) : 0, 735851
BytebuddyAgent [candidate] (731.777 ms) : 0, 731777
GlobalTracer [baseline] (243.008 ms) : 0, 243008
GlobalTracer [candidate] (242.141 ms) : 0, 242141
AppSec [baseline] (30.21 ms) : 0, 30210
AppSec [candidate] (30.09 ms) : 0, 30090
Debugger [baseline] (6.053 ms) : 0, 6053
Debugger [candidate] (6.05 ms) : 0, 6050
Remote Config [baseline] (645.527 µs) : 0, 646
Remote Config [candidate] (657.094 µs) : 0, 657
Telemetry [baseline] (11.991 ms) : 0, 11991
Telemetry [candidate] (12.731 ms) : 0, 12731
section iast
crashtracking [baseline] (1.456 ms) : 0, 1456
crashtracking [candidate] (1.423 ms) : 0, 1423
BytebuddyAgent [baseline] (859.806 ms) : 0, 859806
BytebuddyAgent [candidate] (847.23 ms) : 0, 847230
GlobalTracer [baseline] (232.032 ms) : 0, 232032
GlobalTracer [candidate] (230.715 ms) : 0, 230715
AppSec [baseline] (27.125 ms) : 0, 27125
AppSec [candidate] (26.53 ms) : 0, 26530
Debugger [baseline] (6.706 ms) : 0, 6706
Debugger [candidate] (6.713 ms) : 0, 6713
Remote Config [baseline] (589.246 µs) : 0, 589
Remote Config [candidate] (586.33 µs) : 0, 586
Telemetry [baseline] (8.111 ms) : 0, 8111
Telemetry [candidate] (8.182 ms) : 0, 8182
IAST [baseline] (29.808 ms) : 0, 29808
IAST [candidate] (30.82 ms) : 0, 30820
Loading
Startup time reports for petclinic
gantt
title petclinic - global startup overhead: candidate=1.51.1-SNAPSHOT~d738f842d8, baseline=1.52.0-SNAPSHOT~d7684b9449
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.041 s) : 0, 1040664
Total [baseline] (10.668 s) : 0, 10667826
Agent [candidate] (1.044 s) : 0, 1043621
Total [candidate] (10.715 s) : 0, 10714595
section appsec
Agent [baseline] (1.221 s) : 0, 1220510
Total [baseline] (10.769 s) : 0, 10769077
Agent [candidate] (1.234 s) : 0, 1234435
Total [candidate] (10.843 s) : 0, 10842641
section iast
Agent [baseline] (1.175 s) : 0, 1174850
Total [baseline] (10.923 s) : 0, 10922965
Agent [candidate] (1.173 s) : 0, 1172591
Total [candidate] (10.837 s) : 0, 10836918
section profiling
Agent [baseline] (1.199 s) : 0, 1199129
Total [baseline] (10.869 s) : 0, 10868889
Agent [candidate] (1.193 s) : 0, 1193112
Total [candidate] (10.885 s) : 0, 10885425
Loading
  • baseline results
ModuleVariantDurationΔ tracing
Agenttracing1.041 s-
Agentappsec1.221 s179.847 ms (17.3%)
Agentiast1.175 s134.186 ms (12.9%)
Agentprofiling1.199 s158.465 ms (15.2%)
Totaltracing10.668 s-
Totalappsec10.769 s101.251 ms (0.9%)
Totaliast10.923 s255.14 ms (2.4%)
Totalprofiling10.869 s201.063 ms (1.9%)
  • candidate results
ModuleVariantDurationΔ tracing
Agenttracing1.044 s-
Agentappsec1.234 s190.814 ms (18.3%)
Agentiast1.173 s128.97 ms (12.4%)
Agentprofiling1.193 s149.491 ms (14.3%)
Totaltracing10.715 s-
Totalappsec10.843 s128.047 ms (1.2%)
Totaliast10.837 s122.323 ms (1.1%)
Totalprofiling10.885 s170.83 ms (1.6%)
gantt
title petclinic - break down per module: candidate=1.51.1-SNAPSHOT~d738f842d8, baseline=1.52.0-SNAPSHOT~d7684b9449
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.427 ms) : 0, 1427
crashtracking [candidate] (1.441 ms) : 0, 1441
BytebuddyAgent [baseline] (729.633 ms) : 0, 729633
BytebuddyAgent [candidate] (732.098 ms) : 0, 732098
GlobalTracer [baseline] (240.879 ms) : 0, 240879
GlobalTracer [candidate] (241.978 ms) : 0, 241978
AppSec [baseline] (29.926 ms) : 0, 29926
AppSec [candidate] (30.006 ms) : 0, 30006
Debugger [baseline] (6.014 ms) : 0, 6014
Debugger [candidate] (6.032 ms) : 0, 6032
Remote Config [baseline] (658.138 µs) : 0, 658
Remote Config [candidate] (649.484 µs) : 0, 649
Telemetry [baseline] (11.146 ms) : 0, 11146
Telemetry [candidate] (9.763 ms) : 0, 9763
section appsec
crashtracking [baseline] (1.432 ms) : 0, 1432
crashtracking [candidate] (1.449 ms) : 0, 1449
BytebuddyAgent [baseline] (754.142 ms) : 0, 754142
BytebuddyAgent [candidate] (763.656 ms) : 0, 763656
GlobalTracer [baseline] (235.598 ms) : 0, 235598
GlobalTracer [candidate] (237.547 ms) : 0, 237547
AppSec [baseline] (170.235 ms) : 0, 170235
AppSec [candidate] (170.395 ms) : 0, 170395
Debugger [baseline] (5.702 ms) : 0, 5702
Debugger [candidate] (7.215 ms) : 0, 7215
Remote Config [baseline] (611.759 µs) : 0, 612
Remote Config [candidate] (621.603 µs) : 0, 622
Telemetry [baseline] (8.225 ms) : 0, 8225
Telemetry [candidate] (8.253 ms) : 0, 8253
IAST [baseline] (23.562 ms) : 0, 23562
IAST [candidate] (23.991 ms) : 0, 23991
section iast
crashtracking [baseline] (1.443 ms) : 0, 1443
crashtracking [candidate] (1.432 ms) : 0, 1432
BytebuddyAgent [baseline] (848.629 ms) : 0, 848629
BytebuddyAgent [candidate] (846.793 ms) : 0, 846793
GlobalTracer [baseline] (231.682 ms) : 0, 231682
GlobalTracer [candidate] (231.266 ms) : 0, 231266
AppSec [baseline] (25.337 ms) : 0, 25337
AppSec [candidate] (27.826 ms) : 0, 27826
Debugger [baseline] (7.408 ms) : 0, 7408
Debugger [candidate] (6.662 ms) : 0, 6662
Remote Config [baseline] (588.078 µs) : 0, 588
Remote Config [candidate] (593.834 µs) : 0, 594
Telemetry [baseline] (8.172 ms) : 0, 8172
Telemetry [candidate] (8.901 ms) : 0, 8901
IAST [baseline] (30.61 ms) : 0, 30610
IAST [candidate] (28.119 ms) : 0, 28119
section profiling
ProfilingAgent [baseline] (108.284 ms) : 0, 108284
ProfilingAgent [candidate] (107.475 ms) : 0, 107475
crashtracking [baseline] (1.411 ms) : 0, 1411
crashtracking [candidate] (1.399 ms) : 0, 1399
BytebuddyAgent [baseline] (764.7 ms) : 0, 764700
BytebuddyAgent [candidate] (760.365 ms) : 0, 760365
GlobalTracer [baseline] (222.622 ms) : 0, 222622
GlobalTracer [candidate] (221.512 ms) : 0, 221512
AppSec [baseline] (30.246 ms) : 0, 30246
AppSec [candidate] (29.921 ms) : 0, 29921
Debugger [baseline] (6.245 ms) : 0, 6245
Debugger [candidate] (6.277 ms) : 0, 6277
Remote Config [baseline] (681.543 µs) : 0, 682
Remote Config [candidate] (673.52 µs) : 0, 674
Telemetry [baseline] (15.238 ms) : 0, 15238
Telemetry [candidate] (16.02 ms) : 0, 16020
Profiling [baseline] (108.933 ms) : 0, 108933
Profiling [candidate] (108.127 ms) : 0, 108127
Loading

Load

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
git_branchmasterdaniel.mohedano/merge-test-frameworks
git_commit_date17543177961754319383
git_commit_shad7684b9d738f84
release_version1.52.0-SNAPSHOT~d7684b94491.51.1-SNAPSHOT~d738f842d8
See matching parameters
BaselineCandidate
applicationinsecure-bankinsecure-bank
ci_job_date17543209161754320916
ci_job_id10627076061062707606
ci_pipeline_id7260053072600530
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_versionLinux runner-zfyrx7zua-project-304-concurrent-0-m3qfh3te 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/LinuxLinux runner-zfyrx7zua-project-304-concurrent-0-m3qfh3te 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 2 performance improvements and 3 performance regressions! Performance is the same for 7 metrics, 12 unstable metrics.

scenarioΔ mean http_req_durationΔ mean throughputcandidate mean http_req_durationcandidate mean throughputbaseline mean http_req_durationbaseline mean throughput
scenario:load:insecure-bank:no_agent:high_loadworse
[+192.626µs; +301.042µs] or [+4.558%; +7.123%]
unstable
[-169.228op/s; +51.666op/s] or [-15.588%; +4.759%]
4.473ms1026.844op/s4.226ms1085.625op/s
scenario:load:insecure-bank:profiling:high_loadworse
[+386.260µs; +674.868µs] or [+4.756%; +8.309%]
unstable
[-105.109op/s; +35.734op/s] or [-18.416%; +6.261%]
8.652ms536.062op/s8.122ms570.750op/s
scenario:load:insecure-bank:iast_GLOBAL:high_loadworse
[+727.558µs; +1114.262µs] or [+7.585%; +11.616%]
unstable
[-94.183op/s; +9.995op/s] or [-19.450%; +2.064%]
10.513ms442.125op/s9.592ms484.219op/s
scenario:load:petclinic:appsec:high_loadbetter
[-2.416ms; -1.500ms] or [-4.910%; -3.047%]
unstable
[-3.334op/s; +11.059op/s] or [-3.503%; +11.619%]
47.259ms99.037op/s49.217ms95.175op/s
scenario:load:petclinic:profiling:high_loadbetter
[-4.192ms; -3.220ms] or [-8.657%; -6.649%]
unstable
[+0.109op/s; +15.891op/s] or [+0.112%; +16.442%]
44.718ms104.650op/s48.424ms96.650op/s
Request duration reports for insecure-bank
gantt
title insecure-bank - request duration [CI 0.99] : candidate=1.51.1-SNAPSHOT~d738f842d8, baseline=1.52.0-SNAPSHOT~d7684b9449
dateFormat X
axisFormat %s
section baseline
no_agent (4.226 ms) : 4176, 4276
. : milestone, 4226,
iast (9.393 ms) : 9234, 9551
. : milestone, 9393,
iast_FULL (13.566 ms) : 13293, 13840
. : milestone, 13566,
iast_GLOBAL (9.592 ms) : 9426, 9759
. : milestone, 9592,
profiling (8.122 ms) : 7986, 8257
. : milestone, 8122,
tracing (7.452 ms) : 7339, 7564
. : milestone, 7452,
section candidate
no_agent (4.473 ms) : 4422, 4524
. : milestone, 4473,
iast (9.357 ms) : 9205, 9510
. : milestone, 9357,
iast_FULL (14.136 ms) : 13854, 14418
. : milestone, 14136,
iast_GLOBAL (10.513 ms) : 10321, 10706
. : milestone, 10513,
profiling (8.652 ms) : 8520, 8785
. : milestone, 8652,
tracing (7.507 ms) : 7403, 7612
. : milestone, 7507,
Loading
  • baseline results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent4.226 ms [4.176 ms, 4.276 ms]-
iast9.393 ms [9.234 ms, 9.551 ms]5.166 ms (122.2%)
iast_FULL13.566 ms [13.293 ms, 13.84 ms]9.34 ms (221.0%)
iast_GLOBAL9.592 ms [9.426 ms, 9.759 ms]5.366 ms (127.0%)
profiling8.122 ms [7.986 ms, 8.257 ms]3.896 ms (92.2%)
tracing7.452 ms [7.339 ms, 7.564 ms]3.226 ms (76.3%)
  • candidate results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent4.473 ms [4.422 ms, 4.524 ms]-
iast9.357 ms [9.205 ms, 9.51 ms]4.884 ms (109.2%)
iast_FULL14.136 ms [13.854 ms, 14.418 ms]9.663 ms (216.0%)
iast_GLOBAL10.513 ms [10.321 ms, 10.706 ms]6.04 ms (135.0%)
profiling8.652 ms [8.52 ms, 8.785 ms]4.179 ms (93.4%)
tracing7.507 ms [7.403 ms, 7.612 ms]3.034 ms (67.8%)
Request duration reports for petclinic
gantt
title petclinic - request duration [CI 0.99] : candidate=1.51.1-SNAPSHOT~d738f842d8, baseline=1.52.0-SNAPSHOT~d7684b9449
dateFormat X
axisFormat %s
section baseline
no_agent (37.247 ms) : 36952, 37541
. : milestone, 37247,
appsec (49.217 ms) : 48781, 49652
. : milestone, 49217,
code_origins (44.137 ms) : 43776, 44498
. : milestone, 44137,
iast (45.073 ms) : 44681, 45464
. : milestone, 45073,
profiling (48.424 ms) : 47931, 48916
. : milestone, 48424,
tracing (44.049 ms) : 43675, 44423
. : milestone, 44049,
section candidate
no_agent (37.046 ms) : 36745, 37347
. : milestone, 37046,
appsec (47.259 ms) : 46843, 47675
. : milestone, 47259,
code_origins (44.456 ms) : 44074, 44839
. : milestone, 44456,
iast (45.545 ms) : 45161, 45929
. : milestone, 45545,
profiling (44.718 ms) : 44311, 45125
. : milestone, 44718,
tracing (44.599 ms) : 44216, 44981
. : milestone, 44599,
Loading
  • baseline results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent37.247 ms [36.952 ms, 37.541 ms]-
appsec49.217 ms [48.781 ms, 49.652 ms]11.97 ms (32.1%)
code_origins44.137 ms [43.776 ms, 44.498 ms]6.89 ms (18.5%)
iast45.073 ms [44.681 ms, 45.464 ms]7.826 ms (21.0%)
profiling48.424 ms [47.931 ms, 48.916 ms]11.177 ms (30.0%)
tracing44.049 ms [43.675 ms, 44.423 ms]6.802 ms (18.3%)
  • candidate results
VariantRequest duration [CI 0.99]Δ no_agent
no_agent37.046 ms [36.745 ms, 37.347 ms]-
appsec47.259 ms [46.843 ms, 47.675 ms]10.213 ms (27.6%)
code_origins44.456 ms [44.074 ms, 44.839 ms]7.411 ms (20.0%)
iast45.545 ms [45.161 ms, 45.929 ms]8.499 ms (22.9%)
profiling44.718 ms [44.311 ms, 45.125 ms]7.672 ms (20.7%)
tracing44.599 ms [44.216 ms, 44.981 ms]7.553 ms (20.4%)

Dacapo

Parameters

BaselineCandidate
baseline_or_candidatebaselinecandidate
git_branchmasterdaniel.mohedano/merge-test-frameworks
git_commit_date17543177961754319383
git_commit_shad7684b9d738f84
release_version1.52.0-SNAPSHOT~d7684b94491.51.1-SNAPSHOT~d738f842d8
See matching parameters
BaselineCandidate
applicationbiojavabiojava
ci_job_date17543216091754321609
ci_job_id10627076071062707607
ci_pipeline_id7260053072600530
cpu_modelIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHzIntel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_versionLinux runner-zfyrx7zua-project-304-concurrent-1-nq58y44a 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/LinuxLinux runner-zfyrx7zua-project-304-concurrent-1-nq58y44a 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 biojava
gantt
title biojava - execution time [CI 0.99] : candidate=1.51.1-SNAPSHOT~d738f842d8, baseline=1.52.0-SNAPSHOT~d7684b9449
dateFormat X
axisFormat %s
section baseline
no_agent (15.071 s) : 15071000, 15071000
. : milestone, 15071000,
appsec (14.859 s) : 14859000, 14859000
. : milestone, 14859000,
iast (19.039 s) : 19039000, 19039000
. : milestone, 19039000,
iast_GLOBAL (18.067 s) : 18067000, 18067000
. : milestone, 18067000,
profiling (15.44 s) : 15440000, 15440000
. : milestone, 15440000,
tracing (14.828 s) : 14828000, 14828000
. : milestone, 14828000,
section candidate
no_agent (15.554 s) : 15554000, 15554000
. : milestone, 15554000,
appsec (15.061 s) : 15061000, 15061000
. : milestone, 15061000,
iast (18.342 s) : 18342000, 18342000
. : milestone, 18342000,
iast_GLOBAL (18.1 s) : 18100000, 18100000
. : milestone, 18100000,
profiling (15.894 s) : 15894000, 15894000
. : milestone, 15894000,
tracing (14.935 s) : 14935000, 14935000
. : milestone, 14935000,
Loading
  • baseline results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent15.071 s [15.071 s, 15.071 s]-
appsec14.859 s [14.859 s, 14.859 s]-212.0 ms (-1.4%)
iast19.039 s [19.039 s, 19.039 s]3.968 s (26.3%)
iast_GLOBAL18.067 s [18.067 s, 18.067 s]2.996 s (19.9%)
profiling15.44 s [15.44 s, 15.44 s]369.0 ms (2.4%)
tracing14.828 s [14.828 s, 14.828 s]-243.0 ms (-1.6%)
  • candidate results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent15.554 s [15.554 s, 15.554 s]-
appsec15.061 s [15.061 s, 15.061 s]-493.0 ms (-3.2%)
iast18.342 s [18.342 s, 18.342 s]2.788 s (17.9%)
iast_GLOBAL18.1 s [18.1 s, 18.1 s]2.546 s (16.4%)
profiling15.894 s [15.894 s, 15.894 s]340.0 ms (2.2%)
tracing14.935 s [14.935 s, 14.935 s]-619.0 ms (-4.0%)
Execution time for tomcat
gantt
title tomcat - execution time [CI 0.99] : candidate=1.51.1-SNAPSHOT~d738f842d8, baseline=1.52.0-SNAPSHOT~d7684b9449
dateFormat X
axisFormat %s
section baseline
no_agent (1.482 ms) : 1471, 1494
. : milestone, 1482,
appsec (3.678 ms) : 3462, 3894
. : milestone, 3678,
iast (2.211 ms) : 2149, 2274
. : milestone, 2211,
iast_GLOBAL (2.254 ms) : 2191, 2317
. : milestone, 2254,
profiling (2.092 ms) : 2039, 2145
. : milestone, 2092,
tracing (2.022 ms) : 1974, 2071
. : milestone, 2022,
section candidate
no_agent (1.485 ms) : 1473, 1497
. : milestone, 1485,
appsec (3.614 ms) : 3402, 3825
. : milestone, 3614,
iast (2.203 ms) : 2140, 2266
. : milestone, 2203,
iast_GLOBAL (2.249 ms) : 2186, 2312
. : milestone, 2249,
profiling (2.489 ms) : 2322, 2657
. : milestone, 2489,
tracing (2.028 ms) : 1980, 2076
. : milestone, 2028,
Loading
  • baseline results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent1.482 ms [1.471 ms, 1.494 ms]-
appsec3.678 ms [3.462 ms, 3.894 ms]2.195 ms (148.1%)
iast2.211 ms [2.149 ms, 2.274 ms]728.847 µs (49.2%)
iast_GLOBAL2.254 ms [2.191 ms, 2.317 ms]771.319 µs (52.0%)
profiling2.092 ms [2.039 ms, 2.145 ms]609.558 µs (41.1%)
tracing2.022 ms [1.974 ms, 2.071 ms]539.757 µs (36.4%)
  • candidate results
VariantExecution Time [CI 0.99]Δ no_agent
no_agent1.485 ms [1.473 ms, 1.497 ms]-
appsec3.614 ms [3.402 ms, 3.825 ms]2.129 ms (143.4%)
iast2.203 ms [2.14 ms, 2.266 ms]718.095 µs (48.4%)
iast_GLOBAL2.249 ms [2.186 ms, 2.312 ms]764.002 µs (51.5%)
profiling2.489 ms [2.322 ms, 2.657 ms]1.004 ms (67.6%)
tracing2.028 ms [1.98 ms, 2.076 ms]543.105 µs (36.6%)

@daniel-mohedano
daniel-mohedano marked this pull request as ready for review July 30, 2025 15:05
@daniel-mohedano
daniel-mohedano requested a review from a team as a code ownerJuly 30, 2025 15:05
@datadog-datadog-prod-us1

datadog-datadog-prod-us1Bot commented Aug 1, 2025

Copy link
Copy Markdown
Contributor

Code coverage: total 57.21%, base diff 0.07%, patch 82.54% (view details)

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

@daniel-mohedanodaniel-mohedano changed the title Ignore framework building if name tag is not setImprovements to tag propagation between test event levelsAug 1, 2025
@daniel-mohedanodaniel-mohedano changed the title Improvements to tag propagation between test event levelsImprove tag propagation between test event levelsAug 1, 2025
@daniel-mohedanodaniel-mohedano added type: feature Enhancements and improvements and removed type: bug fix Bug fix labels Aug 4, 2025
@nikita-tkachenko-datadog

Copy link
Copy Markdown
Contributor

Let's rewrite SpanUtils making methods not static, and having parent span and lock as instance fields. That way we don't have to pass the lock object around (which isn't a good practice, as well as having lock objects with protected access) plus we'll be able to get rid of the XXXto methods using method references instead (spanUtils::propagate...).
We might rename the class too (to ChildrenTagsPropagator or whatever seems appropriate).

@daniel-mohedano
daniel-mohedano merged commit ec7ebc7 into masterAug 5, 2025
504 checks passed
@daniel-mohedano
daniel-mohedano deleted the daniel.mohedano/merge-test-frameworks branch August 5, 2025 11:42
@github-actionsgithub-actionsBot added this to the 1.53.0 milestone Aug 5, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Sep 4, 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.52.1` -> `1.53.0` |
---
### Release Notes
<details>
<summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary>
###
[`v1.53.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.53.0):
1.53.0
### Components
#### Application Security Management (WAF)
- 🐛 Fix NullPointerException log in AppSec
([#&#8203;9355](DataDog/dd-trace-java#9355) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Add Forwarded header as a source to client IP resolution
([#&#8203;9310](DataDog/dd-trace-java#9310) -
[@&#8203;jandro996](https://github.com/jandro996))
#### Build & Tooling
- 📖 Update CODEOWNERS
([#&#8203;9294](DataDog/dd-trace-java#9294) -
[@&#8203;mhlidd](https://github.com/mhlidd))
- ✨ Add dependency on Maven Central deployment to OCI publish
jobs
([#&#8203;9204](DataDog/dd-trace-java#9204) -
[@&#8203;sarahchen6](https://github.com/sarahchen6))
#### Continuous Integration Visibility
- ✨ Upload code coverage reports to Datadog
([#&#8203;9425](DataDog/dd-trace-java#9425) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨⚡ Do not follow symlinks by default when building
repository index
([#&#8203;9318](DataDog/dd-trace-java#9318) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Improve tag propagation between test event levels
([#&#8203;9278](DataDog/dd-trace-java#9278) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
#### Data Streams Monitoring
- ✨ Create container hash tags propagation
([#&#8203;9282](DataDog/dd-trace-java#9282) -
[@&#8203;ygree](https://github.com/ygree))
#### Database Monitoring
- 🐛 Prevent crash in SQL Server's JDBC when tracing execute methods
with generated keys
([#&#8203;9321](DataDog/dd-trace-java#9321) -
[@&#8203;na-ji](https://github.com/na-ji))
- ✨ Create container hash tags propagation
([#&#8203;9282](DataDog/dd-trace-java#9282) -
[@&#8203;ygree](https://github.com/ygree))
#### GraalVM native-image
- 🐛 Update GraalVM config to reflect TempLocationManager's new
package
([#&#8203;9337](DataDog/dd-trace-java#9337) -
[@&#8203;luneo7](https://github.com/luneo7) - thanks for the
contribution!)
#### Metrics
- 🐛 Add reflect config for CSS and graalvm
([#&#8203;9449](DataDog/dd-trace-java#9449) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Align CSS health metrics
([#&#8203;9444](DataDog/dd-trace-java#9444) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Aggregate peer tags for consumer span kind
([#&#8203;9442](DataDog/dd-trace-java#9442) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Implement health metrics for client stats
([#&#8203;9377](DataDog/dd-trace-java#9377) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add peer tags, span kind and trace root flag to MetricKey
bucket
([#&#8203;9178](DataDog/dd-trace-java#9178) -
[@&#8203;bric3](https://github.com/bric3))
#### Profiling
- ✨ Create a profile flare reporter (requires tracing or CI vis
to be enabled)
([#&#8203;9433](DataDog/dd-trace-java#9433) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- 🐛 Properly fall-back on UDS profiling URL
([#&#8203;9401](DataDog/dd-trace-java#9401) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- 🐛 Properly handle trace agent IPv6 URL in profiling
([#&#8203;9334](DataDog/dd-trace-java#9334) -
[@&#8203;jbachorik](https://github.com/jbachorik))
#### Realtime User Monitoring
- 🐛 Avoid multiple injections on dispatch on jboss
([#&#8203;9392](DataDog/dd-trace-java#9392) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Support async servlet for RUM injection
([#&#8203;9333](DataDog/dd-trace-java#9333) -
[@&#8203;amarziali](https://github.com/amarziali))
- 🐛 Improve RUM injection matching and avoid truncating responses
([#&#8203;9323](DataDog/dd-trace-java#9323) -
[@&#8203;amarziali](https://github.com/amarziali))
- 💡 Add telemetry for the RUM injector
([#&#8203;9267](DataDog/dd-trace-java#9267) -
[@&#8203;sarahchen6](https://github.com/sarahchen6))
- ✨ Make rum injector stream/writer more resilient to errors
([#&#8203;9184](DataDog/dd-trace-java#9184) -
[@&#8203;amarziali](https://github.com/amarziali))
#### Telemetry
- 🐛 Remediate error logs
([#&#8203;9459](DataDog/dd-trace-java#9459) -
[@&#8203;ygree](https://github.com/ygree))
- ✨ Report config\_id for Hands Off Config files
([#&#8203;9299](DataDog/dd-trace-java#9299) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
- ✨ Adding Config Inversion Telemetry component
([#&#8203;9244](DataDog/dd-trace-java#9244) -
[@&#8203;mhlidd](https://github.com/mhlidd))
#### Trace context propagation
- 🧹 Migrate instrumentations to Context API
([#&#8203;9384](DataDog/dd-trace-java#9384),
[#&#8203;9378](DataDog/dd-trace-java#9378),
[#&#8203;9358](DataDog/dd-trace-java#9358) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨🔍 Add baggage propagation telemetry
([#&#8203;9289](DataDog/dd-trace-java#9289) -
[@&#8203;rachelyangdog](https://github.com/rachelyangdog))
- 🧹 Improve Instrumenter API to use Context instead of Span
([#&#8203;9211](DataDog/dd-trace-java#9211) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
#### Tracer core
- 💡:test\_tube: Enable process level tags for java 21 applications
([#&#8203;9458](DataDog/dd-trace-java#9458) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Move base and peer service adder before span is published
([#&#8203;9408](DataDog/dd-trace-java#9408) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add ErrorPriorities level for manual instrumentation
([#&#8203;9387](DataDog/dd-trace-java#9387) -
[@&#8203;cecile75](https://github.com/cecile75))
- ✨ Throw InvalidBooleanValueException in
ConfigConverter.booleanValueOf
([#&#8203;9370](DataDog/dd-trace-java#9370) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
- 🐛 Avoid NPE on featureDiscovery creation
([#&#8203;9353](DataDog/dd-trace-java#9353) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Stable Config improvements
([#&#8203;9259](DataDog/dd-trace-java#9259) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
### Instrumentations
#### gRPC instrumentation
- 🐛 Changing GRPC instrumentation codes from `status.code` to
`grpc.status.code`
([#&#8203;9367](DataDog/dd-trace-java#9367) -
[@&#8203;mhlidd](https://github.com/mhlidd))
#### JDBC instrumentation
- 🐛 Prevent crash in SQL Server's JDBC when tracing execute methods
with generated keys
([#&#8203;9321](DataDog/dd-trace-java#9321) -
[@&#8203;na-ji](https://github.com/na-ji))
#### Kotlin instrumentation
- 🐛 Take defensive copy of original scope stack when restoring on
different thread
([#&#8203;9403](DataDog/dd-trace-java#9403) -
[@&#8203;mcculls](https://github.com/mcculls))
#### OpenTelemetry instrumentation
- 🐛 Fix using SpanAttribute annotation on multiple parameters
([#&#8203;9412](DataDog/dd-trace-java#9412) -
[@&#8203;cecile75](https://github.com/cecile75))
</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: e23ec866cef91afc6b5226d5f0dc7da538d947e8
eizus pushed a commit to cdrxyz/misk that referenced this pull request Jul 18, 2026
| 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.52.1` -> `1.53.0` |
---
### Release Notes
<details>
<summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary>
###
[`v1.53.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.53.0):
1.53.0
### Components
#### Application Security Management (WAF)
- 🐛 Fix NullPointerException log in AppSec
([#&#8203;9355](DataDog/dd-trace-java#9355) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Add Forwarded header as a source to client IP resolution
([#&#8203;9310](DataDog/dd-trace-java#9310) -
[@&#8203;jandro996](https://github.com/jandro996))
#### Build & Tooling
- 📖 Update CODEOWNERS
([#&#8203;9294](DataDog/dd-trace-java#9294) -
[@&#8203;mhlidd](https://github.com/mhlidd))
- ✨ Add dependency on Maven Central deployment to OCI publish
jobs
([#&#8203;9204](DataDog/dd-trace-java#9204) -
[@&#8203;sarahchen6](https://github.com/sarahchen6))
#### Continuous Integration Visibility
- ✨ Upload code coverage reports to Datadog
([#&#8203;9425](DataDog/dd-trace-java#9425) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨⚡ Do not follow symlinks by default when building
repository index
([#&#8203;9318](DataDog/dd-trace-java#9318) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- ✨ Improve tag propagation between test event levels
([#&#8203;9278](DataDog/dd-trace-java#9278) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
#### Data Streams Monitoring
- ✨ Create container hash tags propagation
([#&#8203;9282](DataDog/dd-trace-java#9282) -
[@&#8203;ygree](https://github.com/ygree))
#### Database Monitoring
- 🐛 Prevent crash in SQL Server's JDBC when tracing execute methods
with generated keys
([#&#8203;9321](DataDog/dd-trace-java#9321) -
[@&#8203;na-ji](https://github.com/na-ji))
- ✨ Create container hash tags propagation
([#&#8203;9282](DataDog/dd-trace-java#9282) -
[@&#8203;ygree](https://github.com/ygree))
#### GraalVM native-image
- 🐛 Update GraalVM config to reflect TempLocationManager's new
package
([#&#8203;9337](DataDog/dd-trace-java#9337) -
[@&#8203;luneo7](https://github.com/luneo7) - thanks for the
contribution!)
#### Metrics
- 🐛 Add reflect config for CSS and graalvm
([#&#8203;9449](DataDog/dd-trace-java#9449) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Align CSS health metrics
([#&#8203;9444](DataDog/dd-trace-java#9444) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Aggregate peer tags for consumer span kind
([#&#8203;9442](DataDog/dd-trace-java#9442) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Implement health metrics for client stats
([#&#8203;9377](DataDog/dd-trace-java#9377) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add peer tags, span kind and trace root flag to MetricKey
bucket
([#&#8203;9178](DataDog/dd-trace-java#9178) -
[@&#8203;bric3](https://github.com/bric3))
#### Profiling
- ✨ Create a profile flare reporter (requires tracing or CI vis
to be enabled)
([#&#8203;9433](DataDog/dd-trace-java#9433) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- 🐛 Properly fall-back on UDS profiling URL
([#&#8203;9401](DataDog/dd-trace-java#9401) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- 🐛 Properly handle trace agent IPv6 URL in profiling
([#&#8203;9334](DataDog/dd-trace-java#9334) -
[@&#8203;jbachorik](https://github.com/jbachorik))
#### Realtime User Monitoring
- 🐛 Avoid multiple injections on dispatch on jboss
([#&#8203;9392](DataDog/dd-trace-java#9392) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Support async servlet for RUM injection
([#&#8203;9333](DataDog/dd-trace-java#9333) -
[@&#8203;amarziali](https://github.com/amarziali))
- 🐛 Improve RUM injection matching and avoid truncating responses
([#&#8203;9323](DataDog/dd-trace-java#9323) -
[@&#8203;amarziali](https://github.com/amarziali))
- 💡 Add telemetry for the RUM injector
([#&#8203;9267](DataDog/dd-trace-java#9267) -
[@&#8203;sarahchen6](https://github.com/sarahchen6))
- ✨ Make rum injector stream/writer more resilient to errors
([#&#8203;9184](DataDog/dd-trace-java#9184) -
[@&#8203;amarziali](https://github.com/amarziali))
#### Telemetry
- 🐛 Remediate error logs
([#&#8203;9459](DataDog/dd-trace-java#9459) -
[@&#8203;ygree](https://github.com/ygree))
- ✨ Report config\_id for Hands Off Config files
([#&#8203;9299](DataDog/dd-trace-java#9299) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
- ✨ Adding Config Inversion Telemetry component
([#&#8203;9244](DataDog/dd-trace-java#9244) -
[@&#8203;mhlidd](https://github.com/mhlidd))
#### Trace context propagation
- 🧹 Migrate instrumentations to Context API
([#&#8203;9384](DataDog/dd-trace-java#9384),
[#&#8203;9378](DataDog/dd-trace-java#9378),
[#&#8203;9358](DataDog/dd-trace-java#9358) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨🔍 Add baggage propagation telemetry
([#&#8203;9289](DataDog/dd-trace-java#9289) -
[@&#8203;rachelyangdog](https://github.com/rachelyangdog))
- 🧹 Improve Instrumenter API to use Context instead of Span
([#&#8203;9211](DataDog/dd-trace-java#9211) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
#### Tracer core
- 💡:test\_tube: Enable process level tags for java 21 applications
([#&#8203;9458](DataDog/dd-trace-java#9458) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Move base and peer service adder before span is published
([#&#8203;9408](DataDog/dd-trace-java#9408) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add ErrorPriorities level for manual instrumentation
([#&#8203;9387](DataDog/dd-trace-java#9387) -
[@&#8203;cecile75](https://github.com/cecile75))
- ✨ Throw InvalidBooleanValueException in
ConfigConverter.booleanValueOf
([#&#8203;9370](DataDog/dd-trace-java#9370) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
- 🐛 Avoid NPE on featureDiscovery creation
([#&#8203;9353](DataDog/dd-trace-java#9353) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Stable Config improvements
([#&#8203;9259](DataDog/dd-trace-java#9259) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
### Instrumentations
#### gRPC instrumentation
- 🐛 Changing GRPC instrumentation codes from `status.code` to
`grpc.status.code`
([#&#8203;9367](DataDog/dd-trace-java#9367) -
[@&#8203;mhlidd](https://github.com/mhlidd))
#### JDBC instrumentation
- 🐛 Prevent crash in SQL Server's JDBC when tracing execute methods
with generated keys
([#&#8203;9321](DataDog/dd-trace-java#9321) -
[@&#8203;na-ji](https://github.com/na-ji))
#### Kotlin instrumentation
- 🐛 Take defensive copy of original scope stack when restoring on
different thread
([#&#8203;9403](DataDog/dd-trace-java#9403) -
[@&#8203;mcculls](https://github.com/mcculls))
#### OpenTelemetry instrumentation
- 🐛 Fix using SpanAttribute annotation on multiple parameters
([#&#8203;9412](DataDog/dd-trace-java#9412) -
[@&#8203;cecile75](https://github.com/cecile75))
</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: e23ec866cef91afc6b5226d5f0dc7da538d947e8
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: ci visibilityContinuous Integration Visibilitytype: featureEnhancements and improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@daniel-mohedano@nikita-tkachenko-datadog