Skip to content

Migrating all HttpServer Instrumentations to use Context and ContextScope #8820

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

Draft
wants to merge 16 commits into
base: master
Choose a base branch
from

Conversation

mhlidd
Copy link
Contributor

@mhlidd mhlidd commented May 13, 2025

What Does This Do

Motivation

Additional Notes

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@pr-commenter
Copy link

pr-commenter bot commented May 13, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mhlidd/migrate_http_server_instrumentations
git_commit_date 1747229243 1747232387
git_commit_sha 7c80dbe 44188ec
release_version 1.50.0-SNAPSHOT~7c80dbede3 1.50.0-SNAPSHOT~44188ec4e2
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1747234735 1747234735
ci_job_id 938009584 938009584
ci_pipeline_id 65076728 65076728
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-n8gyx9gk-project-304-concurrent-0-81rxvl96 6.8.0-1028-aws #30~22.04.1-Ubuntu SMP Sun Apr 20 06:03:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-n8gyx9gk-project-304-concurrent-0-81rxvl96 6.8.0-1028-aws #30~22.04.1-Ubuntu SMP Sun Apr 20 06:03:30 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 57 metrics, 14 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.50.0-SNAPSHOT~44188ec4e2, baseline=1.50.0-SNAPSHOT~7c80dbede3

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.026 s) : 0, 1026188
Total [baseline] (8.67 s) : 0, 8670082
Agent [candidate] (1.032 s) : 0, 1031576
Total [candidate] (8.706 s) : 0, 8706370
section iast
Agent [baseline] (1.149 s) : 0, 1148753
Total [baseline] (9.233 s) : 0, 9233173
Agent [candidate] (1.152 s) : 0, 1151658
Total [candidate] (9.23 s) : 0, 9230489
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.15 s) : 0, 1149733
Total [baseline] (9.193 s) : 0, 9192935
Agent [candidate] (1.155 s) : 0, 1155270
Total [candidate] (9.256 s) : 0, 9255932
section iast_TELEMETRY_OFF
Agent [baseline] (1.146 s) : 0, 1145950
Total [baseline] (9.215 s) : 0, 9215479
Agent [candidate] (1.147 s) : 0, 1146767
Total [candidate] (9.24 s) : 0, 9239854
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.026 s -
Agent iast 1.149 s 122.565 ms (11.9%)
Agent iast_HARDCODED_SECRET_DISABLED 1.15 s 123.546 ms (12.0%)
Agent iast_TELEMETRY_OFF 1.146 s 119.762 ms (11.7%)
Total tracing 8.67 s -
Total iast 9.233 s 563.091 ms (6.5%)
Total iast_HARDCODED_SECRET_DISABLED 9.193 s 522.853 ms (6.0%)
Total iast_TELEMETRY_OFF 9.215 s 545.396 ms (6.3%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.032 s -
Agent iast 1.152 s 120.082 ms (11.6%)
Agent iast_HARDCODED_SECRET_DISABLED 1.155 s 123.694 ms (12.0%)
Agent iast_TELEMETRY_OFF 1.147 s 115.191 ms (11.2%)
Total tracing 8.706 s -
Total iast 9.23 s 524.119 ms (6.0%)
Total iast_HARDCODED_SECRET_DISABLED 9.256 s 549.562 ms (6.3%)
Total iast_TELEMETRY_OFF 9.24 s 533.484 ms (6.1%)
gantt
    title insecure-bank - break down per module: candidate=1.50.0-SNAPSHOT~44188ec4e2, baseline=1.50.0-SNAPSHOT~7c80dbede3

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (685.709 ms) : 0, 685709
BytebuddyAgent [candidate] (691.309 ms) : 0, 691309
GlobalTracer [baseline] (240.936 ms) : 0, 240936
GlobalTracer [candidate] (243.024 ms) : 0, 243024
AppSec [baseline] (56.293 ms) : 0, 56293
AppSec [candidate] (54.975 ms) : 0, 54975
Debugger [baseline] (8.349 ms) : 0, 8349
Debugger [candidate] (7.74 ms) : 0, 7740
Remote Config [baseline] (697.992 µs) : 0, 698
Remote Config [candidate] (724.786 µs) : 0, 725
Telemetry [baseline] (10.562 ms) : 0, 10562
Telemetry [candidate] (9.93 ms) : 0, 9930
section iast
BytebuddyAgent [baseline] (802.033 ms) : 0, 802033
BytebuddyAgent [candidate] (803.841 ms) : 0, 803841
GlobalTracer [baseline] (230.446 ms) : 0, 230446
GlobalTracer [candidate] (231.346 ms) : 0, 231346
IAST [baseline] (28.247 ms) : 0, 28247
IAST [candidate] (29.098 ms) : 0, 29098
AppSec [baseline] (49.443 ms) : 0, 49443
AppSec [candidate] (49.439 ms) : 0, 49439
Debugger [baseline] (5.852 ms) : 0, 5852
Debugger [candidate] (5.867 ms) : 0, 5867
Remote Config [baseline] (608.281 µs) : 0, 608
Remote Config [candidate] (595.441 µs) : 0, 595
Telemetry [baseline] (7.875 ms) : 0, 7875
Telemetry [candidate] (7.9 ms) : 0, 7900
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (802.153 ms) : 0, 802153
BytebuddyAgent [candidate] (806.171 ms) : 0, 806171
GlobalTracer [baseline] (230.839 ms) : 0, 230839
GlobalTracer [candidate] (231.806 ms) : 0, 231806
IAST [baseline] (28.316 ms) : 0, 28316
IAST [candidate] (29.483 ms) : 0, 29483
AppSec [baseline] (50.462 ms) : 0, 50462
AppSec [candidate] (49.594 ms) : 0, 49594
Debugger [baseline] (5.914 ms) : 0, 5914
Debugger [candidate] (5.91 ms) : 0, 5910
Remote Config [baseline] (593.293 µs) : 0, 593
Remote Config [candidate] (619.965 µs) : 0, 620
Telemetry [baseline] (7.898 ms) : 0, 7898
Telemetry [candidate] (8.019 ms) : 0, 8019
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (799.146 ms) : 0, 799146
BytebuddyAgent [candidate] (799.685 ms) : 0, 799685
GlobalTracer [baseline] (230.974 ms) : 0, 230974
GlobalTracer [candidate] (231.32 ms) : 0, 231320
IAST [baseline] (22.233 ms) : 0, 22233
IAST [candidate] (24.549 ms) : 0, 24549
AppSec [baseline] (55.803 ms) : 0, 55803
AppSec [candidate] (53.276 ms) : 0, 53276
Debugger [baseline] (5.91 ms) : 0, 5910
Debugger [candidate] (5.96 ms) : 0, 5960
Remote Config [baseline] (589.882 µs) : 0, 590
Remote Config [candidate] (612.085 µs) : 0, 612
Telemetry [baseline] (7.717 ms) : 0, 7717
Telemetry [candidate] (7.814 ms) : 0, 7814
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.50.0-SNAPSHOT~44188ec4e2, baseline=1.50.0-SNAPSHOT~7c80dbede3

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.019 s) : 0, 1019276
Total [baseline] (10.526 s) : 0, 10526324
Agent [candidate] (1.021 s) : 0, 1020689
Total [candidate] (10.504 s) : 0, 10503936
section appsec
Agent [baseline] (1.162 s) : 0, 1162442
Total [baseline] (10.722 s) : 0, 10722305
Agent [candidate] (1.168 s) : 0, 1168153
Total [candidate] (10.684 s) : 0, 10683907
section iast
Agent [baseline] (1.15 s) : 0, 1149669
Total [baseline] (10.94 s) : 0, 10939556
Agent [candidate] (1.148 s) : 0, 1147957
Total [candidate] (10.919 s) : 0, 10918908
section profiling
Agent [baseline] (1.277 s) : 0, 1276707
Total [baseline] (10.867 s) : 0, 10866637
Agent [candidate] (1.279 s) : 0, 1278637
Total [candidate] (10.827 s) : 0, 10827209
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.019 s -
Agent appsec 1.162 s 143.166 ms (14.0%)
Agent iast 1.15 s 130.393 ms (12.8%)
Agent profiling 1.277 s 257.431 ms (25.3%)
Total tracing 10.526 s -
Total appsec 10.722 s 195.981 ms (1.9%)
Total iast 10.94 s 413.232 ms (3.9%)
Total profiling 10.867 s 340.312 ms (3.2%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.021 s -
Agent appsec 1.168 s 147.464 ms (14.4%)
Agent iast 1.148 s 127.269 ms (12.5%)
Agent profiling 1.279 s 257.949 ms (25.3%)
Total tracing 10.504 s -
Total appsec 10.684 s 179.971 ms (1.7%)
Total iast 10.919 s 414.972 ms (4.0%)
Total profiling 10.827 s 323.273 ms (3.1%)
gantt
    title petclinic - break down per module: candidate=1.50.0-SNAPSHOT~44188ec4e2, baseline=1.50.0-SNAPSHOT~7c80dbede3

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (681.508 ms) : 0, 681508
BytebuddyAgent [candidate] (682.87 ms) : 0, 682870
GlobalTracer [baseline] (240.415 ms) : 0, 240415
GlobalTracer [candidate] (240.742 ms) : 0, 240742
AppSec [baseline] (54.444 ms) : 0, 54444
AppSec [candidate] (54.36 ms) : 0, 54360
Debugger [baseline] (8.277 ms) : 0, 8277
Debugger [candidate] (7.597 ms) : 0, 7597
Remote Config [baseline] (709.128 µs) : 0, 709
Remote Config [candidate] (717.876 µs) : 0, 718
Telemetry [baseline] (10.301 ms) : 0, 10301
Telemetry [candidate] (10.698 ms) : 0, 10698
section appsec
BytebuddyAgent [baseline] (701.299 ms) : 0, 701299
BytebuddyAgent [candidate] (705.348 ms) : 0, 705348
GlobalTracer [baseline] (236.551 ms) : 0, 236551
GlobalTracer [candidate] (238.241 ms) : 0, 238241
AppSec [baseline] (175.801 ms) : 0, 175801
AppSec [candidate] (176.0 ms) : 0, 176000
Debugger [baseline] (5.952 ms) : 0, 5952
Debugger [candidate] (5.979 ms) : 0, 5979
Remote Config [baseline] (623.212 µs) : 0, 623
Remote Config [candidate] (622.584 µs) : 0, 623
Telemetry [baseline] (7.731 ms) : 0, 7731
Telemetry [candidate] (7.443 ms) : 0, 7443
IAST [baseline] (21.628 ms) : 0, 21628
IAST [candidate] (21.671 ms) : 0, 21671
section iast
BytebuddyAgent [baseline] (802.479 ms) : 0, 802479
BytebuddyAgent [candidate] (801.197 ms) : 0, 801197
GlobalTracer [baseline] (231.245 ms) : 0, 231245
GlobalTracer [candidate] (230.587 ms) : 0, 230587
AppSec [baseline] (50.063 ms) : 0, 50063
AppSec [candidate] (50.236 ms) : 0, 50236
Debugger [baseline] (5.79 ms) : 0, 5790
Debugger [candidate] (5.875 ms) : 0, 5875
Remote Config [baseline] (575.977 µs) : 0, 576
Remote Config [candidate] (599.24 µs) : 0, 599
Telemetry [baseline] (7.748 ms) : 0, 7748
Telemetry [candidate] (7.856 ms) : 0, 7856
IAST [baseline] (28.289 ms) : 0, 28289
IAST [candidate] (28.113 ms) : 0, 28113
section profiling
ProfilingAgent [baseline] (102.759 ms) : 0, 102759
ProfilingAgent [candidate] (102.714 ms) : 0, 102714
BytebuddyAgent [baseline] (672.139 ms) : 0, 672139
BytebuddyAgent [candidate] (672.954 ms) : 0, 672954
GlobalTracer [baseline] (374.552 ms) : 0, 374552
GlobalTracer [candidate] (375.166 ms) : 0, 375166
AppSec [baseline] (61.373 ms) : 0, 61373
AppSec [candidate] (61.81 ms) : 0, 61810
Debugger [baseline] (6.318 ms) : 0, 6318
Debugger [candidate] (6.251 ms) : 0, 6251
Remote Config [baseline] (653.186 µs) : 0, 653
Remote Config [candidate] (646.497 µs) : 0, 646
Telemetry [baseline] (8.197 ms) : 0, 8197
Telemetry [candidate] (8.195 ms) : 0, 8195
Profiling [baseline] (102.783 ms) : 0, 102783
Profiling [candidate] (102.738 ms) : 0, 102738
Loading

Load

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mhlidd/migrate_http_server_instrumentations
git_commit_date 1747229243 1747232387
git_commit_sha 7c80dbe 44188ec
release_version 1.50.0-SNAPSHOT~7c80dbede3 1.50.0-SNAPSHOT~44188ec4e2
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1747234405 1747234405
ci_job_id 938009589 938009589
ci_pipeline_id 65076728 65076728
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-5esuzn9-project-304-concurrent-0-1dskrocc 6.8.0-1028-aws #30~22.04.1-Ubuntu SMP Sun Apr 20 06:03:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-5esuzn9-project-304-concurrent-0-1dskrocc 6.8.0-1028-aws #30~22.04.1-Ubuntu SMP Sun Apr 20 06:03:30 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.50.0-SNAPSHOT~44188ec4e2, baseline=1.50.0-SNAPSHOT~7c80dbede3
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.977 s) : 14977000, 14977000
.   : milestone, 14977000,
appsec (14.979 s) : 14979000, 14979000
.   : milestone, 14979000,
iast (18.474 s) : 18474000, 18474000
.   : milestone, 18474000,
iast_GLOBAL (18.108 s) : 18108000, 18108000
.   : milestone, 18108000,
profiling (15.061 s) : 15061000, 15061000
.   : milestone, 15061000,
tracing (15.065 s) : 15065000, 15065000
.   : milestone, 15065000,
section candidate
no_agent (15.241 s) : 15241000, 15241000
.   : milestone, 15241000,
appsec (15.105 s) : 15105000, 15105000
.   : milestone, 15105000,
iast (18.876 s) : 18876000, 18876000
.   : milestone, 18876000,
iast_GLOBAL (17.975 s) : 17975000, 17975000
.   : milestone, 17975000,
profiling (15.001 s) : 15001000, 15001000
.   : milestone, 15001000,
tracing (15.006 s) : 15006000, 15006000
.   : milestone, 15006000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.977 s [14.977 s, 14.977 s] -
appsec 14.979 s [14.979 s, 14.979 s] 2.0 ms (0.0%)
iast 18.474 s [18.474 s, 18.474 s] 3.497 s (23.3%)
iast_GLOBAL 18.108 s [18.108 s, 18.108 s] 3.131 s (20.9%)
profiling 15.061 s [15.061 s, 15.061 s] 84.0 ms (0.6%)
tracing 15.065 s [15.065 s, 15.065 s] 88.0 ms (0.6%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.241 s [15.241 s, 15.241 s] -
appsec 15.105 s [15.105 s, 15.105 s] -136.0 ms (-0.9%)
iast 18.876 s [18.876 s, 18.876 s] 3.635 s (23.9%)
iast_GLOBAL 17.975 s [17.975 s, 17.975 s] 2.734 s (17.9%)
profiling 15.001 s [15.001 s, 15.001 s] -240.0 ms (-1.6%)
tracing 15.006 s [15.006 s, 15.006 s] -235.0 ms (-1.5%)
Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~44188ec4e2, baseline=1.50.0-SNAPSHOT~7c80dbede3
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.486 ms) : 1475, 1498
.   : milestone, 1486,
appsec (2.419 ms) : 2370, 2469
.   : milestone, 2419,
iast (2.201 ms) : 2138, 2263
.   : milestone, 2201,
iast_GLOBAL (2.247 ms) : 2185, 2310
.   : milestone, 2247,
profiling (2.038 ms) : 1988, 2088
.   : milestone, 2038,
tracing (2.026 ms) : 1978, 2075
.   : milestone, 2026,
section candidate
no_agent (1.484 ms) : 1473, 1496
.   : milestone, 1484,
appsec (2.413 ms) : 2364, 2462
.   : milestone, 2413,
iast (2.201 ms) : 2139, 2263
.   : milestone, 2201,
iast_GLOBAL (2.245 ms) : 2182, 2308
.   : milestone, 2245,
profiling (2.046 ms) : 1996, 2095
.   : milestone, 2046,
tracing (2.014 ms) : 1966, 2062
.   : milestone, 2014,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.486 ms [1.475 ms, 1.498 ms] -
appsec 2.419 ms [2.37 ms, 2.469 ms] 932.899 µs (62.8%)
iast 2.201 ms [2.138 ms, 2.263 ms] 714.522 µs (48.1%)
iast_GLOBAL 2.247 ms [2.185 ms, 2.31 ms] 761.068 µs (51.2%)
profiling 2.038 ms [1.988 ms, 2.088 ms] 551.578 µs (37.1%)
tracing 2.026 ms [1.978 ms, 2.075 ms] 539.785 µs (36.3%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.484 ms [1.473 ms, 1.496 ms] -
appsec 2.413 ms [2.364 ms, 2.462 ms] 928.772 µs (62.6%)
iast 2.201 ms [2.139 ms, 2.263 ms] 716.369 µs (48.3%)
iast_GLOBAL 2.245 ms [2.182 ms, 2.308 ms] 760.389 µs (51.2%)
profiling 2.046 ms [1.996 ms, 2.095 ms] 561.348 µs (37.8%)
tracing 2.014 ms [1.966 ms, 2.062 ms] 529.952 µs (35.7%)

@mhlidd mhlidd changed the title updating akkahttp Migrating all HttpServer Instrumentations to use Context and ContextScope May 13, 2025
@mhlidd mhlidd changed the base branch from mhlidd/migrate_tomcat_okhttp to master May 14, 2025 14:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant