Refactoring of AppSec Events Reporting system#7154
Merged
ValentinZakharov merged 3 commits intomasterfrom Jun 11, 2024
Merged
Conversation
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 53 metrics, 18 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.36.0-SNAPSHOT~0d0484e3d2, baseline=1.36.0-SNAPSHOT~64c74a7fbe
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.07 s) : 0, 1070353
Total [baseline] (10.388 s) : 0, 10388272
Agent [candidate] (1.065 s) : 0, 1065137
Total [candidate] (10.445 s) : 0, 10444742
section appsec
Agent [baseline] (1.179 s) : 0, 1179365
Total [baseline] (10.482 s) : 0, 10481929
Agent [candidate] (1.179 s) : 0, 1178566
Total [candidate] (10.531 s) : 0, 10530808
section iast
Agent [baseline] (1.169 s) : 0, 1168784
Total [baseline] (10.714 s) : 0, 10713720
Agent [candidate] (1.179 s) : 0, 1178565
Total [candidate] (10.785 s) : 0, 10785043
section profiling
Agent [baseline] (1.26 s) : 0, 1259861
Total [baseline] (10.648 s) : 0, 10647929
Agent [candidate] (1.262 s) : 0, 1262446
Total [candidate] (10.693 s) : 0, 10693243
gantt
title petclinic - break down per module: candidate=1.36.0-SNAPSHOT~0d0484e3d2, baseline=1.36.0-SNAPSHOT~64c74a7fbe
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (670.648 ms) : 0, 670648
BytebuddyAgent [candidate] (666.19 ms) : 0, 666190
GlobalTracer [baseline] (306.155 ms) : 0, 306155
GlobalTracer [candidate] (305.579 ms) : 0, 305579
AppSec [baseline] (50.237 ms) : 0, 50237
AppSec [candidate] (50.228 ms) : 0, 50228
Logs Intake [baseline] (393.659 µs) : 0, 394
Logs Intake [candidate] (377.999 µs) : 0, 378
Remote Config [baseline] (662.032 µs) : 0, 662
Remote Config [candidate] (679.811 µs) : 0, 680
Telemetry [baseline] (7.575 ms) : 0, 7575
Telemetry [candidate] (7.632 ms) : 0, 7632
section appsec
BytebuddyAgent [baseline] (674.196 ms) : 0, 674196
BytebuddyAgent [candidate] (674.635 ms) : 0, 674635
GlobalTracer [baseline] (297.113 ms) : 0, 297113
GlobalTracer [candidate] (297.153 ms) : 0, 297153
AppSec [baseline] (152.959 ms) : 0, 152959
AppSec [candidate] (152.686 ms) : 0, 152686
Logs Intake [baseline] (329.14 µs) : 0, 329
Logs Intake [candidate] (328.394 µs) : 0, 328
Remote Config [baseline] (648.062 µs) : 0, 648
Remote Config [candidate] (640.477 µs) : 0, 640
Telemetry [baseline] (8.748 ms) : 0, 8748
Telemetry [candidate] (8.154 ms) : 0, 8154
IAST [baseline] (22.212 ms) : 0, 22212
IAST [candidate] (21.171 ms) : 0, 21171
section iast
BytebuddyAgent [baseline] (779.742 ms) : 0, 779742
BytebuddyAgent [candidate] (787.961 ms) : 0, 787961
GlobalTracer [baseline] (293.127 ms) : 0, 293127
GlobalTracer [candidate] (294.766 ms) : 0, 294766
AppSec [baseline] (47.006 ms) : 0, 47006
AppSec [candidate] (47.408 ms) : 0, 47408
Logs Intake [baseline] (311.989 µs) : 0, 312
Logs Intake [candidate] (304.367 µs) : 0, 304
Remote Config [baseline] (587.754 µs) : 0, 588
Remote Config [candidate] (570.874 µs) : 0, 571
Telemetry [baseline] (7.644 ms) : 0, 7644
Telemetry [candidate] (8.568 ms) : 0, 8568
IAST [baseline] (27.098 ms) : 0, 27098
IAST [candidate] (25.589 ms) : 0, 25589
section profiling
ProfilingAgent [baseline] (95.767 ms) : 0, 95767
ProfilingAgent [candidate] (96.751 ms) : 0, 96751
BytebuddyAgent [baseline] (662.342 ms) : 0, 662342
BytebuddyAgent [candidate] (661.986 ms) : 0, 661986
GlobalTracer [baseline] (386.28 ms) : 0, 386280
GlobalTracer [candidate] (387.96 ms) : 0, 387960
AppSec [baseline] (50.532 ms) : 0, 50532
AppSec [candidate] (50.835 ms) : 0, 50835
Logs Intake [baseline] (330.667 µs) : 0, 331
Logs Intake [candidate] (339.005 µs) : 0, 339
Remote Config [baseline] (731.53 µs) : 0, 732
Remote Config [candidate] (728.319 µs) : 0, 728
Telemetry [baseline] (7.28 ms) : 0, 7280
Telemetry [candidate] (7.385 ms) : 0, 7385
Profiling [baseline] (95.791 ms) : 0, 95791
Profiling [candidate] (96.776 ms) : 0, 96776
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.36.0-SNAPSHOT~0d0484e3d2, baseline=1.36.0-SNAPSHOT~64c74a7fbe
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.068 s) : 0, 1068429
Total [baseline] (8.56 s) : 0, 8559642
Agent [candidate] (1.071 s) : 0, 1070606
Total [candidate] (8.617 s) : 0, 8616685
section iast
Agent [baseline] (1.168 s) : 0, 1168395
Total [baseline] (9.028 s) : 0, 9027826
Agent [candidate] (1.177 s) : 0, 1177180
Total [candidate] (9.043 s) : 0, 9042867
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.169 s) : 0, 1168547
Total [baseline] (8.981 s) : 0, 8980646
Agent [candidate] (1.168 s) : 0, 1168262
Total [candidate] (8.962 s) : 0, 8962407
section iast_TELEMETRY_OFF
Agent [baseline] (1.164 s) : 0, 1163910
Total [baseline] (8.987 s) : 0, 8987075
Agent [candidate] (1.173 s) : 0, 1173123
Total [candidate] (9.003 s) : 0, 9003423
gantt
title insecure-bank - break down per module: candidate=1.36.0-SNAPSHOT~0d0484e3d2, baseline=1.36.0-SNAPSHOT~64c74a7fbe
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (669.574 ms) : 0, 669574
BytebuddyAgent [candidate] (670.427 ms) : 0, 670427
GlobalTracer [baseline] (305.12 ms) : 0, 305120
GlobalTracer [candidate] (306.234 ms) : 0, 306234
AppSec [baseline] (50.281 ms) : 0, 50281
AppSec [candidate] (50.389 ms) : 0, 50389
Logs Intake [baseline] (416.406 µs) : 0, 416
Logs Intake [candidate] (411.976 µs) : 0, 412
Remote Config [baseline] (666.163 µs) : 0, 666
Remote Config [candidate] (685.354 µs) : 0, 685
Telemetry [baseline] (7.678 ms) : 0, 7678
Telemetry [candidate] (7.659 ms) : 0, 7659
section iast
BytebuddyAgent [baseline] (778.29 ms) : 0, 778290
BytebuddyAgent [candidate] (785.658 ms) : 0, 785658
GlobalTracer [baseline] (293.443 ms) : 0, 293443
GlobalTracer [candidate] (295.775 ms) : 0, 295775
AppSec [baseline] (47.048 ms) : 0, 47048
AppSec [candidate] (47.309 ms) : 0, 47309
IAST [baseline] (27.795 ms) : 0, 27795
IAST [candidate] (26.418 ms) : 0, 26418
Logs Intake [baseline] (300.594 µs) : 0, 301
Logs Intake [candidate] (303.824 µs) : 0, 304
Remote Config [baseline] (571.799 µs) : 0, 572
Remote Config [candidate] (581.212 µs) : 0, 581
Telemetry [baseline] (7.654 ms) : 0, 7654
Telemetry [candidate] (7.738 ms) : 0, 7738
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (778.916 ms) : 0, 778916
BytebuddyAgent [candidate] (778.752 ms) : 0, 778752
GlobalTracer [baseline] (294.16 ms) : 0, 294160
GlobalTracer [candidate] (293.98 ms) : 0, 293980
AppSec [baseline] (46.718 ms) : 0, 46718
AppSec [candidate] (46.683 ms) : 0, 46683
IAST [baseline] (26.14 ms) : 0, 26140
IAST [candidate] (26.167 ms) : 0, 26167
Logs Intake [baseline] (302.676 µs) : 0, 303
Logs Intake [candidate] (303.764 µs) : 0, 304
Remote Config [baseline] (574.92 µs) : 0, 575
Remote Config [candidate] (581.861 µs) : 0, 582
Telemetry [baseline] (8.405 ms) : 0, 8405
Telemetry [candidate] (8.449 ms) : 0, 8449
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (776.516 ms) : 0, 776516
BytebuddyAgent [candidate] (782.86 ms) : 0, 782860
GlobalTracer [baseline] (293.775 ms) : 0, 293775
GlobalTracer [candidate] (295.582 ms) : 0, 295582
AppSec [baseline] (47.746 ms) : 0, 47746
AppSec [candidate] (48.276 ms) : 0, 48276
IAST [baseline] (24.237 ms) : 0, 24237
IAST [candidate] (24.543 ms) : 0, 24543
Logs Intake [baseline] (298.954 µs) : 0, 299
Logs Intake [candidate] (296.956 µs) : 0, 297
Remote Config [baseline] (567.439 µs) : 0, 567
Remote Config [candidate] (564.963 µs) : 0, 565
Telemetry [baseline] (7.498 ms) : 0, 7498
Telemetry [candidate] (7.549 ms) : 0, 7549
LoadParameters
See matching parameters
SummaryFound 1 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 16 unstable metrics.
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.36.0-SNAPSHOT~0d0484e3d2, baseline=1.36.0-SNAPSHOT~64c74a7fbe
dateFormat X
axisFormat %s
section baseline
no_agent (1.348 ms) : 1328, 1368
. : milestone, 1348,
appsec (1.705 ms) : 1681, 1730
. : milestone, 1705,
appsec_no_iast (1.721 ms) : 1696, 1745
. : milestone, 1721,
iast (1.479 ms) : 1455, 1504
. : milestone, 1479,
profiling (1.551 ms) : 1525, 1577
. : milestone, 1551,
tracing (1.477 ms) : 1453, 1501
. : milestone, 1477,
section candidate
no_agent (1.341 ms) : 1321, 1361
. : milestone, 1341,
appsec (1.735 ms) : 1711, 1759
. : milestone, 1735,
appsec_no_iast (1.737 ms) : 1713, 1761
. : milestone, 1737,
iast (1.492 ms) : 1467, 1516
. : milestone, 1492,
profiling (1.491 ms) : 1466, 1515
. : milestone, 1491,
tracing (1.493 ms) : 1469, 1517
. : milestone, 1493,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.36.0-SNAPSHOT~0d0484e3d2, baseline=1.36.0-SNAPSHOT~64c74a7fbe
dateFormat X
axisFormat %s
section baseline
no_agent (367.093 µs) : 347, 387
. : milestone, 367,
iast (485.392 µs) : 464, 506
. : milestone, 485,
iast_FULL (552.634 µs) : 532, 574
. : milestone, 553,
iast_GLOBAL (521.588 µs) : 499, 544
. : milestone, 522,
iast_HARDCODED_SECRET_DISABLED (481.546 µs) : 460, 503
. : milestone, 482,
iast_INACTIVE (459.184 µs) : 437, 481
. : milestone, 459,
iast_TELEMETRY_OFF (481.012 µs) : 460, 502
. : milestone, 481,
tracing (442.081 µs) : 422, 462
. : milestone, 442,
section candidate
no_agent (369.773 µs) : 350, 390
. : milestone, 370,
iast (488.373 µs) : 467, 510
. : milestone, 488,
iast_FULL (558.206 µs) : 537, 579
. : milestone, 558,
iast_GLOBAL (515.141 µs) : 493, 537
. : milestone, 515,
iast_HARDCODED_SECRET_DISABLED (480.073 µs) : 459, 501
. : milestone, 480,
iast_INACTIVE (454.005 µs) : 432, 476
. : milestone, 454,
iast_TELEMETRY_OFF (478.27 µs) : 457, 500
. : milestone, 478,
tracing (450.298 µs) : 429, 471
. : milestone, 450,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics. Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.36.0-SNAPSHOT~0d0484e3d2, baseline=1.36.0-SNAPSHOT~64c74a7fbe
dateFormat X
axisFormat %s
section baseline
no_agent (1.462 ms) : 1450, 1473
. : milestone, 1462,
appsec (2.207 ms) : 2173, 2242
. : milestone, 2207,
iast (1.961 ms) : 1920, 2003
. : milestone, 1961,
iast_GLOBAL (1.995 ms) : 1954, 2036
. : milestone, 1995,
profiling (2.286 ms) : 2114, 2457
. : milestone, 2286,
tracing (1.821 ms) : 1789, 1852
. : milestone, 1821,
section candidate
no_agent (1.453 ms) : 1442, 1465
. : milestone, 1453,
appsec (2.214 ms) : 2180, 2249
. : milestone, 2214,
iast (1.955 ms) : 1914, 1995
. : milestone, 1955,
iast_GLOBAL (1.995 ms) : 1954, 2036
. : milestone, 1995,
profiling (1.842 ms) : 1808, 1876
. : milestone, 1842,
tracing (1.83 ms) : 1798, 1862
. : milestone, 1830,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.36.0-SNAPSHOT~0d0484e3d2, baseline=1.36.0-SNAPSHOT~64c74a7fbe
dateFormat X
axisFormat %s
section baseline
no_agent (14.994 s) : 14994000, 14994000
. : milestone, 14994000,
appsec (15.145 s) : 15145000, 15145000
. : milestone, 15145000,
iast (18.898 s) : 18898000, 18898000
. : milestone, 18898000,
iast_GLOBAL (17.994 s) : 17994000, 17994000
. : milestone, 17994000,
profiling (15.067 s) : 15067000, 15067000
. : milestone, 15067000,
tracing (14.897 s) : 14897000, 14897000
. : milestone, 14897000,
section candidate
no_agent (15.315 s) : 15315000, 15315000
. : milestone, 15315000,
appsec (15.0 s) : 15000000, 15000000
. : milestone, 15000000,
iast (18.754 s) : 18754000, 18754000
. : milestone, 18754000,
iast_GLOBAL (17.967 s) : 17967000, 17967000
. : milestone, 17967000,
profiling (15.159 s) : 15159000, 15159000
. : milestone, 15159000,
tracing (15.004 s) : 15004000, 15004000
. : milestone, 15004000,
|
03fa5ef to
32ce773
Compare
660c9f7 to
0d0484e
Compare
manuel-alvarez-alvarez
approved these changes
Jun 11, 2024
jandro996
approved these changes
Jun 11, 2024
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What Does This Do
Reworked AppSec reporting system to make it use same objects to report events.
How it was before:
WAF provided data in the form of an
PowerWAFResultDatastructure, which was then converted to anAppSecEventstructure, which imposed additional performance costs.How it's implemented:
WAF provides the data in an
PowerWAFResultDatastructure, but these objects are used to create theAppSecEventstructure without having to copy each field, which gives extra performanceMotivation
This is preparation work for stack trace reporting in Exploit prevention initiative (RASP)
Additional Notes
Jira ticket: APPSEC-46818