-
Notifications
You must be signed in to change notification settings - Fork 278
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
Refactor propagation module with APIs for strings and objects #6820
Refactor propagation module with APIs for strings and objects #6820
Conversation
626c1da
to
e7711df
Compare
Kafka / producer-benchmarkParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 3 metrics, 0 unstable metrics. See unchanged results
|
Kafka / consumer-benchmarkParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 3 metrics, 0 unstable metrics. See unchanged results
|
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 49 metrics, 14 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.34.0-SNAPSHOT~7dec401d65, baseline=1.34.0-SNAPSHOT~8c37f09d8c
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.076 s) : 0, 1075809
Total [baseline] (8.528 s) : 0, 8528284
Agent [candidate] (1.074 s) : 0, 1073768
Total [candidate] (8.521 s) : 0, 8521138
section iast
Agent [baseline] (1.203 s) : 0, 1203172
Total [baseline] (8.987 s) : 0, 8987291
Agent [candidate] (1.206 s) : 0, 1206092
Total [candidate] (9.031 s) : 0, 9031311
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.214 s) : 0, 1214283
Total [baseline] (8.998 s) : 0, 8998160
Agent [candidate] (1.196 s) : 0, 1196067
Total [candidate] (8.951 s) : 0, 8951077
section iast_TELEMETRY_OFF
Agent [baseline] (1.192 s) : 0, 1191531
Total [baseline] (8.976 s) : 0, 8976359
Agent [candidate] (1.211 s) : 0, 1211206
Total [candidate] (9.014 s) : 0, 9014422
gantt
title insecure-bank - break down per module: candidate=1.34.0-SNAPSHOT~7dec401d65, baseline=1.34.0-SNAPSHOT~8c37f09d8c
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (673.593 ms) : 0, 673593
BytebuddyAgent [candidate] (672.189 ms) : 0, 672189
GlobalTracer [baseline] (309.853 ms) : 0, 309853
GlobalTracer [candidate] (309.194 ms) : 0, 309194
AppSec [baseline] (49.635 ms) : 0, 49635
AppSec [candidate] (49.729 ms) : 0, 49729
Remote Config [baseline] (657.66 µs) : 0, 658
Remote Config [candidate] (664.782 µs) : 0, 665
Telemetry [baseline] (7.59 ms) : 0, 7590
Telemetry [candidate] (7.691 ms) : 0, 7691
section iast
BytebuddyAgent [baseline] (797.069 ms) : 0, 797069
BytebuddyAgent [candidate] (798.887 ms) : 0, 798887
GlobalTracer [baseline] (289.342 ms) : 0, 289342
GlobalTracer [candidate] (289.902 ms) : 0, 289902
AppSec [baseline] (50.298 ms) : 0, 50298
AppSec [candidate] (50.475 ms) : 0, 50475
IAST [baseline] (23.867 ms) : 0, 23867
IAST [candidate] (25.122 ms) : 0, 25122
Remote Config [baseline] (568.572 µs) : 0, 569
Remote Config [candidate] (573.296 µs) : 0, 573
Telemetry [baseline] (7.418 ms) : 0, 7418
Telemetry [candidate] (6.613 ms) : 0, 6613
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (805.475 ms) : 0, 805475
BytebuddyAgent [candidate] (791.882 ms) : 0, 791882
GlobalTracer [baseline] (291.005 ms) : 0, 291005
GlobalTracer [candidate] (287.485 ms) : 0, 287485
AppSec [baseline] (52.432 ms) : 0, 52432
AppSec [candidate] (50.203 ms) : 0, 50203
IAST [baseline] (22.483 ms) : 0, 22483
IAST [candidate] (22.507 ms) : 0, 22507
Remote Config [baseline] (569.69 µs) : 0, 570
Remote Config [candidate] (564.136 µs) : 0, 564
Telemetry [baseline] (7.389 ms) : 0, 7389
Telemetry [candidate] (8.98 ms) : 0, 8980
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (788.679 ms) : 0, 788679
BytebuddyAgent [candidate] (802.344 ms) : 0, 802344
GlobalTracer [baseline] (287.186 ms) : 0, 287186
GlobalTracer [candidate] (291.394 ms) : 0, 291394
AppSec [baseline] (49.436 ms) : 0, 49436
AppSec [candidate] (49.208 ms) : 0, 49208
IAST [baseline] (22.539 ms) : 0, 22539
IAST [candidate] (23.98 ms) : 0, 23980
Remote Config [baseline] (580.543 µs) : 0, 581
Remote Config [candidate] (606.681 µs) : 0, 607
Telemetry [baseline] (8.849 ms) : 0, 8849
Telemetry [candidate] (8.876 ms) : 0, 8876
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.34.0-SNAPSHOT~7dec401d65, baseline=1.34.0-SNAPSHOT~8c37f09d8c
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.074 s) : 0, 1074001
Total [baseline] (10.374 s) : 0, 10373934
Agent [candidate] (1.074 s) : 0, 1073647
Total [candidate] (10.376 s) : 0, 10375753
section appsec
Agent [baseline] (1.193 s) : 0, 1193271
Total [baseline] (10.516 s) : 0, 10516303
Agent [candidate] (1.196 s) : 0, 1195691
Total [candidate] (10.524 s) : 0, 10523631
section iast
Agent [baseline] (1.198 s) : 0, 1197814
Total [baseline] (10.816 s) : 0, 10815752
Agent [candidate] (1.196 s) : 0, 1196446
Total [candidate] (10.872 s) : 0, 10872217
section profiling
Agent [baseline] (1.264 s) : 0, 1264392
Total [baseline] (10.613 s) : 0, 10613215
Agent [candidate] (1.266 s) : 0, 1266103
Total [candidate] (10.522 s) : 0, 10521818
gantt
title petclinic - break down per module: candidate=1.34.0-SNAPSHOT~7dec401d65, baseline=1.34.0-SNAPSHOT~8c37f09d8c
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (672.312 ms) : 0, 672312
BytebuddyAgent [candidate] (672.604 ms) : 0, 672604
GlobalTracer [baseline] (309.391 ms) : 0, 309391
GlobalTracer [candidate] (309.035 ms) : 0, 309035
AppSec [baseline] (49.688 ms) : 0, 49688
AppSec [candidate] (49.558 ms) : 0, 49558
Remote Config [baseline] (660.093 µs) : 0, 660
Remote Config [candidate] (657.066 µs) : 0, 657
Telemetry [baseline] (7.624 ms) : 0, 7624
Telemetry [candidate] (7.478 ms) : 0, 7478
section appsec
BytebuddyAgent [baseline] (698.164 ms) : 0, 698164
BytebuddyAgent [candidate] (699.397 ms) : 0, 699397
GlobalTracer [baseline] (292.439 ms) : 0, 292439
GlobalTracer [candidate] (292.802 ms) : 0, 292802
AppSec [baseline] (149.443 ms) : 0, 149443
AppSec [candidate] (150.044 ms) : 0, 150044
IAST [baseline] (19.08 ms) : 0, 19080
IAST [candidate] (19.372 ms) : 0, 19372
Remote Config [baseline] (615.423 µs) : 0, 615
Remote Config [candidate] (627.788 µs) : 0, 628
Telemetry [baseline] (8.513 ms) : 0, 8513
Telemetry [candidate] (8.539 ms) : 0, 8539
section iast
BytebuddyAgent [baseline] (793.55 ms) : 0, 793550
BytebuddyAgent [candidate] (792.108 ms) : 0, 792108
GlobalTracer [baseline] (287.211 ms) : 0, 287211
GlobalTracer [candidate] (287.681 ms) : 0, 287681
AppSec [baseline] (49.739 ms) : 0, 49739
AppSec [candidate] (48.689 ms) : 0, 48689
IAST [baseline] (24.967 ms) : 0, 24967
IAST [candidate] (25.006 ms) : 0, 25006
Remote Config [baseline] (576.335 µs) : 0, 576
Remote Config [candidate] (566.042 µs) : 0, 566
Telemetry [baseline] (7.472 ms) : 0, 7472
Telemetry [candidate] (8.117 ms) : 0, 8117
section profiling
BytebuddyAgent [baseline] (675.466 ms) : 0, 675466
BytebuddyAgent [candidate] (676.221 ms) : 0, 676221
GlobalTracer [baseline] (379.572 ms) : 0, 379572
GlobalTracer [candidate] (380.2 ms) : 0, 380200
AppSec [baseline] (49.833 ms) : 0, 49833
AppSec [candidate] (49.806 ms) : 0, 49806
Remote Config [baseline] (703.417 µs) : 0, 703
Remote Config [candidate] (713.349 µs) : 0, 713
Telemetry [baseline] (7.422 ms) : 0, 7422
Telemetry [candidate] (7.402 ms) : 0, 7402
ProfilingAgent [baseline] (95.2 ms) : 0, 95200
ProfilingAgent [candidate] (95.412 ms) : 0, 95412
Profiling [baseline] (95.224 ms) : 0, 95224
Profiling [candidate] (95.436 ms) : 0, 95436
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 17 unstable metrics. Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.34.0-SNAPSHOT~7dec401d65, baseline=1.34.0-SNAPSHOT~8c37f09d8c
dateFormat X
axisFormat %s
section baseline
no_agent (1.352 ms) : 1332, 1371
. : milestone, 1352,
appsec (1.723 ms) : 1698, 1747
. : milestone, 1723,
appsec_no_iast (1.695 ms) : 1671, 1719
. : milestone, 1695,
iast (1.483 ms) : 1460, 1506
. : milestone, 1483,
profiling (1.491 ms) : 1465, 1517
. : milestone, 1491,
tracing (1.477 ms) : 1453, 1501
. : milestone, 1477,
section candidate
no_agent (1.339 ms) : 1321, 1358
. : milestone, 1339,
appsec (1.703 ms) : 1677, 1728
. : milestone, 1703,
appsec_no_iast (1.715 ms) : 1691, 1739
. : milestone, 1715,
iast (1.49 ms) : 1467, 1513
. : milestone, 1490,
profiling (1.527 ms) : 1501, 1552
. : milestone, 1527,
tracing (1.492 ms) : 1468, 1516
. : milestone, 1492,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.34.0-SNAPSHOT~7dec401d65, baseline=1.34.0-SNAPSHOT~8c37f09d8c
dateFormat X
axisFormat %s
section baseline
no_agent (368.904 µs) : 349, 389
. : milestone, 369,
iast (473.023 µs) : 452, 494
. : milestone, 473,
iast_FULL (536.483 µs) : 516, 557
. : milestone, 536,
iast_GLOBAL (495.556 µs) : 474, 517
. : milestone, 496,
iast_HARDCODED_SECRET_DISABLED (477.354 µs) : 456, 499
. : milestone, 477,
iast_INACTIVE (450.321 µs) : 429, 472
. : milestone, 450,
iast_TELEMETRY_OFF (461.754 µs) : 442, 482
. : milestone, 462,
tracing (445.576 µs) : 424, 467
. : milestone, 446,
section candidate
no_agent (363.686 µs) : 344, 383
. : milestone, 364,
iast (473.342 µs) : 452, 495
. : milestone, 473,
iast_FULL (540.093 µs) : 519, 561
. : milestone, 540,
iast_GLOBAL (499.645 µs) : 477, 522
. : milestone, 500,
iast_HARDCODED_SECRET_DISABLED (466.196 µs) : 445, 487
. : milestone, 466,
iast_INACTIVE (442.287 µs) : 422, 463
. : milestone, 442,
iast_TELEMETRY_OFF (464.904 µs) : 444, 486
. : milestone, 465,
tracing (444.199 µs) : 424, 465
. : milestone, 444,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.34.0-SNAPSHOT~7dec401d65, baseline=1.34.0-SNAPSHOT~8c37f09d8c
dateFormat X
axisFormat %s
section baseline
no_agent (15.061 s) : 15061000, 15061000
. : milestone, 15061000,
appsec (15.122 s) : 15122000, 15122000
. : milestone, 15122000,
iast (19.085 s) : 19085000, 19085000
. : milestone, 19085000,
iast_GLOBAL (17.847 s) : 17847000, 17847000
. : milestone, 17847000,
profiling (15.757 s) : 15757000, 15757000
. : milestone, 15757000,
tracing (15.046 s) : 15046000, 15046000
. : milestone, 15046000,
section candidate
no_agent (15.282 s) : 15282000, 15282000
. : milestone, 15282000,
appsec (15.378 s) : 15378000, 15378000
. : milestone, 15378000,
iast (18.772 s) : 18772000, 18772000
. : milestone, 18772000,
iast_GLOBAL (17.781 s) : 17781000, 17781000
. : milestone, 17781000,
profiling (15.285 s) : 15285000, 15285000
. : milestone, 15285000,
tracing (14.801 s) : 14801000, 14801000
. : milestone, 14801000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.34.0-SNAPSHOT~7dec401d65, baseline=1.34.0-SNAPSHOT~8c37f09d8c
dateFormat X
axisFormat %s
section baseline
no_agent (1.468 ms) : 1456, 1479
. : milestone, 1468,
appsec (2.215 ms) : 2182, 2249
. : milestone, 2215,
iast (1.891 ms) : 1855, 1926
. : milestone, 1891,
iast_GLOBAL (1.943 ms) : 1906, 1979
. : milestone, 1943,
profiling (1.861 ms) : 1828, 1894
. : milestone, 1861,
tracing (1.854 ms) : 1822, 1886
. : milestone, 1854,
section candidate
no_agent (1.464 ms) : 1453, 1476
. : milestone, 1464,
appsec (2.22 ms) : 2185, 2254
. : milestone, 2220,
iast (1.899 ms) : 1863, 1935
. : milestone, 1899,
iast_GLOBAL (1.926 ms) : 1890, 1961
. : milestone, 1926,
profiling (1.868 ms) : 1835, 1901
. : milestone, 1868,
tracing (1.839 ms) : 1807, 1871
. : milestone, 1839,
|
2b187de
to
45502b8
Compare
45502b8
to
565c62e
Compare
dac37a8
to
50e1bfc
Compare
50e1bfc
to
56e36ea
Compare
c09135e
to
2473b83
Compare
2473b83
to
7dec401
Compare
What Does This Do
Refactors the
PropagationModule
in order to separate the APIs to taint strings and objects. In the process, theIastContext
is always passed as a parameter to simplify the API.Motivation
Tainting objects is more convoluted than tainting simple strings, this PR ensures that the extra overhead does not apply to strings.
Additional Notes
This is a huge PR as the
PropagationModule
is used extensively around code, feel free to skip the PR as only IAST is affected by it.Jira ticket: [PROJ-IDENT]