Skip to content
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

Provide access to VM arguments via shared CLIHelper #8538

Merged
merged 17 commits into from
Mar 25, 2025
Merged

Conversation

mtoffl01
Copy link
Contributor

@mtoffl01 mtoffl01 commented Mar 11, 2025

What Does This Do

Moves existing logic for getting VM arguments out of AgentBootstrap.java and into a new component, CLIHlper class. This class gets all VM Args on startup and stores them in a HashSet for optimized querying.
This PR also expands the existing logic for getting VM Args to include a linux-specific check via procfs; the /proc/self/cmdline symlink on linux systems allows for reading jvm args of the current process.
https://hub.docker.com/_/busybox
2025-03-13_14-58-24

Motivation

Checking VM args is a requirement for the Stable Configuration Phase 2 project (Draft PR | RFC). The Stable Configuration logic will check whether specific process arguments are set on the process and, if so, apply some tracer configuration. Theoretically, we could expect an infinite number of queries for specific process arguments, and that's why I chose HashSet (as opposed to a List) as the underlying data structure. The existing logic in getAgentFilesFromVMArguments, which iterates over all the existing keys to check for those that start with "javaagent", is still O(n), but that has not changed.

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

mtoffl01 and others added 4 commits March 11, 2025 16:32
…ider/VMArgsCache.java

Co-authored-by: datadog-datadog-prod-us1[bot] <88084959+datadog-datadog-prod-us1[bot]@users.noreply.github.com>
…ider/VMArgsCache.java

Co-authored-by: datadog-datadog-prod-us1[bot] <88084959+datadog-datadog-prod-us1[bot]@users.noreply.github.com>
…ider/VMArgsCache.java

Co-authored-by: datadog-datadog-prod-us1[bot] <88084959+datadog-datadog-prod-us1[bot]@users.noreply.github.com>
@mtoffl01 mtoffl01 changed the title [WIP] Create internal API for getting VM Arguments Create internal API for VM Arguments Mar 12, 2025
@mtoffl01 mtoffl01 changed the title Create internal API for VM Arguments Create API for VM Arguments Mar 12, 2025
@pr-commenter
Copy link

pr-commenter bot commented Mar 14, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mtoff/jvm-args
git_commit_date 1742904906 1742910867
git_commit_sha fe8895f 8837a21
release_version 1.48.0-SNAPSHOT~fe8895f92a 1.48.0-SNAPSHOT~8837a21358
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1742913959 1742913959
ci_job_id 863410389 863410389
ci_pipeline_id 59891561 59891561
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-jzzy7jrd-project-304-concurrent-2-s01uzs4w 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-jzzy7jrd-project-304-concurrent-2-s01uzs4w 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None
variant iast iast

Summary

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

Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.48.0-SNAPSHOT~8837a21358, baseline=1.48.0-SNAPSHOT~fe8895f92a

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.048 s) : 0, 1047816
Total [baseline] (10.463 s) : 0, 10462788
Agent [candidate] (1.045 s) : 0, 1044553
Total [candidate] (10.412 s) : 0, 10411662
section appsec
Agent [baseline] (1.191 s) : 0, 1191037
Total [baseline] (10.765 s) : 0, 10765395
Agent [candidate] (1.189 s) : 0, 1189247
Total [candidate] (10.709 s) : 0, 10709113
section iast
Agent [baseline] (1.178 s) : 0, 1178343
Total [baseline] (10.989 s) : 0, 10989266
Agent [candidate] (1.2 s) : 0, 1200379
Total [candidate] (11.027 s) : 0, 11027252
section profiling
Agent [baseline] (1.27 s) : 0, 1270115
Total [baseline] (10.871 s) : 0, 10871033
Agent [candidate] (1.278 s) : 0, 1278033
Total [candidate] (10.897 s) : 0, 10896706
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.048 s -
Agent appsec 1.191 s 143.221 ms (13.7%)
Agent iast 1.178 s 130.527 ms (12.5%)
Agent profiling 1.27 s 222.299 ms (21.2%)
Total tracing 10.463 s -
Total appsec 10.765 s 302.607 ms (2.9%)
Total iast 10.989 s 526.477 ms (5.0%)
Total profiling 10.871 s 408.244 ms (3.9%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.045 s -
Agent appsec 1.189 s 144.694 ms (13.9%)
Agent iast 1.2 s 155.826 ms (14.9%)
Agent profiling 1.278 s 233.48 ms (22.4%)
Total tracing 10.412 s -
Total appsec 10.709 s 297.451 ms (2.9%)
Total iast 11.027 s 615.59 ms (5.9%)
Total profiling 10.897 s 485.044 ms (4.7%)
gantt
    title petclinic - break down per module: candidate=1.48.0-SNAPSHOT~8837a21358, baseline=1.48.0-SNAPSHOT~fe8895f92a

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (717.662 ms) : 0, 717662
BytebuddyAgent [candidate] (718.59 ms) : 0, 718590
GlobalTracer [baseline] (240.96 ms) : 0, 240960
GlobalTracer [candidate] (239.611 ms) : 0, 239611
AppSec [baseline] (54.97 ms) : 0, 54970
AppSec [candidate] (54.5 ms) : 0, 54500
Debugger [baseline] (5.168 ms) : 0, 5168
Debugger [candidate] (5.15 ms) : 0, 5150
Remote Config [baseline] (726.589 µs) : 0, 727
Remote Config [candidate] (708.941 µs) : 0, 709
Telemetry [baseline] (12.236 ms) : 0, 12236
Telemetry [candidate] (9.959 ms) : 0, 9959
section appsec
BytebuddyAgent [baseline] (738.837 ms) : 0, 738837
BytebuddyAgent [candidate] (736.484 ms) : 0, 736484
GlobalTracer [baseline] (236.206 ms) : 0, 236206
GlobalTracer [candidate] (236.462 ms) : 0, 236462
IAST [baseline] (21.384 ms) : 0, 21384
IAST [candidate] (21.535 ms) : 0, 21535
AppSec [baseline] (176.007 ms) : 0, 176007
AppSec [candidate] (176.36 ms) : 0, 176360
Debugger [baseline] (4.32 ms) : 0, 4320
Debugger [candidate] (4.303 ms) : 0, 4303
Remote Config [baseline] (656.816 µs) : 0, 657
Remote Config [candidate] (644.113 µs) : 0, 644
Telemetry [baseline] (8.225 ms) : 0, 8225
Telemetry [candidate] (8.196 ms) : 0, 8196
section iast
BytebuddyAgent [baseline] (839.299 ms) : 0, 839299
BytebuddyAgent [candidate] (856.953 ms) : 0, 856953
GlobalTracer [baseline] (230.883 ms) : 0, 230883
GlobalTracer [candidate] (233.638 ms) : 0, 233638
IAST [baseline] (23.557 ms) : 0, 23557
IAST [candidate] (23.199 ms) : 0, 23199
AppSec [baseline] (55.013 ms) : 0, 55013
AppSec [candidate] (56.657 ms) : 0, 56657
Debugger [baseline] (4.166 ms) : 0, 4166
Debugger [candidate] (4.196 ms) : 0, 4196
Remote Config [baseline] (594.452 µs) : 0, 594
Remote Config [candidate] (615.856 µs) : 0, 616
Telemetry [baseline] (8.817 ms) : 0, 8817
Telemetry [candidate] (8.924 ms) : 0, 8924
section profiling
BytebuddyAgent [baseline] (709.245 ms) : 0, 709245
BytebuddyAgent [candidate] (713.459 ms) : 0, 713459
GlobalTracer [baseline] (349.499 ms) : 0, 349499
GlobalTracer [candidate] (351.592 ms) : 0, 351592
AppSec [baseline] (54.258 ms) : 0, 54258
AppSec [candidate] (54.011 ms) : 0, 54011
Debugger [baseline] (4.257 ms) : 0, 4257
Debugger [candidate] (4.318 ms) : 0, 4318
Remote Config [baseline] (685.17 µs) : 0, 685
Remote Config [candidate] (704.746 µs) : 0, 705
Telemetry [baseline] (8.881 ms) : 0, 8881
Telemetry [candidate] (9.021 ms) : 0, 9021
ProfilingAgent [baseline] (101.676 ms) : 0, 101676
ProfilingAgent [candidate] (103.067 ms) : 0, 103067
Profiling [baseline] (101.702 ms) : 0, 101702
Profiling [candidate] (103.093 ms) : 0, 103093
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.48.0-SNAPSHOT~8837a21358, baseline=1.48.0-SNAPSHOT~fe8895f92a

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.051 s) : 0, 1050585
Total [baseline] (8.707 s) : 0, 8706611
Agent [candidate] (1.046 s) : 0, 1046467
Total [candidate] (8.661 s) : 0, 8661499
section iast
Agent [baseline] (1.172 s) : 0, 1172312
Total [baseline] (9.224 s) : 0, 9223706
Agent [candidate] (1.176 s) : 0, 1175831
Total [candidate] (9.269 s) : 0, 9268849
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.176 s) : 0, 1175561
Total [baseline] (9.229 s) : 0, 9229276
Agent [candidate] (1.176 s) : 0, 1175678
Total [candidate] (9.19 s) : 0, 9189870
section iast_TELEMETRY_OFF
Agent [baseline] (1.18 s) : 0, 1179520
Total [baseline] (9.225 s) : 0, 9225386
Agent [candidate] (1.174 s) : 0, 1173527
Total [candidate] (9.21 s) : 0, 9210016
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.051 s -
Agent iast 1.172 s 121.727 ms (11.6%)
Agent iast_HARDCODED_SECRET_DISABLED 1.176 s 124.976 ms (11.9%)
Agent iast_TELEMETRY_OFF 1.18 s 128.934 ms (12.3%)
Total tracing 8.707 s -
Total iast 9.224 s 517.095 ms (5.9%)
Total iast_HARDCODED_SECRET_DISABLED 9.229 s 522.664 ms (6.0%)
Total iast_TELEMETRY_OFF 9.225 s 518.774 ms (6.0%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.046 s -
Agent iast 1.176 s 129.364 ms (12.4%)
Agent iast_HARDCODED_SECRET_DISABLED 1.176 s 129.211 ms (12.3%)
Agent iast_TELEMETRY_OFF 1.174 s 127.06 ms (12.1%)
Total tracing 8.661 s -
Total iast 9.269 s 607.35 ms (7.0%)
Total iast_HARDCODED_SECRET_DISABLED 9.19 s 528.371 ms (6.1%)
Total iast_TELEMETRY_OFF 9.21 s 548.517 ms (6.3%)
gantt
    title insecure-bank - break down per module: candidate=1.48.0-SNAPSHOT~8837a21358, baseline=1.48.0-SNAPSHOT~fe8895f92a

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (719.007 ms) : 0, 719007
BytebuddyAgent [candidate] (717.943 ms) : 0, 717943
GlobalTracer [baseline] (240.769 ms) : 0, 240769
GlobalTracer [candidate] (240.197 ms) : 0, 240197
AppSec [baseline] (56.019 ms) : 0, 56019
AppSec [candidate] (54.351 ms) : 0, 54351
Debugger [baseline] (4.457 ms) : 0, 4457
Debugger [candidate] (4.399 ms) : 0, 4399
Remote Config [baseline] (711.983 µs) : 0, 712
Remote Config [candidate] (708.595 µs) : 0, 709
Telemetry [baseline] (13.524 ms) : 0, 13524
Telemetry [candidate] (12.813 ms) : 0, 12813
section iast
BytebuddyAgent [baseline] (835.084 ms) : 0, 835084
BytebuddyAgent [candidate] (837.807 ms) : 0, 837807
GlobalTracer [baseline] (229.274 ms) : 0, 229274
GlobalTracer [candidate] (229.816 ms) : 0, 229816
IAST [baseline] (22.655 ms) : 0, 22655
IAST [candidate] (23.635 ms) : 0, 23635
AppSec [baseline] (55.88 ms) : 0, 55880
AppSec [candidate] (55.105 ms) : 0, 55105
Debugger [baseline] (4.163 ms) : 0, 4163
Debugger [candidate] (4.148 ms) : 0, 4148
Remote Config [baseline] (607.092 µs) : 0, 607
Remote Config [candidate] (594.517 µs) : 0, 595
Telemetry [baseline] (8.716 ms) : 0, 8716
Telemetry [candidate] (8.733 ms) : 0, 8733
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (837.714 ms) : 0, 837714
BytebuddyAgent [candidate] (837.259 ms) : 0, 837259
GlobalTracer [baseline] (230.165 ms) : 0, 230165
GlobalTracer [candidate] (230.353 ms) : 0, 230353
IAST [baseline] (22.651 ms) : 0, 22651
IAST [candidate] (23.532 ms) : 0, 23532
AppSec [baseline] (55.555 ms) : 0, 55555
AppSec [candidate] (55.208 ms) : 0, 55208
Debugger [baseline] (4.112 ms) : 0, 4112
Debugger [candidate] (4.074 ms) : 0, 4074
Remote Config [baseline] (592.278 µs) : 0, 592
Remote Config [candidate] (588.861 µs) : 0, 589
Telemetry [baseline] (8.747 ms) : 0, 8747
Telemetry [candidate] (8.709 ms) : 0, 8709
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (840.645 ms) : 0, 840645
BytebuddyAgent [candidate] (835.517 ms) : 0, 835517
GlobalTracer [baseline] (230.984 ms) : 0, 230984
GlobalTracer [candidate] (230.079 ms) : 0, 230079
IAST [baseline] (22.452 ms) : 0, 22452
IAST [candidate] (22.474 ms) : 0, 22474
AppSec [baseline] (55.965 ms) : 0, 55965
AppSec [candidate] (56.14 ms) : 0, 56140
Debugger [baseline] (4.124 ms) : 0, 4124
Debugger [candidate] (4.151 ms) : 0, 4151
Remote Config [baseline] (592.925 µs) : 0, 593
Remote Config [candidate] (605.201 µs) : 0, 605
Telemetry [baseline] (8.669 ms) : 0, 8669
Telemetry [candidate] (8.574 ms) : 0, 8574
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-03-25T14:16:09 2025-03-25T14:23:55
git_branch master mtoff/jvm-args
git_commit_date 1742904906 1742910867
git_commit_sha fe8895f 8837a21
release_version 1.48.0-SNAPSHOT~fe8895f92a 1.48.0-SNAPSHOT~8837a21358
start_time 2025-03-25T14:15:55 2025-03-25T14:23:41
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1742913034 1742913034
ci_job_id 863410390 863410390
ci_pipeline_id 59891561 59891561
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-5gca-jya-project-304-concurrent-0-r3h5s6jw 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-5gca-jya-project-304-concurrent-0-r3h5s6jw 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
variant iast iast

Summary

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

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:petclinic:profiling worse
[+36.126µs; +88.609µs] or [+2.385%; +5.851%]
unstable
[-655.609op/s; +427.689op/s] or [-21.307%; +13.900%]
1.577ms 2962.963op/s 1.515ms 3076.923op/s
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.48.0-SNAPSHOT~8837a21358, baseline=1.48.0-SNAPSHOT~fe8895f92a
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.368 ms) : 1348, 1388
.   : milestone, 1368,
appsec (1.744 ms) : 1720, 1768
.   : milestone, 1744,
appsec_no_iast (1.762 ms) : 1738, 1785
.   : milestone, 1762,
code_origins (1.696 ms) : 1669, 1722
.   : milestone, 1696,
iast (1.498 ms) : 1473, 1523
.   : milestone, 1498,
profiling (1.515 ms) : 1491, 1538
.   : milestone, 1515,
tracing (1.511 ms) : 1486, 1537
.   : milestone, 1511,
section candidate
no_agent (1.363 ms) : 1344, 1382
.   : milestone, 1363,
appsec (1.748 ms) : 1724, 1772
.   : milestone, 1748,
appsec_no_iast (1.738 ms) : 1715, 1762
.   : milestone, 1738,
code_origins (1.696 ms) : 1669, 1724
.   : milestone, 1696,
iast (1.52 ms) : 1497, 1544
.   : milestone, 1520,
profiling (1.577 ms) : 1552, 1602
.   : milestone, 1577,
tracing (1.521 ms) : 1497, 1545
.   : milestone, 1521,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.368 ms [1.348 ms, 1.388 ms] -
appsec 1.744 ms [1.72 ms, 1.768 ms] 376.013 µs (27.5%)
appsec_no_iast 1.762 ms [1.738 ms, 1.785 ms] 393.629 µs (28.8%)
code_origins 1.696 ms [1.669 ms, 1.722 ms] 327.687 µs (24.0%)
iast 1.498 ms [1.473 ms, 1.523 ms] 130.058 µs (9.5%)
profiling 1.515 ms [1.491 ms, 1.538 ms] 146.533 µs (10.7%)
tracing 1.511 ms [1.486 ms, 1.537 ms] 143.386 µs (10.5%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.363 ms [1.344 ms, 1.382 ms] -
appsec 1.748 ms [1.724 ms, 1.772 ms] 385.123 µs (28.3%)
appsec_no_iast 1.738 ms [1.715 ms, 1.762 ms] 375.574 µs (27.6%)
code_origins 1.696 ms [1.669 ms, 1.724 ms] 333.225 µs (24.4%)
iast 1.52 ms [1.497 ms, 1.544 ms] 157.43 µs (11.6%)
profiling 1.577 ms [1.552 ms, 1.602 ms] 213.953 µs (15.7%)
tracing 1.521 ms [1.497 ms, 1.545 ms] 158.352 µs (11.6%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.48.0-SNAPSHOT~8837a21358, baseline=1.48.0-SNAPSHOT~fe8895f92a
    dateFormat X
    axisFormat %s
section baseline
no_agent (380.184 µs) : 361, 400
.   : milestone, 380,
iast (511.561 µs) : 490, 533
.   : milestone, 512,
iast_FULL (737.467 µs) : 716, 759
.   : milestone, 737,
iast_GLOBAL (562.327 µs) : 541, 584
.   : milestone, 562,
iast_HARDCODED_SECRET_DISABLED (517.451 µs) : 495, 540
.   : milestone, 517,
iast_INACTIVE (474.104 µs) : 453, 496
.   : milestone, 474,
iast_TELEMETRY_OFF (505.337 µs) : 484, 527
.   : milestone, 505,
tracing (464.829 µs) : 444, 486
.   : milestone, 465,
section candidate
no_agent (393.692 µs) : 374, 414
.   : milestone, 394,
iast (517.676 µs) : 496, 539
.   : milestone, 518,
iast_FULL (733.842 µs) : 712, 756
.   : milestone, 734,
iast_GLOBAL (559.06 µs) : 537, 581
.   : milestone, 559,
iast_HARDCODED_SECRET_DISABLED (515.657 µs) : 494, 537
.   : milestone, 516,
iast_INACTIVE (472.953 µs) : 452, 494
.   : milestone, 473,
iast_TELEMETRY_OFF (505.955 µs) : 484, 528
.   : milestone, 506,
tracing (462.991 µs) : 442, 484
.   : milestone, 463,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 380.184 µs [360.673 µs, 399.694 µs] -
iast 511.561 µs [490.192 µs, 532.929 µs] 131.377 µs (34.6%)
iast_FULL 737.467 µs [715.585 µs, 759.349 µs] 357.283 µs (94.0%)
iast_GLOBAL 562.327 µs [540.578 µs, 584.075 µs] 182.143 µs (47.9%)
iast_HARDCODED_SECRET_DISABLED 517.451 µs [495.051 µs, 539.851 µs] 137.267 µs (36.1%)
iast_INACTIVE 474.104 µs [452.568 µs, 495.64 µs] 93.92 µs (24.7%)
iast_TELEMETRY_OFF 505.337 µs [483.762 µs, 526.912 µs] 125.153 µs (32.9%)
tracing 464.829 µs [443.893 µs, 485.765 µs] 84.645 µs (22.3%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 393.692 µs [373.808 µs, 413.577 µs] -
iast 517.676 µs [495.93 µs, 539.421 µs] 123.983 µs (31.5%)
iast_FULL 733.842 µs [712.081 µs, 755.603 µs] 340.15 µs (86.4%)
iast_GLOBAL 559.06 µs [537.198 µs, 580.921 µs] 165.367 µs (42.0%)
iast_HARDCODED_SECRET_DISABLED 515.657 µs [493.959 µs, 537.355 µs] 121.964 µs (31.0%)
iast_INACTIVE 472.953 µs [451.547 µs, 494.359 µs] 79.261 µs (20.1%)
iast_TELEMETRY_OFF 505.955 µs [484.021 µs, 527.89 µs] 112.263 µs (28.5%)
tracing 462.991 µs [441.605 µs, 484.378 µs] 69.299 µs (17.6%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mtoff/jvm-args
git_commit_date 1742904906 1742910867
git_commit_sha fe8895f 8837a21
release_version 1.48.0-SNAPSHOT~fe8895f92a 1.48.0-SNAPSHOT~8837a21358
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1742913514 1742913514
ci_job_id 863410391 863410391
ci_pipeline_id 59891561 59891561
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-jzzy7jrd-project-304-concurrent-3-ewab13z1 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-jzzy7jrd-project-304-concurrent-3-ewab13z1 6.8.0-1024-aws #26~22.04.1-Ubuntu SMP Wed Feb 19 06:54:57 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 biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.48.0-SNAPSHOT~8837a21358, baseline=1.48.0-SNAPSHOT~fe8895f92a
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.958 s) : 14958000, 14958000
.   : milestone, 14958000,
appsec (14.847 s) : 14847000, 14847000
.   : milestone, 14847000,
iast (18.866 s) : 18866000, 18866000
.   : milestone, 18866000,
iast_GLOBAL (17.737 s) : 17737000, 17737000
.   : milestone, 17737000,
profiling (14.89 s) : 14890000, 14890000
.   : milestone, 14890000,
tracing (14.987 s) : 14987000, 14987000
.   : milestone, 14987000,
section candidate
no_agent (15.434 s) : 15434000, 15434000
.   : milestone, 15434000,
appsec (15.022 s) : 15022000, 15022000
.   : milestone, 15022000,
iast (19.117 s) : 19117000, 19117000
.   : milestone, 19117000,
iast_GLOBAL (18.067 s) : 18067000, 18067000
.   : milestone, 18067000,
profiling (15.138 s) : 15138000, 15138000
.   : milestone, 15138000,
tracing (15.093 s) : 15093000, 15093000
.   : milestone, 15093000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.958 s [14.958 s, 14.958 s] -
appsec 14.847 s [14.847 s, 14.847 s] -111.0 ms (-0.7%)
iast 18.866 s [18.866 s, 18.866 s] 3.908 s (26.1%)
iast_GLOBAL 17.737 s [17.737 s, 17.737 s] 2.779 s (18.6%)
profiling 14.89 s [14.89 s, 14.89 s] -68.0 ms (-0.5%)
tracing 14.987 s [14.987 s, 14.987 s] 29.0 ms (0.2%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.434 s [15.434 s, 15.434 s] -
appsec 15.022 s [15.022 s, 15.022 s] -412.0 ms (-2.7%)
iast 19.117 s [19.117 s, 19.117 s] 3.683 s (23.9%)
iast_GLOBAL 18.067 s [18.067 s, 18.067 s] 2.633 s (17.1%)
profiling 15.138 s [15.138 s, 15.138 s] -296.0 ms (-1.9%)
tracing 15.093 s [15.093 s, 15.093 s] -341.0 ms (-2.2%)
Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.48.0-SNAPSHOT~8837a21358, baseline=1.48.0-SNAPSHOT~fe8895f92a
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.476 ms) : 1464, 1487
.   : milestone, 1476,
appsec (2.355 ms) : 2311, 2399
.   : milestone, 2355,
iast (2.131 ms) : 2075, 2187
.   : milestone, 2131,
iast_GLOBAL (2.177 ms) : 2120, 2233
.   : milestone, 2177,
profiling (1.992 ms) : 1946, 2037
.   : milestone, 1992,
tracing (1.97 ms) : 1927, 2013
.   : milestone, 1970,
section candidate
no_agent (1.475 ms) : 1464, 1487
.   : milestone, 1475,
appsec (2.349 ms) : 2305, 2393
.   : milestone, 2349,
iast (2.131 ms) : 2075, 2187
.   : milestone, 2131,
iast_GLOBAL (2.168 ms) : 2112, 2224
.   : milestone, 2168,
profiling (1.971 ms) : 1927, 2015
.   : milestone, 1971,
tracing (1.955 ms) : 1913, 1998
.   : milestone, 1955,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.476 ms [1.464 ms, 1.487 ms] -
appsec 2.355 ms [2.311 ms, 2.399 ms] 878.957 µs (59.6%)
iast 2.131 ms [2.075 ms, 2.187 ms] 655.493 µs (44.4%)
iast_GLOBAL 2.177 ms [2.12 ms, 2.233 ms] 701.242 µs (47.5%)
profiling 1.992 ms [1.946 ms, 2.037 ms] 516.051 µs (35.0%)
tracing 1.97 ms [1.927 ms, 2.013 ms] 494.278 µs (33.5%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.475 ms [1.464 ms, 1.487 ms] -
appsec 2.349 ms [2.305 ms, 2.393 ms] 873.711 µs (59.2%)
iast 2.131 ms [2.075 ms, 2.187 ms] 655.82 µs (44.4%)
iast_GLOBAL 2.168 ms [2.112 ms, 2.224 ms] 692.735 µs (47.0%)
profiling 1.971 ms [1.927 ms, 2.015 ms] 495.696 µs (33.6%)
tracing 1.955 ms [1.913 ms, 1.998 ms] 479.91 µs (32.5%)

@mtoffl01 mtoffl01 marked this pull request as ready for review March 17, 2025 14:33
@mtoffl01 mtoffl01 requested a review from a team as a code owner March 17, 2025 14:33
@mtoffl01 mtoffl01 requested a review from dougqh March 17, 2025 14:33
Copy link
Contributor

github-actions bot commented Mar 17, 2025

Hi! 👋 Thanks for your pull request! 🎉

To help us review it, please make sure to:

  • Add at least one type, and one component or instrumentation label to the pull request

If you need help, please check our contributing guidelines.

@mtoffl01 mtoffl01 marked this pull request as draft March 21, 2025 17:14
@mtoffl01
Copy link
Contributor Author

Moving this back to draft temporarily while I modify jvm args data structure to better support stable config.

@mtoffl01 mtoffl01 marked this pull request as ready for review March 24, 2025 19:36
mcculls added 4 commits March 25, 2025 12:33
* store args in static field, make available via static getter
* use list of strings as storage type to begin with
* prefer NIO methods to read content (defaults to UTF8)
* use try-with-resources to ensure reader is closed
* check file exists as a quick short-circuit
@mcculls mcculls added comp: core Tracer core tag: no release notes Changes to exclude from release notes type: refactoring labels Mar 25, 2025
@mcculls mcculls changed the title Create API for VM Arguments Provide access to VM arguments via shared CLIHelper utility Mar 25, 2025
@mcculls mcculls changed the title Provide access to VM arguments via shared CLIHelper utility Provide access to VM arguments via shared CLIHelper Mar 25, 2025
Copy link
Contributor

@mcculls mcculls left a comment

Choose a reason for hiding this comment

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

LGTM

@mtoffl01 mtoffl01 merged commit 05ccd9a into master Mar 25, 2025
272 of 273 checks passed
@mtoffl01 mtoffl01 deleted the mtoff/jvm-args branch March 25, 2025 17:06
@github-actions github-actions bot added this to the 1.48.0 milestone Mar 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp: core Tracer core tag: no release notes Changes to exclude from release notes type: refactoring
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants