Skip to content

Enforce size limit on application_monitoring.yaml files #8789

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 29 commits into from
Jun 3, 2025

Conversation

mtoffl01
Copy link
Contributor

@mtoffl01 mtoffl01 commented May 8, 2025

What Does This Do

Introduces a file size limit (256 KB) to limit the maximum "hands off" configuration file size that we will read.

Motivation

Protection against corrupted files and maintain performance.
See: RFC

The value (256 KB) was determined by taking the size of a sample "hands off" configuration file with both apm_configuration_default and apm_configuration_rules (phase 1 and phase 2 inputs, respectively), multiplying it by 100 * 2. This value may change, or may become configurable, in the future depending on where phase 2 specifications land.

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@mtoffl01 mtoffl01 changed the title Mtoff/scfg file size limit Enforce size limit on application_monitoring.yaml files May 8, 2025
@pr-commenter
Copy link

pr-commenter bot commented May 8, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mtoff/scfg_file_size_limit
git_commit_date 1746789389 1748617096
git_commit_sha ad6d5fe 4ee6d5e
release_version 1.50.0-SNAPSHOT~ad6d5fef42 1.50.0-SNAPSHOT~4ee6d5ed12
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1748619555 1748619555
ci_job_id 961182915 961182915
ci_pipeline_id 66540723 66540723
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-x3kj13mk-project-304-concurrent-1-egpokg4o 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-x3kj13mk-project-304-concurrent-1-egpokg4o 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None
variant iast iast

Summary

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

scenario Δ mean execution_time candidate mean execution_time baseline mean execution_time
scenario:startup:insecure-bank:tracing:Remote Config worse
[+28.819µs; +78.816µs] or [+4.231%; +11.572%]
734.902µs 681.084µs
scenario:startup:petclinic:profiling:ProfilingAgent better
[-7.781ms; -3.174ms] or [-7.111%; -2.900%]
103.951ms 109.428ms
scenario:startup:petclinic:profiling:GlobalTracer better
[-22.689ms; -18.502ms] or [-5.976%; -4.873%]
359.104ms 379.700ms
scenario:startup:petclinic:profiling:AppSec worse
[+5.525ms; +8.614ms] or [+10.124%; +15.785%]
61.639ms 54.570ms
scenario:startup:petclinic:profiling:Profiling better
[-7.782ms; -3.175ms] or [-7.110%; -2.901%]
103.975ms 109.454ms
scenario:startup:petclinic:tracing:Remote Config worse
[+39.025µs; +87.162µs] or [+5.730%; +12.798%]
744.157µs 681.064µs
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.50.0-SNAPSHOT~4ee6d5ed12, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.02 s) : 0, 1020130
Total [baseline] (8.684 s) : 0, 8684216
Agent [candidate] (1.028 s) : 0, 1027748
Total [candidate] (8.686 s) : 0, 8685559
section iast
Agent [baseline] (1.165 s) : 0, 1164607
Total [baseline] (9.283 s) : 0, 9283029
Agent [candidate] (1.151 s) : 0, 1151392
Total [candidate] (9.243 s) : 0, 9242982
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.176 s) : 0, 1176176
Total [baseline] (9.259 s) : 0, 9259329
Agent [candidate] (1.153 s) : 0, 1152939
Total [candidate] (9.221 s) : 0, 9220520
section iast_TELEMETRY_OFF
Agent [baseline] (1.147 s) : 0, 1147438
Total [baseline] (9.237 s) : 0, 9237298
Agent [candidate] (1.147 s) : 0, 1146751
Total [candidate] (9.242 s) : 0, 9241591
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.02 s -
Agent iast 1.165 s 144.477 ms (14.2%)
Agent iast_HARDCODED_SECRET_DISABLED 1.176 s 156.046 ms (15.3%)
Agent iast_TELEMETRY_OFF 1.147 s 127.308 ms (12.5%)
Total tracing 8.684 s -
Total iast 9.283 s 598.813 ms (6.9%)
Total iast_HARDCODED_SECRET_DISABLED 9.259 s 575.114 ms (6.6%)
Total iast_TELEMETRY_OFF 9.237 s 553.082 ms (6.4%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.028 s -
Agent iast 1.151 s 123.643 ms (12.0%)
Agent iast_HARDCODED_SECRET_DISABLED 1.153 s 125.19 ms (12.2%)
Agent iast_TELEMETRY_OFF 1.147 s 119.003 ms (11.6%)
Total tracing 8.686 s -
Total iast 9.243 s 557.423 ms (6.4%)
Total iast_HARDCODED_SECRET_DISABLED 9.221 s 534.961 ms (6.2%)
Total iast_TELEMETRY_OFF 9.242 s 556.032 ms (6.4%)
gantt
    title insecure-bank - break down per module: candidate=1.50.0-SNAPSHOT~4ee6d5ed12, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (682.353 ms) : 0, 682353
BytebuddyAgent [candidate] (685.153 ms) : 0, 685153
GlobalTracer [baseline] (240.225 ms) : 0, 240225
GlobalTracer [candidate] (242.72 ms) : 0, 242720
AppSec [baseline] (54.515 ms) : 0, 54515
AppSec [candidate] (57.588 ms) : 0, 57588
Debugger [baseline] (9.83 ms) : 0, 9830
Debugger [candidate] (6.239 ms) : 0, 6239
Remote Config [baseline] (681.084 µs) : 0, 681
Remote Config [candidate] (734.902 µs) : 0, 735
Telemetry [baseline] (8.945 ms) : 0, 8945
Telemetry [candidate] (11.851 ms) : 0, 11851
section iast
BytebuddyAgent [baseline] (813.935 ms) : 0, 813935
BytebuddyAgent [candidate] (803.063 ms) : 0, 803063
GlobalTracer [baseline] (233.136 ms) : 0, 233136
GlobalTracer [candidate] (231.356 ms) : 0, 231356
IAST [baseline] (30.302 ms) : 0, 30302
IAST [candidate] (27.647 ms) : 0, 27647
AppSec [baseline] (48.926 ms) : 0, 48926
AppSec [candidate] (51.316 ms) : 0, 51316
Debugger [baseline] (5.965 ms) : 0, 5965
Debugger [candidate] (5.942 ms) : 0, 5942
Remote Config [baseline] (629.752 µs) : 0, 630
Remote Config [candidate] (594.358 µs) : 0, 594
Telemetry [baseline] (7.996 ms) : 0, 7996
Telemetry [candidate] (7.93 ms) : 0, 7930
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (821.464 ms) : 0, 821464
BytebuddyAgent [candidate] (804.228 ms) : 0, 804228
GlobalTracer [baseline] (235.36 ms) : 0, 235360
GlobalTracer [candidate] (231.885 ms) : 0, 231885
IAST [baseline] (30.926 ms) : 0, 30926
IAST [candidate] (26.793 ms) : 0, 26793
AppSec [baseline] (49.74 ms) : 0, 49740
AppSec [candidate] (52.07 ms) : 0, 52070
Debugger [baseline] (6.039 ms) : 0, 6039
Debugger [candidate] (5.922 ms) : 0, 5922
Remote Config [baseline] (604.602 µs) : 0, 605
Remote Config [candidate] (597.417 µs) : 0, 597
Telemetry [baseline] (8.161 ms) : 0, 8161
Telemetry [candidate] (7.852 ms) : 0, 7852
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (800.059 ms) : 0, 800059
BytebuddyAgent [candidate] (799.639 ms) : 0, 799639
GlobalTracer [baseline] (231.095 ms) : 0, 231095
GlobalTracer [candidate] (231.294 ms) : 0, 231294
IAST [baseline] (23.04 ms) : 0, 23040
IAST [candidate] (28.523 ms) : 0, 28523
AppSec [baseline] (55.29 ms) : 0, 55290
AppSec [candidate] (49.443 ms) : 0, 49443
Debugger [baseline] (5.948 ms) : 0, 5948
Debugger [candidate] (5.931 ms) : 0, 5931
Remote Config [baseline] (607.324 µs) : 0, 607
Remote Config [candidate] (585.717 µs) : 0, 586
Telemetry [baseline] (7.883 ms) : 0, 7883
Telemetry [candidate] (7.853 ms) : 0, 7853
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.50.0-SNAPSHOT~4ee6d5ed12, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.024 s) : 0, 1023841
Total [baseline] (10.489 s) : 0, 10489083
Agent [candidate] (1.033 s) : 0, 1033283
Total [candidate] (10.461 s) : 0, 10460788
section appsec
Agent [baseline] (1.168 s) : 0, 1167665
Total [baseline] (10.676 s) : 0, 10676173
Agent [candidate] (1.173 s) : 0, 1172624
Total [candidate] (10.707 s) : 0, 10706588
section iast
Agent [baseline] (1.157 s) : 0, 1157288
Total [baseline] (10.921 s) : 0, 10921335
Agent [candidate] (1.155 s) : 0, 1154873
Total [candidate] (10.926 s) : 0, 10925931
section profiling
Agent [baseline] (1.288 s) : 0, 1287675
Total [baseline] (10.884 s) : 0, 10884083
Agent [candidate] (1.264 s) : 0, 1263571
Total [candidate] (10.859 s) : 0, 10859133
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.024 s -
Agent appsec 1.168 s 143.825 ms (14.0%)
Agent iast 1.157 s 133.447 ms (13.0%)
Agent profiling 1.288 s 263.834 ms (25.8%)
Total tracing 10.489 s -
Total appsec 10.676 s 187.09 ms (1.8%)
Total iast 10.921 s 432.252 ms (4.1%)
Total profiling 10.884 s 395.0 ms (3.8%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.033 s -
Agent appsec 1.173 s 139.341 ms (13.5%)
Agent iast 1.155 s 121.591 ms (11.8%)
Agent profiling 1.264 s 230.288 ms (22.3%)
Total tracing 10.461 s -
Total appsec 10.707 s 245.8 ms (2.3%)
Total iast 10.926 s 465.143 ms (4.4%)
Total profiling 10.859 s 398.345 ms (3.8%)
gantt
    title petclinic - break down per module: candidate=1.50.0-SNAPSHOT~4ee6d5ed12, baseline=1.50.0-SNAPSHOT~ad6d5fef42

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (685.191 ms) : 0, 685191
BytebuddyAgent [candidate] (690.93 ms) : 0, 690930
GlobalTracer [baseline] (240.921 ms) : 0, 240921
GlobalTracer [candidate] (243.118 ms) : 0, 243118
AppSec [baseline] (55.956 ms) : 0, 55956
AppSec [candidate] (55.797 ms) : 0, 55797
Debugger [baseline] (7.657 ms) : 0, 7657
Debugger [candidate] (6.257 ms) : 0, 6257
Remote Config [baseline] (681.064 µs) : 0, 681
Remote Config [candidate] (744.157 µs) : 0, 744
Telemetry [baseline] (9.83 ms) : 0, 9830
Telemetry [candidate] (12.725 ms) : 0, 12725
section appsec
BytebuddyAgent [baseline] (705.096 ms) : 0, 705096
BytebuddyAgent [candidate] (706.928 ms) : 0, 706928
GlobalTracer [baseline] (238.109 ms) : 0, 238109
GlobalTracer [candidate] (239.833 ms) : 0, 239833
IAST [baseline] (21.914 ms) : 0, 21914
IAST [candidate] (21.678 ms) : 0, 21678
AppSec [baseline] (175.102 ms) : 0, 175102
AppSec [candidate] (176.903 ms) : 0, 176903
Debugger [baseline] (5.964 ms) : 0, 5964
Debugger [candidate] (6.042 ms) : 0, 6042
Remote Config [baseline] (622.957 µs) : 0, 623
Remote Config [candidate] (640.328 µs) : 0, 640
Telemetry [baseline] (8.171 ms) : 0, 8171
Telemetry [candidate] (7.732 ms) : 0, 7732
section iast
BytebuddyAgent [baseline] (808.172 ms) : 0, 808172
BytebuddyAgent [candidate] (806.484 ms) : 0, 806484
GlobalTracer [baseline] (232.159 ms) : 0, 232159
GlobalTracer [candidate] (231.83 ms) : 0, 231830
IAST [baseline] (28.468 ms) : 0, 28468
IAST [candidate] (26.935 ms) : 0, 26935
AppSec [baseline] (50.477 ms) : 0, 50477
AppSec [candidate] (50.953 ms) : 0, 50953
Debugger [baseline] (5.962 ms) : 0, 5962
Debugger [candidate] (5.909 ms) : 0, 5909
Remote Config [baseline] (609.015 µs) : 0, 609
Remote Config [candidate] (594.719 µs) : 0, 595
Telemetry [baseline] (7.927 ms) : 0, 7927
Telemetry [candidate] (7.878 ms) : 0, 7878
section profiling
BytebuddyAgent [baseline] (678.473 ms) : 0, 678473
BytebuddyAgent [candidate] (673.153 ms) : 0, 673153
GlobalTracer [baseline] (379.7 ms) : 0, 379700
GlobalTracer [candidate] (359.104 ms) : 0, 359104
AppSec [baseline] (54.57 ms) : 0, 54570
AppSec [candidate] (61.639 ms) : 0, 61639
Debugger [baseline] (6.101 ms) : 0, 6101
Debugger [candidate] (6.139 ms) : 0, 6139
Remote Config [baseline] (646.358 µs) : 0, 646
Remote Config [candidate] (658.987 µs) : 0, 659
Telemetry [baseline] (8.11 ms) : 0, 8110
Telemetry [candidate] (8.188 ms) : 0, 8188
ProfilingAgent [baseline] (109.428 ms) : 0, 109428
ProfilingAgent [candidate] (103.951 ms) : 0, 103951
Profiling [baseline] (109.454 ms) : 0, 109454
Profiling [candidate] (103.975 ms) : 0, 103975
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-05-30T15:09:34 2025-05-30T15:17:18
git_branch master mtoff/scfg_file_size_limit
git_commit_date 1746789389 1748617096
git_commit_sha ad6d5fe 4ee6d5e
release_version 1.50.0-SNAPSHOT~ad6d5fef42 1.50.0-SNAPSHOT~4ee6d5ed12
start_time 2025-05-30T15:09:19 2025-05-30T15:17:04
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1748618636 1748618636
ci_job_id 961182917 961182917
ci_pipeline_id 66540723 66540723
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-x3kj13mk-project-304-concurrent-2-qjbgowbn 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-x3kj13mk-project-304-concurrent-2-qjbgowbn 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
variant iast iast

Summary

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

Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~4ee6d5ed12, baseline=1.50.0-SNAPSHOT~ad6d5fef42
    dateFormat X
    axisFormat %s
section baseline
no_agent (384.425 µs) : 365, 404
.   : milestone, 384,
iast (521.806 µs) : 499, 545
.   : milestone, 522,
iast_FULL (742.943 µs) : 721, 765
.   : milestone, 743,
iast_GLOBAL (554.77 µs) : 533, 576
.   : milestone, 555,
iast_HARDCODED_SECRET_DISABLED (519.807 µs) : 496, 544
.   : milestone, 520,
iast_INACTIVE (465.449 µs) : 443, 488
.   : milestone, 465,
iast_TELEMETRY_OFF (517.327 µs) : 494, 540
.   : milestone, 517,
tracing (458.468 µs) : 436, 481
.   : milestone, 458,
section candidate
no_agent (387.469 µs) : 367, 408
.   : milestone, 387,
iast (525.404 µs) : 504, 547
.   : milestone, 525,
iast_FULL (738.754 µs) : 715, 762
.   : milestone, 739,
iast_GLOBAL (558.782 µs) : 537, 580
.   : milestone, 559,
iast_HARDCODED_SECRET_DISABLED (521.023 µs) : 499, 543
.   : milestone, 521,
iast_INACTIVE (468.608 µs) : 446, 491
.   : milestone, 469,
iast_TELEMETRY_OFF (504.201 µs) : 481, 528
.   : milestone, 504,
tracing (460.298 µs) : 438, 482
.   : milestone, 460,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 384.425 µs [364.687 µs, 404.163 µs] -
iast 521.806 µs [498.845 µs, 544.767 µs] 137.381 µs (35.7%)
iast_FULL 742.943 µs [720.97 µs, 764.917 µs] 358.518 µs (93.3%)
iast_GLOBAL 554.77 µs [533.377 µs, 576.163 µs] 170.345 µs (44.3%)
iast_HARDCODED_SECRET_DISABLED 519.807 µs [496.022 µs, 543.591 µs] 135.381 µs (35.2%)
iast_INACTIVE 465.449 µs [442.581 µs, 488.317 µs] 81.023 µs (21.1%)
iast_TELEMETRY_OFF 517.327 µs [494.275 µs, 540.38 µs] 132.902 µs (34.6%)
tracing 458.468 µs [436.246 µs, 480.69 µs] 74.042 µs (19.3%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 387.469 µs [367.263 µs, 407.674 µs] -
iast 525.404 µs [503.586 µs, 547.223 µs] 137.936 µs (35.6%)
iast_FULL 738.754 µs [715.17 µs, 762.337 µs] 351.285 µs (90.7%)
iast_GLOBAL 558.782 µs [537.21 µs, 580.353 µs] 171.313 µs (44.2%)
iast_HARDCODED_SECRET_DISABLED 521.023 µs [499.456 µs, 542.59 µs] 133.554 µs (34.5%)
iast_INACTIVE 468.608 µs [445.865 µs, 491.351 µs] 81.14 µs (20.9%)
iast_TELEMETRY_OFF 504.201 µs [480.879 µs, 527.524 µs] 116.733 µs (30.1%)
tracing 460.298 µs [438.366 µs, 482.231 µs] 72.83 µs (18.8%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~4ee6d5ed12, baseline=1.50.0-SNAPSHOT~ad6d5fef42
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.366 ms) : 1345, 1386
.   : milestone, 1366,
appsec (1.725 ms) : 1701, 1749
.   : milestone, 1725,
appsec_no_iast (1.722 ms) : 1698, 1746
.   : milestone, 1722,
code_origins (1.664 ms) : 1637, 1691
.   : milestone, 1664,
iast (1.505 ms) : 1481, 1530
.   : milestone, 1505,
profiling (1.548 ms) : 1523, 1573
.   : milestone, 1548,
tracing (1.502 ms) : 1478, 1526
.   : milestone, 1502,
section candidate
no_agent (1.361 ms) : 1343, 1380
.   : milestone, 1361,
appsec (1.738 ms) : 1715, 1761
.   : milestone, 1738,
appsec_no_iast (1.728 ms) : 1705, 1751
.   : milestone, 1728,
code_origins (1.688 ms) : 1661, 1715
.   : milestone, 1688,
iast (1.543 ms) : 1518, 1569
.   : milestone, 1543,
profiling (1.507 ms) : 1483, 1531
.   : milestone, 1507,
tracing (1.487 ms) : 1463, 1511
.   : milestone, 1487,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.366 ms [1.345 ms, 1.386 ms] -
appsec 1.725 ms [1.701 ms, 1.749 ms] 359.449 µs (26.3%)
appsec_no_iast 1.722 ms [1.698 ms, 1.746 ms] 356.308 µs (26.1%)
code_origins 1.664 ms [1.637 ms, 1.691 ms] 298.352 µs (21.8%)
iast 1.505 ms [1.481 ms, 1.53 ms] 139.555 µs (10.2%)
profiling 1.548 ms [1.523 ms, 1.573 ms] 182.203 µs (13.3%)
tracing 1.502 ms [1.478 ms, 1.526 ms] 136.047 µs (10.0%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.361 ms [1.343 ms, 1.38 ms] -
appsec 1.738 ms [1.715 ms, 1.761 ms] 376.51 µs (27.7%)
appsec_no_iast 1.728 ms [1.705 ms, 1.751 ms] 366.707 µs (26.9%)
code_origins 1.688 ms [1.661 ms, 1.715 ms] 326.471 µs (24.0%)
iast 1.543 ms [1.518 ms, 1.569 ms] 181.989 µs (13.4%)
profiling 1.507 ms [1.483 ms, 1.531 ms] 145.616 µs (10.7%)
tracing 1.487 ms [1.463 ms, 1.511 ms] 125.094 µs (9.2%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mtoff/scfg_file_size_limit
git_commit_date 1746789389 1748617096
git_commit_sha ad6d5fe 4ee6d5e
release_version 1.50.0-SNAPSHOT~ad6d5fef42 1.50.0-SNAPSHOT~4ee6d5ed12
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1748619157 1748619157
ci_job_id 961182919 961182919
ci_pipeline_id 66540723 66540723
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-x3kj13mk-project-304-concurrent-3-84ctls07 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-x3kj13mk-project-304-concurrent-3-84ctls07 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
variant appsec appsec

Summary

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

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~4ee6d5ed12, baseline=1.50.0-SNAPSHOT~ad6d5fef42
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.477 ms) : 1466, 1489
.   : milestone, 1477,
appsec (2.397 ms) : 2349, 2446
.   : milestone, 2397,
iast (2.177 ms) : 2117, 2238
.   : milestone, 2177,
iast_GLOBAL (2.219 ms) : 2158, 2280
.   : milestone, 2219,
profiling (2.037 ms) : 1988, 2086
.   : milestone, 2037,
tracing (1.995 ms) : 1948, 2041
.   : milestone, 1995,
section candidate
no_agent (1.479 ms) : 1468, 1491
.   : milestone, 1479,
appsec (2.41 ms) : 2362, 2459
.   : milestone, 2410,
iast (2.175 ms) : 2114, 2236
.   : milestone, 2175,
iast_GLOBAL (2.219 ms) : 2158, 2280
.   : milestone, 2219,
profiling (2.051 ms) : 2001, 2101
.   : milestone, 2051,
tracing (2.007 ms) : 1960, 2054
.   : milestone, 2007,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.477 ms [1.466 ms, 1.489 ms] -
appsec 2.397 ms [2.349 ms, 2.446 ms] 920.38 µs (62.3%)
iast 2.177 ms [2.117 ms, 2.238 ms] 700.305 µs (47.4%)
iast_GLOBAL 2.219 ms [2.158 ms, 2.28 ms] 742.192 µs (50.2%)
profiling 2.037 ms [1.988 ms, 2.086 ms] 559.802 µs (37.9%)
tracing 1.995 ms [1.948 ms, 2.041 ms] 517.531 µs (35.0%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.479 ms [1.468 ms, 1.491 ms] -
appsec 2.41 ms [2.362 ms, 2.459 ms] 931.138 µs (62.9%)
iast 2.175 ms [2.114 ms, 2.236 ms] 695.763 µs (47.0%)
iast_GLOBAL 2.219 ms [2.158 ms, 2.28 ms] 739.496 µs (50.0%)
profiling 2.051 ms [2.001 ms, 2.101 ms] 571.831 µs (38.7%)
tracing 2.007 ms [1.96 ms, 2.054 ms] 527.662 µs (35.7%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~4ee6d5ed12, baseline=1.50.0-SNAPSHOT~ad6d5fef42
    dateFormat X
    axisFormat %s
section baseline
no_agent (15.497 s) : 15497000, 15497000
.   : milestone, 15497000,
appsec (15.038 s) : 15038000, 15038000
.   : milestone, 15038000,
iast (18.895 s) : 18895000, 18895000
.   : milestone, 18895000,
iast_GLOBAL (17.787 s) : 17787000, 17787000
.   : milestone, 17787000,
profiling (14.74 s) : 14740000, 14740000
.   : milestone, 14740000,
tracing (15.055 s) : 15055000, 15055000
.   : milestone, 15055000,
section candidate
no_agent (15.511 s) : 15511000, 15511000
.   : milestone, 15511000,
appsec (14.99 s) : 14990000, 14990000
.   : milestone, 14990000,
iast (18.809 s) : 18809000, 18809000
.   : milestone, 18809000,
iast_GLOBAL (18.193 s) : 18193000, 18193000
.   : milestone, 18193000,
profiling (15.015 s) : 15015000, 15015000
.   : milestone, 15015000,
tracing (15.004 s) : 15004000, 15004000
.   : milestone, 15004000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.497 s [15.497 s, 15.497 s] -
appsec 15.038 s [15.038 s, 15.038 s] -459.0 ms (-3.0%)
iast 18.895 s [18.895 s, 18.895 s] 3.398 s (21.9%)
iast_GLOBAL 17.787 s [17.787 s, 17.787 s] 2.29 s (14.8%)
profiling 14.74 s [14.74 s, 14.74 s] -757.0 ms (-4.9%)
tracing 15.055 s [15.055 s, 15.055 s] -442.0 ms (-2.9%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.511 s [15.511 s, 15.511 s] -
appsec 14.99 s [14.99 s, 14.99 s] -521.0 ms (-3.4%)
iast 18.809 s [18.809 s, 18.809 s] 3.298 s (21.3%)
iast_GLOBAL 18.193 s [18.193 s, 18.193 s] 2.682 s (17.3%)
profiling 15.015 s [15.015 s, 15.015 s] -496.0 ms (-3.2%)
tracing 15.004 s [15.004 s, 15.004 s] -507.0 ms (-3.3%)

@mtoffl01 mtoffl01 marked this pull request as ready for review May 28, 2025 17:44
@mtoffl01 mtoffl01 requested a review from a team as a code owner May 28, 2025 17:45
@mtoffl01 mtoffl01 requested a review from PerfectSlayer May 28, 2025 17:45
Copy link
Contributor

@PerfectSlayer PerfectSlayer left a comment

Choose a reason for hiding this comment

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

Looking good 👍

@mtoffl01 mtoffl01 enabled auto-merge (squash) May 30, 2025 14:58
@mtoffl01 mtoffl01 merged commit ec92625 into master Jun 3, 2025
506 of 507 checks passed
@mtoffl01 mtoffl01 deleted the mtoff/scfg_file_size_limit branch June 3, 2025 16:27
@github-actions github-actions bot added this to the 1.50.0 milestone Jun 3, 2025
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Jun 20, 2025
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
| [com.datadoghq:dd-trace-api](https://github.com/datadog/dd-trace-java)
| dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`1.49.0` -> `1.50.0` |

---

### Release Notes

<details>
<summary>datadog/dd-trace-java (com.datadoghq:dd-trace-api)</summary>

###
[`v1.50.0`](https://github.com/DataDog/dd-trace-java/releases/tag/v1.50.0):
1.50.0

### Deprecation Notice

> \[!NOTE]
> `DD_RUNTIME_ID_ENABLED` has been deprecated and will be removed in
future releases. Please use `DD_RUNTIME_METRICS_RUNTIME_ID_ENABLED`
instead.

### Components

#### Application Security Management (WAF)

- 🐛 Add String length truncation limit to ObjectIntrospector and
update truncation metrics
([#&#8203;8825](DataDog/dd-trace-java#8825) -
[@&#8203;jandro996](https://github.com/jandro996))
- 🐛 Adapt standalone ASM to support API Security
([#&#8203;8804](DataDog/dd-trace-java#8804) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Add appsec.waf.input\_truncated metric
([#&#8203;8791](DataDog/dd-trace-java#8791) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Extended appsec request body collection
([#&#8203;8748](DataDog/dd-trace-java#8748) -
[@&#8203;jandro996](https://github.com/jandro996))
- ✨ Extended appsec request/response headers collection
([#&#8203;8724](DataDog/dd-trace-java#8724) -
[@&#8203;jandro996](https://github.com/jandro996))

#### Build & Tooling

- ✨ Add artifacts to public s3 bucket
([#&#8203;8947](DataDog/dd-trace-java#8947) -
[@&#8203;randomanderson](https://github.com/randomanderson))

#### Continuous Integration Visibility

- ✨ Improve PR information building
([#&#8203;8908](DataDog/dd-trace-java#8908) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Truncate span stack traces when Test Optimization is
enabled
([#&#8203;8903](DataDog/dd-trace-java#8903) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🐛 Ensure auto-detected service name is the same for every process
in the same build
([#&#8203;8902](DataDog/dd-trace-java#8902) -
[@&#8203;nikita-tkachenko-datadog](https://github.com/nikita-tkachenko-datadog))
- 🐛 Use tag as fallback in api requests if no branch is available
([#&#8203;8876](DataDog/dd-trace-java#8876) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Add support for JUnit 5.13-RC1
([#&#8203;8865](DataDog/dd-trace-java#8865),
[#&#8203;8871](DataDog/dd-trace-java#8871) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Implement attempt to fix v3 and v4 and bump capability
version
([#&#8203;8824](DataDog/dd-trace-java#8824) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- 🧹 Align retry logic for all test framework instrumentations
([#&#8203;8803](DataDog/dd-trace-java#8803) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- 🐛 Always build ci workspace without trailing separator
([#&#8203;8788](DataDog/dd-trace-java#8788) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))
- ✨ Add commit discrepancies telemetry when building repository
git information
([#&#8203;8763](DataDog/dd-trace-java#8763) -
[@&#8203;daniel-mohedano](https://github.com/daniel-mohedano))

#### Data Streams Monitoring

- 💡 Surface process tags in dsm payloads and use them for base hash
calculation
([#&#8203;8836](DataDog/dd-trace-java#8836) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Dynamic Instrumentation

- ✨ Optimized allocations for collection filter functions
([#&#8203;8896](DataDog/dd-trace-java#8896) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Fix SymDB upload size check
([#&#8203;8887](DataDog/dd-trace-java#8887) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Add support for Set in filter function
([#&#8203;8873](DataDog/dd-trace-java#8873) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Add support for isDefined in log template
([#&#8203;8859](DataDog/dd-trace-java#8859) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Fix Max captured frames for Exception Replay
([#&#8203;8856](DataDog/dd-trace-java#8856) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 🐛 Remove static inherited fields collection
([#&#8203;8832](DataDog/dd-trace-java#8832) -
[@&#8203;jpbempel](https://github.com/jpbempel))
- 💡 Add process tags to dynamic instrumentation intake payload
([#&#8203;8779](DataDog/dd-trace-java#8779) -
[@&#8203;amarziali](https://github.com/amarziali))

#### GraalVM native-image

- ✨ Add support for GraalVM Native GC metrics
([#&#8203;8913](DataDog/dd-trace-java#8913) -
[@&#8203;ygree](https://github.com/ygree))
- ✨ Add JMXFetch support for GraalVM Native
([#&#8203;8569](DataDog/dd-trace-java#8569) -
[@&#8203;ygree](https://github.com/ygree))

#### JMX fetch

- ✨ Add support for GraalVM Native GC metrics
([#&#8203;8913](DataDog/dd-trace-java#8913) -
[@&#8203;ygree](https://github.com/ygree))

#### Library Injection

- ✨ Deny oracle db jvm based tools
([#&#8203;8909](DataDog/dd-trace-java#8909) -
[@&#8203;bric3](https://github.com/bric3))

#### OpenTracing

- 🐛 Fix OT packaging for exception replay
([#&#8203;8912](DataDog/dd-trace-java#8912) -
[@&#8203;jpbempel](https://github.com/jpbempel))

#### Profiling

- ✨ Bump ddprof to 1.27.0
([#&#8203;8893](DataDog/dd-trace-java#8893) -
[@&#8203;jbachorik](https://github.com/jbachorik))
- Properly handle the adaptive sampling interval overflow by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#213
- Fix [#&#8203;200](DataDog/dd-trace-java#200)
Crash related to aligned\_alloc and free in context by
[@&#8203;yanglong1010](https://github.com/yanglong1010) in
DataDog/java-profiler#208
- Explicitly initialize empty context page by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#210
- Re-connect crash recursion protection with VM stackwalker by
[@&#8203;jbachorik](https://github.com/jbachorik) in
DataDog/java-profiler#214
- ✨ Enable ZSTD compression for profiling
([#&#8203;8862](DataDog/dd-trace-java#8862) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- ✨ Extend JPS re-implementation to J9 family
([#&#8203;8813](DataDog/dd-trace-java#8813) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- 💡 Collect process tags for profiling upload requests
([#&#8203;8780](DataDog/dd-trace-java#8780) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Telemetry

- 💡 Surface process tags on telemetry payloads
([#&#8203;8837](DataDog/dd-trace-java#8837) -
[@&#8203;amarziali](https://github.com/amarziali))

#### Trace context propagation

- ✨ Migrating all HttpClient Instrumentations to Inject Full
Context
([#&#8203;8826](DataDog/dd-trace-java#8826) -
[@&#8203;mhlidd](https://github.com/mhlidd))
- ✨ Migrating all HttpServer Instrumentations to Extract full
Context
([#&#8203;8820](DataDog/dd-trace-java#8820) -
[@&#8203;mhlidd](https://github.com/mhlidd))
- ✨ Add context API support OTel propagators
([#&#8203;8770](DataDog/dd-trace-java#8770) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

#### Tracer core

- ✨⚡ Skip JAXB generated classes classloader
([#&#8203;9003](DataDog/dd-trace-java#9003) -
[@&#8203;bric3](https://github.com/bric3))
- ✨ Add DD\_RUNTIME\_METRICS\_RUNTIME\_ID\_ENABLED alias for
runtime id generation
([#&#8203;8981](DataDog/dd-trace-java#8981) -
[@&#8203;amarziali](https://github.com/amarziali))
- 🐛 Use resolved address for peer.hostname when available without
hitting the cache
([#&#8203;8915](DataDog/dd-trace-java#8915) -
[@&#8203;amarziali](https://github.com/amarziali))
- 💡 Surface server name process tag for tomcat
([#&#8203;8894](DataDog/dd-trace-java#8894) -
[@&#8203;amarziali](https://github.com/amarziali))
- 💡 Surface websphere cell and server name on process tags
([#&#8203;8880](DataDog/dd-trace-java#8880) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Added special lightweight pre-main class that skips
installation on incompatible JVMs.
([#&#8203;8855](DataDog/dd-trace-java#8855) -
[@&#8203;AlexeyKuznetsov-DD](https://github.com/AlexeyKuznetsov-DD))
- 💡 Add entrypoint type to process tags
([#&#8203;8839](DataDog/dd-trace-java#8839) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Extend JPS re-implementation to J9 family
([#&#8203;8813](DataDog/dd-trace-java#8813) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- ✨ Notify listeners when the scope top changes after switching
scope stacks
([#&#8203;8797](DataDog/dd-trace-java#8797) -
[@&#8203;mcculls](https://github.com/mcculls))
- ✨ Read hsperfdata for Java PIDs if jvmstat is unavailable
([#&#8203;8792](DataDog/dd-trace-java#8792) -
[@&#8203;MattAlp](https://github.com/MattAlp))
- 🐛 Turn JDK socket support on by default
([#&#8203;8752](DataDog/dd-trace-java#8752) -
[@&#8203;sarahchen6](https://github.com/sarahchen6))
- ✨ Simplify context propagation
([#&#8203;8719](DataDog/dd-trace-java#8719) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))
- ✨ Add JSON parsing support
([#&#8203;8579](DataDog/dd-trace-java#8579) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

#### Tracer internal logging

- ✨ Fix printing format of span identifiers
([#&#8203;8897](DataDog/dd-trace-java#8897) -
[@&#8203;vandonr](https://github.com/vandonr))

#### Tracer public API

- 💡 Track the source of installation
([#&#8203;8956](DataDog/dd-trace-java#8956) -
[@&#8203;mabdinur](https://github.com/mabdinur))
- ✨ Enforce size limit on application\_monitoring.yaml files
([#&#8203;8789](DataDog/dd-trace-java#8789) -
[@&#8203;mtoffl01](https://github.com/mtoffl01))
- ✨ Enabling baggage cache to support limits and non-ascii
characters
([#&#8203;8713](DataDog/dd-trace-java#8713) -
[@&#8203;mhlidd](https://github.com/mhlidd))

### Instrumentations

#### AWS Lambda instrumentation

- ✨ Pass Lambda Request ID to Extension
([#&#8203;8814](DataDog/dd-trace-java#8814) -
[@&#8203;nhulston](https://github.com/nhulston))

#### Core Java language instrumentation

- ✨ Ensure ClassloadingInstrumentation is always applied even
with `DD_TRACE_ENABLED=false`
([#&#8203;8863](DataDog/dd-trace-java#8863) -
[@&#8203;mcculls](https://github.com/mcculls))

#### Eclipse Vert.x instrumentation

- 🐛 Do not override route with / in vertx instrumentation
([#&#8203;8881](DataDog/dd-trace-java#8881) -
[@&#8203;vandonr](https://github.com/vandonr))

#### IBM Liberty

- 🐛 Fix error mark on http status for IBM liberty
([#&#8203;8822](DataDog/dd-trace-java#8822) -
[@&#8203;amarziali](https://github.com/amarziali))

#### JDBC instrumentation

- 🐛 Do not prepend DBM <> APM trace comment in SQLCommenter if there
is a pg plan hint
([#&#8203;8864](DataDog/dd-trace-java#8864) -
[@&#8203;edengorevoy](https://github.com/edengorevoy))

#### JMS instrumentation

- ✨ Add jms as an extra integration name where there is JMS
involved
([#&#8203;8933](DataDog/dd-trace-java#8933) -
[@&#8203;vandonr](https://github.com/vandonr))

#### Kotlin instrumentation

- ✨ Enable kotlin\_coroutine integration by default
([#&#8203;8848](DataDog/dd-trace-java#8848) -
[@&#8203;mcculls](https://github.com/mcculls))
- 🧹 Rework Kotlin coroutines instrumentation around coroutine
context
([#&#8203;8774](DataDog/dd-trace-java#8774) -
[@&#8203;mcculls](https://github.com/mcculls))

#### OpenTelemetry instrumentation

- 🐛 Support WithSpan inheritContext attribute
([#&#8203;8858](DataDog/dd-trace-java#8858) -
[@&#8203;amarziali](https://github.com/amarziali))
- ✨ Add context API support OTel propagators
([#&#8203;8770](DataDog/dd-trace-java#8770) -
[@&#8203;PerfectSlayer](https://github.com/PerfectSlayer))

#### Play Framework instrumentation

- 🐛 Fix the Play Framework's span resource name priority so that the
client JAX-RS 404 cannot override it
([#&#8203;8591](DataDog/dd-trace-java#8591) -
[@&#8203;ygree](https://github.com/ygree))

#### Quarkus Instrumentation

- 🐛 Ignore quarkus jaxrs stubs and cdi wrapper proxies
([#&#8203;8891](DataDog/dd-trace-java#8891) -
[@&#8203;amarziali](https://github.com/amarziali))

#### ServiceTalk

- ✨ Improve ServiceTalk Captured Context API Instrumentation
for v0.42.56+
([#&#8203;8821](DataDog/dd-trace-java#8821) -
[@&#8203;ygree](https://github.com/ygree))

#### Spring instrumentation

- ✨ Supporting Baggage for Instrumentations used in Weblog
Tests
([#&#8203;8773](DataDog/dd-trace-java#8773) -
[@&#8203;mhlidd](https://github.com/mhlidd))

#### WebSocket Instrumentation

- 💡 Trace websocket for spring webflux reactive handlers
([#&#8203;8831](DataDog/dd-trace-java#8831) -
[@&#8203;amarziali](https://github.com/amarziali))
- 💡:test\_tube: WebSocket support for Netty
([#&#8203;8632](DataDog/dd-trace-java#8632) -
[@&#8203;ValentinZakharov](https://github.com/ValentinZakharov))

#### Zio Instrumentation

- 🧹 Cleanup Zio fiber instrumentation to avoid repeated activation
of continuation
([#&#8203;8798](DataDog/dd-trace-java#8798) -
[@&#8203;mcculls](https://github.com/mcculls))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 6pm every weekday,before 2am
every weekday" in timezone Australia/Melbourne, Automerge - At any time
(no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://github.com/renovatebot/renovate).

GitOrigin-RevId: 9207366cdb6a1bd098082305d354a0a3c4622d7a
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants