Skip to content

Clean up the initial code origin set up instrumentation #8667

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

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

evanchooly
Copy link
Contributor

What Does This Do

Motivation

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@pr-commenter
Copy link

pr-commenter bot commented Apr 4, 2025

Debugger benchmarks

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
ci_job_date 1745868321 1745868690
end_time 2025-04-28T19:26:40 2025-04-28T19:32:48
git_branch master whiteGlove
git_commit_sha bd7a9c8 f36ecd2
start_time 2025-04-28T19:25:22 2025-04-28T19:31:31
See matching parameters
Baseline Candidate
ci_job_id 915810426 915810426
ci_pipeline_id 63547122 63547122
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
git_commit_date 1745866994 1745866994

Summary

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

See unchanged results
scenario Δ mean agg_http_req_duration_min Δ mean agg_http_req_duration_p50 Δ mean agg_http_req_duration_p75 Δ mean agg_http_req_duration_p99 Δ mean throughput
scenario:noprobe unstable
[-42.863µs; +47.885µs] or [-15.066%; +16.831%]
unstable
[-60052.973ns; +60919.128ns] or [-18.269%; +18.533%]
unstable
[-70738.609ns; +71300.770ns] or [-20.567%; +20.730%]
unstable
[-294.424µs; +697.839µs] or [-47.511%; +112.609%]
same
scenario:basic same same unstable
[-22.362µs; +16.794µs] or [-6.736%; +5.059%]
unstable
[-60.653µs; +83.452µs] or [-11.301%; +15.548%]
unstable
[-117.110op/s; +239.061op/s] or [-4.802%; +9.802%]
scenario:loop unsure
[-44.601µs; -13.995µs] or [-0.446%; -0.140%]
same same same same
Request duration reports for reports
gantt
    title reports - request duration [CI 0.99] : candidate=None, baseline=None
    dateFormat X
    axisFormat %s
section baseline
noprobe (328.71 µs) : 277, 380
.   : milestone, 329,
basic (321.19 µs) : 309, 333
.   : milestone, 321,
loop (10.151 ms) : 10113, 10190
.   : milestone, 10151,
section candidate
noprobe (329.143 µs) : 266, 392
.   : milestone, 329,
basic (316.503 µs) : 299, 334
.   : milestone, 317,
loop (10.118 ms) : 10089, 10147
.   : milestone, 10118,
Loading
  • baseline results
Scenario Request median duration [CI 0.99]
noprobe 328.71 µs [277.399 µs, 380.02 µs]
basic 321.19 µs [309.173 µs, 333.207 µs]
loop 10.151 ms [10.113 ms, 10.19 ms]
  • candidate results
Scenario Request median duration [CI 0.99]
noprobe 329.143 µs [265.824 µs, 392.462 µs]
basic 316.503 µs [298.781 µs, 334.225 µs]
loop 10.118 ms [10.089 ms, 10.147 ms]

@pr-commenter
Copy link

pr-commenter bot commented Apr 4, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master whiteGlove
git_commit_date 1745847396 1745866994
git_commit_sha bd7a9c8 f36ecd2
release_version 1.49.0-SNAPSHOT~bd7a9c8502 1.49.0-SNAPSHOT~f36ecd23d0
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1745870172 1745870172
ci_job_id 915810420 915810420
ci_pipeline_id 63547122 63547122
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-mlxdzss6-project-304-concurrent-0-rvg64g7u 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-mlxdzss6-project-304-concurrent-0-rvg64g7u 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.49.0-SNAPSHOT~f36ecd23d0, baseline=1.49.0-SNAPSHOT~bd7a9c8502

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.008 s) : 0, 1007986
Total [baseline] (10.512 s) : 0, 10512367
Agent [candidate] (1.006 s) : 0, 1005558
Total [candidate] (10.455 s) : 0, 10455223
section appsec
Agent [baseline] (1.154 s) : 0, 1153796
Total [baseline] (10.633 s) : 0, 10633254
Agent [candidate] (1.157 s) : 0, 1156652
Total [candidate] (10.652 s) : 0, 10652442
section iast
Agent [baseline] (1.134 s) : 0, 1133814
Total [baseline] (10.882 s) : 0, 10882199
Agent [candidate] (1.14 s) : 0, 1140079
Total [candidate] (10.874 s) : 0, 10873885
section profiling
Agent [baseline] (1.251 s) : 0, 1250594
Total [baseline] (10.817 s) : 0, 10817417
Agent [candidate] (1.254 s) : 0, 1253934
Total [candidate] (10.733 s) : 0, 10732916
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.008 s -
Agent appsec 1.154 s 145.81 ms (14.5%)
Agent iast 1.134 s 125.828 ms (12.5%)
Agent profiling 1.251 s 242.607 ms (24.1%)
Total tracing 10.512 s -
Total appsec 10.633 s 120.887 ms (1.1%)
Total iast 10.882 s 369.832 ms (3.5%)
Total profiling 10.817 s 305.049 ms (2.9%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.006 s -
Agent appsec 1.157 s 151.095 ms (15.0%)
Agent iast 1.14 s 134.521 ms (13.4%)
Agent profiling 1.254 s 248.376 ms (24.7%)
Total tracing 10.455 s -
Total appsec 10.652 s 197.22 ms (1.9%)
Total iast 10.874 s 418.662 ms (4.0%)
Total profiling 10.733 s 277.694 ms (2.7%)
gantt
    title petclinic - break down per module: candidate=1.49.0-SNAPSHOT~f36ecd23d0, baseline=1.49.0-SNAPSHOT~bd7a9c8502

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (670.88 ms) : 0, 670880
BytebuddyAgent [candidate] (669.616 ms) : 0, 669616
GlobalTracer [baseline] (240.074 ms) : 0, 240074
GlobalTracer [candidate] (239.818 ms) : 0, 239818
AppSec [baseline] (54.637 ms) : 0, 54637
AppSec [candidate] (54.533 ms) : 0, 54533
Debugger [baseline] (6.116 ms) : 0, 6116
Debugger [candidate] (6.131 ms) : 0, 6131
Remote Config [baseline] (716.12 µs) : 0, 716
Remote Config [candidate] (716.772 µs) : 0, 717
Telemetry [baseline] (12.139 ms) : 0, 12139
Telemetry [candidate] (11.484 ms) : 0, 11484
section appsec
BytebuddyAgent [baseline] (691.149 ms) : 0, 691149
BytebuddyAgent [candidate] (693.736 ms) : 0, 693736
GlobalTracer [baseline] (237.287 ms) : 0, 237287
GlobalTracer [candidate] (238.013 ms) : 0, 238013
AppSec [baseline] (176.651 ms) : 0, 176651
AppSec [candidate] (176.557 ms) : 0, 176557
Debugger [baseline] (5.917 ms) : 0, 5917
Debugger [candidate] (5.855 ms) : 0, 5855
Remote Config [baseline] (641.51 µs) : 0, 642
Remote Config [candidate] (631.095 µs) : 0, 631
Telemetry [baseline] (7.862 ms) : 0, 7862
Telemetry [candidate] (7.416 ms) : 0, 7416
IAST [baseline] (21.752 ms) : 0, 21752
IAST [candidate] (21.961 ms) : 0, 21961
section iast
BytebuddyAgent [baseline] (787.699 ms) : 0, 787699
BytebuddyAgent [candidate] (791.905 ms) : 0, 791905
GlobalTracer [baseline] (229.399 ms) : 0, 229399
GlobalTracer [candidate] (230.848 ms) : 0, 230848
AppSec [baseline] (56.408 ms) : 0, 56408
AppSec [candidate] (56.511 ms) : 0, 56511
Debugger [baseline] (5.85 ms) : 0, 5850
Debugger [candidate] (5.912 ms) : 0, 5912
Remote Config [baseline] (575.314 µs) : 0, 575
Remote Config [candidate] (593.588 µs) : 0, 594
Telemetry [baseline] (7.891 ms) : 0, 7891
Telemetry [candidate] (7.885 ms) : 0, 7885
IAST [baseline] (22.613 ms) : 0, 22613
IAST [candidate] (22.957 ms) : 0, 22957
section profiling
BytebuddyAgent [baseline] (661.63 ms) : 0, 661630
BytebuddyAgent [candidate] (663.062 ms) : 0, 663062
GlobalTracer [baseline] (374.014 ms) : 0, 374014
GlobalTracer [candidate] (375.464 ms) : 0, 375464
AppSec [baseline] (53.978 ms) : 0, 53978
AppSec [candidate] (53.124 ms) : 0, 53124
Debugger [baseline] (6.143 ms) : 0, 6143
Debugger [candidate] (6.07 ms) : 0, 6070
Remote Config [baseline] (653.338 µs) : 0, 653
Remote Config [candidate] (643.161 µs) : 0, 643
Telemetry [baseline] (8.19 ms) : 0, 8190
Telemetry [candidate] (8.096 ms) : 0, 8096
ProfilingAgent [baseline] (95.792 ms) : 0, 95792
ProfilingAgent [candidate] (97.327 ms) : 0, 97327
Profiling [baseline] (95.815 ms) : 0, 95815
Profiling [candidate] (97.351 ms) : 0, 97351
Loading
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.49.0-SNAPSHOT~f36ecd23d0, baseline=1.49.0-SNAPSHOT~bd7a9c8502

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.022 s) : 0, 1022431
Total [baseline] (8.675 s) : 0, 8675321
Agent [candidate] (1.008 s) : 0, 1007634
Total [candidate] (8.694 s) : 0, 8694360
section iast
Agent [baseline] (1.134 s) : 0, 1133638
Total [baseline] (9.18 s) : 0, 9180155
Agent [candidate] (1.136 s) : 0, 1136197
Total [candidate] (9.184 s) : 0, 9183716
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.135 s) : 0, 1135058
Total [baseline] (9.163 s) : 0, 9163293
Agent [candidate] (1.138 s) : 0, 1138063
Total [candidate] (9.184 s) : 0, 9184001
section iast_TELEMETRY_OFF
Agent [baseline] (1.133 s) : 0, 1132901
Total [baseline] (9.17 s) : 0, 9169911
Agent [candidate] (1.136 s) : 0, 1136493
Total [candidate] (9.16 s) : 0, 9159522
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.022 s -
Agent iast 1.134 s 111.207 ms (10.9%)
Agent iast_HARDCODED_SECRET_DISABLED 1.135 s 112.627 ms (11.0%)
Agent iast_TELEMETRY_OFF 1.133 s 110.47 ms (10.8%)
Total tracing 8.675 s -
Total iast 9.18 s 504.834 ms (5.8%)
Total iast_HARDCODED_SECRET_DISABLED 9.163 s 487.972 ms (5.6%)
Total iast_TELEMETRY_OFF 9.17 s 494.589 ms (5.7%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.008 s -
Agent iast 1.136 s 128.563 ms (12.8%)
Agent iast_HARDCODED_SECRET_DISABLED 1.138 s 130.429 ms (12.9%)
Agent iast_TELEMETRY_OFF 1.136 s 128.859 ms (12.8%)
Total tracing 8.694 s -
Total iast 9.184 s 489.356 ms (5.6%)
Total iast_HARDCODED_SECRET_DISABLED 9.184 s 489.641 ms (5.6%)
Total iast_TELEMETRY_OFF 9.16 s 465.162 ms (5.4%)
gantt
    title insecure-bank - break down per module: candidate=1.49.0-SNAPSHOT~f36ecd23d0, baseline=1.49.0-SNAPSHOT~bd7a9c8502

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (680.886 ms) : 0, 680886
BytebuddyAgent [candidate] (672.1 ms) : 0, 672100
GlobalTracer [baseline] (242.962 ms) : 0, 242962
GlobalTracer [candidate] (240.423 ms) : 0, 240423
AppSec [baseline] (55.428 ms) : 0, 55428
AppSec [candidate] (54.825 ms) : 0, 54825
Debugger [baseline] (6.979 ms) : 0, 6979
Debugger [candidate] (6.846 ms) : 0, 6846
Remote Config [baseline] (730.798 µs) : 0, 731
Remote Config [candidate] (713.449 µs) : 0, 713
Telemetry [baseline] (11.583 ms) : 0, 11583
Telemetry [candidate] (9.268 ms) : 0, 9268
section iast
BytebuddyAgent [baseline] (787.956 ms) : 0, 787956
BytebuddyAgent [candidate] (790.081 ms) : 0, 790081
GlobalTracer [baseline] (229.253 ms) : 0, 229253
GlobalTracer [candidate] (229.918 ms) : 0, 229918
IAST [baseline] (22.72 ms) : 0, 22720
IAST [candidate] (22.611 ms) : 0, 22611
AppSec [baseline] (56.063 ms) : 0, 56063
AppSec [candidate] (55.896 ms) : 0, 55896
Debugger [baseline] (5.844 ms) : 0, 5844
Debugger [candidate] (5.827 ms) : 0, 5827
Remote Config [baseline] (586.281 µs) : 0, 586
Remote Config [candidate] (580.932 µs) : 0, 581
Telemetry [baseline] (7.831 ms) : 0, 7831
Telemetry [candidate] (7.855 ms) : 0, 7855
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (788.508 ms) : 0, 788508
BytebuddyAgent [candidate] (790.539 ms) : 0, 790539
GlobalTracer [baseline] (229.722 ms) : 0, 229722
GlobalTracer [candidate] (230.343 ms) : 0, 230343
IAST [baseline] (22.754 ms) : 0, 22754
IAST [candidate] (22.859 ms) : 0, 22859
AppSec [baseline] (56.342 ms) : 0, 56342
AppSec [candidate] (56.368 ms) : 0, 56368
Debugger [baseline] (5.879 ms) : 0, 5879
Debugger [candidate] (5.905 ms) : 0, 5905
Remote Config [baseline] (593.589 µs) : 0, 594
Remote Config [candidate] (651.001 µs) : 0, 651
Telemetry [baseline] (7.887 ms) : 0, 7887
Telemetry [candidate] (7.902 ms) : 0, 7902
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (786.667 ms) : 0, 786667
BytebuddyAgent [candidate] (789.148 ms) : 0, 789148
GlobalTracer [baseline] (229.865 ms) : 0, 229865
GlobalTracer [candidate] (230.972 ms) : 0, 230972
IAST [baseline] (22.374 ms) : 0, 22374
IAST [candidate] (22.327 ms) : 0, 22327
AppSec [baseline] (56.397 ms) : 0, 56397
AppSec [candidate] (56.363 ms) : 0, 56363
Debugger [baseline] (5.912 ms) : 0, 5912
Debugger [candidate] (5.885 ms) : 0, 5885
Remote Config [baseline] (608.651 µs) : 0, 609
Remote Config [candidate] (599.21 µs) : 0, 599
Telemetry [baseline] (7.766 ms) : 0, 7766
Telemetry [candidate] (7.746 ms) : 0, 7746
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2025-04-28T19:26:36 2025-04-28T19:34:19
git_branch master whiteGlove
git_commit_date 1745847396 1745866994
git_commit_sha bd7a9c8 f36ecd2
release_version 1.49.0-SNAPSHOT~bd7a9c8502 1.49.0-SNAPSHOT~f36ecd23d0
start_time 2025-04-28T19:26:22 2025-04-28T19:34:05
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1745869256 1745869256
ci_job_id 915810421 915810421
ci_pipeline_id 63547122 63547122
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-mlxdzss6-project-304-concurrent-1-6i9bknsz 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-mlxdzss6-project-304-concurrent-1-6i9bknsz 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 1 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 18 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 better
[-85.215µs; -32.483µs] or [-5.417%; -2.065%]
unstable
[-449.466op/s; +677.386op/s] or [-15.169%; +22.862%]
1.514ms 3076.923op/s 1.573ms 2962.963op/s
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~f36ecd23d0, baseline=1.49.0-SNAPSHOT~bd7a9c8502
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.358 ms) : 1338, 1379
.   : milestone, 1358,
appsec (1.725 ms) : 1701, 1749
.   : milestone, 1725,
appsec_no_iast (1.727 ms) : 1704, 1750
.   : milestone, 1727,
code_origins (1.661 ms) : 1635, 1687
.   : milestone, 1661,
iast (1.513 ms) : 1488, 1537
.   : milestone, 1513,
profiling (1.573 ms) : 1548, 1598
.   : milestone, 1573,
tracing (1.497 ms) : 1473, 1521
.   : milestone, 1497,
section candidate
no_agent (1.36 ms) : 1341, 1379
.   : milestone, 1360,
appsec (1.726 ms) : 1702, 1750
.   : milestone, 1726,
appsec_no_iast (1.73 ms) : 1707, 1753
.   : milestone, 1730,
code_origins (1.67 ms) : 1643, 1696
.   : milestone, 1670,
iast (1.513 ms) : 1488, 1537
.   : milestone, 1513,
profiling (1.514 ms) : 1491, 1538
.   : milestone, 1514,
tracing (1.48 ms) : 1455, 1506
.   : milestone, 1480,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.358 ms [1.338 ms, 1.379 ms] -
appsec 1.725 ms [1.701 ms, 1.749 ms] 367.049 µs (27.0%)
appsec_no_iast 1.727 ms [1.704 ms, 1.75 ms] 369.075 µs (27.2%)
code_origins 1.661 ms [1.635 ms, 1.687 ms] 303.231 µs (22.3%)
iast 1.513 ms [1.488 ms, 1.537 ms] 154.476 µs (11.4%)
profiling 1.573 ms [1.548 ms, 1.598 ms] 214.921 µs (15.8%)
tracing 1.497 ms [1.473 ms, 1.521 ms] 139.191 µs (10.2%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.36 ms [1.341 ms, 1.379 ms] -
appsec 1.726 ms [1.702 ms, 1.75 ms] 366.089 µs (26.9%)
appsec_no_iast 1.73 ms [1.707 ms, 1.753 ms] 369.979 µs (27.2%)
code_origins 1.67 ms [1.643 ms, 1.696 ms] 309.536 µs (22.8%)
iast 1.513 ms [1.488 ms, 1.537 ms] 152.676 µs (11.2%)
profiling 1.514 ms [1.491 ms, 1.538 ms] 154.138 µs (11.3%)
tracing 1.48 ms [1.455 ms, 1.506 ms] 120.414 µs (8.9%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.49.0-SNAPSHOT~f36ecd23d0, baseline=1.49.0-SNAPSHOT~bd7a9c8502
    dateFormat X
    axisFormat %s
section baseline
no_agent (378.732 µs) : 358, 399
.   : milestone, 379,
iast (524.009 µs) : 501, 547
.   : milestone, 524,
iast_FULL (733.803 µs) : 711, 757
.   : milestone, 734,
iast_GLOBAL (561.459 µs) : 538, 585
.   : milestone, 561,
iast_HARDCODED_SECRET_DISABLED (508.583 µs) : 486, 531
.   : milestone, 509,
iast_INACTIVE (463.163 µs) : 441, 485
.   : milestone, 463,
iast_TELEMETRY_OFF (504.309 µs) : 482, 527
.   : milestone, 504,
tracing (459.842 µs) : 438, 482
.   : milestone, 460,
section candidate
no_agent (376.021 µs) : 356, 396
.   : milestone, 376,
iast (520.867 µs) : 498, 544
.   : milestone, 521,
iast_FULL (727.242 µs) : 704, 751
.   : milestone, 727,
iast_GLOBAL (576.354 µs) : 552, 601
.   : milestone, 576,
iast_HARDCODED_SECRET_DISABLED (521.432 µs) : 499, 544
.   : milestone, 521,
iast_INACTIVE (468.703 µs) : 446, 491
.   : milestone, 469,
iast_TELEMETRY_OFF (497.875 µs) : 476, 520
.   : milestone, 498,
tracing (456.2 µs) : 434, 478
.   : milestone, 456,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 378.732 µs [358.171 µs, 399.292 µs] -
iast 524.009 µs [500.857 µs, 547.161 µs] 145.278 µs (38.4%)
iast_FULL 733.803 µs [710.639 µs, 756.968 µs] 355.072 µs (93.8%)
iast_GLOBAL 561.459 µs [538.129 µs, 584.788 µs] 182.727 µs (48.2%)
iast_HARDCODED_SECRET_DISABLED 508.583 µs [485.886 µs, 531.28 µs] 129.852 µs (34.3%)
iast_INACTIVE 463.163 µs [441.135 µs, 485.191 µs] 84.432 µs (22.3%)
iast_TELEMETRY_OFF 504.309 µs [481.645 µs, 526.974 µs] 125.578 µs (33.2%)
tracing 459.842 µs [438.14 µs, 481.545 µs] 81.111 µs (21.4%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 376.021 µs [356.4 µs, 395.642 µs] -
iast 520.867 µs [498.024 µs, 543.71 µs] 144.846 µs (38.5%)
iast_FULL 727.242 µs [703.902 µs, 750.582 µs] 351.221 µs (93.4%)
iast_GLOBAL 576.354 µs [551.74 µs, 600.967 µs] 200.332 µs (53.3%)
iast_HARDCODED_SECRET_DISABLED 521.432 µs [498.776 µs, 544.088 µs] 145.411 µs (38.7%)
iast_INACTIVE 468.703 µs [446.191 µs, 491.215 µs] 92.682 µs (24.6%)
iast_TELEMETRY_OFF 497.875 µs [475.592 µs, 520.158 µs] 121.854 µs (32.4%)
tracing 456.2 µs [434.183 µs, 478.216 µs] 80.179 µs (21.3%)

Dacapo

@evanchooly evanchooly force-pushed the whiteGlove branch 3 times, most recently from 6c689de to 7a1aa1c Compare April 16, 2025 12:51
@evanchooly evanchooly marked this pull request as ready for review April 21, 2025 16:17
@evanchooly evanchooly requested review from a team as code owners April 21, 2025 16:17
@evanchooly evanchooly requested review from jpbempel and removed request for a team April 21, 2025 16:17
Copy link
Contributor

github-actions bot commented Apr 21, 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.

@evanchooly evanchooly changed the title POC of cleaning up the initial code origin set up instrumentation Clean up the initial code origin set up instrumentation Apr 21, 2025
@evanchooly evanchooly added tag: no release notes Changes to exclude from release notes comp: debugger Dynamic Instrumentation inst: java Core Java language instrumentation type: enhancement labels Apr 21, 2025
@evanchooly evanchooly force-pushed the whiteGlove branch 4 times, most recently from 1435d79 to 6c654a1 Compare April 23, 2025 14:45
AbstractInsnNode next = iterator.next();
if (buildDescription(next).equals(MARKER)) {
insertionPoint = next.getPrevious();
while (buildDescription(next = iterator.next()).equals(CAPTURE)) {}
Copy link
Member

Choose a reason for hiding this comment

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

I think it should loop while the current instruction is NOT equals to CAPTURE, no ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

yup. pushed the fix earlier. that ! is so easy to miss. 😄

AbstractInsnNode next = iterator.next();
if (buildDescription(next).equals(MARKER)) {
insertionPoint = next.getPrevious();
while (!buildDescription(next = iterator.next()).equals(CAPTURE)) {}
Copy link
Member

Choose a reason for hiding this comment

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

what happen if we reach the end of the instruction list (no CAPTURE detected)?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

all the instructions get copied over and insertionPoint remains null which would result in the bytecode getting prepended to the method via findInsertionPoint()

Copy link
Contributor Author

Choose a reason for hiding this comment

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

this actually happens a fair bit in CodeOriginTest with the way we're defining many of those probe locations.

Copy link
Member

Choose a reason for hiding this comment

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

my point was, we are calling iterator.next() in a loop without checking iterator.hasNext()

methodNode.instructions = list;
return insertionPoint;
} catch (Exception e) {
return null;
Copy link
Member

Choose a reason for hiding this comment

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

would log something in debug level

@evanchooly evanchooly requested a review from jpbempel April 28, 2025 17:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp: debugger Dynamic Instrumentation inst: java Core Java language instrumentation tag: no release notes Changes to exclude from release notes type: enhancement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants