-
Notifications
You must be signed in to change notification settings - Fork 312
Implementation of http client request analysis for OkHttp3 #9654
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
Implementation of http client request analysis for OkHttp3 #9654
Conversation
🎯 Code Coverage 🔗 Commit SHA: 95b71ca | Docs | Was this helpful? Give us feedback! |
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 58 metrics, 7 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.54.0-SNAPSHOT~95b71ca9ca, baseline=1.54.0-SNAPSHOT~02cae20a94
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.024 s) : 0, 1023945
Total [baseline] (8.649 s) : 0, 8649339
Agent [candidate] (1.018 s) : 0, 1018396
Total [candidate] (8.657 s) : 0, 8656754
section iast
Agent [baseline] (1.158 s) : 0, 1158333
Total [baseline] (9.262 s) : 0, 9261836
Agent [candidate] (1.157 s) : 0, 1157402
Total [candidate] (9.22 s) : 0, 9219878
gantt
title insecure-bank - break down per module: candidate=1.54.0-SNAPSHOT~95b71ca9ca, baseline=1.54.0-SNAPSHOT~02cae20a94
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.471 ms) : 0, 1471
crashtracking [candidate] (1.449 ms) : 0, 1449
BytebuddyAgent [baseline] (699.12 ms) : 0, 699120
BytebuddyAgent [candidate] (694.261 ms) : 0, 694261
GlobalTracer [baseline] (242.722 ms) : 0, 242722
GlobalTracer [candidate] (241.981 ms) : 0, 241981
AppSec [baseline] (32.819 ms) : 0, 32819
AppSec [candidate] (32.715 ms) : 0, 32715
Debugger [baseline] (6.477 ms) : 0, 6477
Debugger [candidate] (6.38 ms) : 0, 6380
Remote Config [baseline] (681.439 µs) : 0, 681
Remote Config [candidate] (680.963 µs) : 0, 681
Telemetry [baseline] (9.381 ms) : 0, 9381
Telemetry [candidate] (9.188 ms) : 0, 9188
Flare Poller [baseline] (10.157 ms) : 0, 10157
Flare Poller [candidate] (10.762 ms) : 0, 10762
section iast
crashtracking [baseline] (1.471 ms) : 0, 1471
crashtracking [candidate] (1.462 ms) : 0, 1462
BytebuddyAgent [baseline] (820.249 ms) : 0, 820249
BytebuddyAgent [candidate] (819.87 ms) : 0, 819870
GlobalTracer [baseline] (233.308 ms) : 0, 233308
GlobalTracer [candidate] (232.871 ms) : 0, 232871
IAST [baseline] (27.063 ms) : 0, 27063
IAST [candidate] (27.098 ms) : 0, 27098
AppSec [baseline] (35.373 ms) : 0, 35373
AppSec [candidate] (35.478 ms) : 0, 35478
Debugger [baseline] (6.144 ms) : 0, 6144
Debugger [candidate] (6.093 ms) : 0, 6093
Remote Config [baseline] (620.584 µs) : 0, 621
Remote Config [candidate] (599.598 µs) : 0, 600
Telemetry [baseline] (8.635 ms) : 0, 8635
Telemetry [candidate] (8.461 ms) : 0, 8461
Flare Poller [baseline] (4.237 ms) : 0, 4237
Flare Poller [candidate] (4.268 ms) : 0, 4268
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.54.0-SNAPSHOT~95b71ca9ca, baseline=1.54.0-SNAPSHOT~02cae20a94
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.027 s) : 0, 1026594
Total [baseline] (10.661 s) : 0, 10660760
Agent [candidate] (1.02 s) : 0, 1019702
Total [candidate] (10.775 s) : 0, 10774996
section appsec
Agent [baseline] (1.197 s) : 0, 1196755
Total [baseline] (10.883 s) : 0, 10882770
Agent [candidate] (1.194 s) : 0, 1194286
Total [candidate] (10.956 s) : 0, 10955987
section iast
Agent [baseline] (1.15 s) : 0, 1150294
Total [baseline] (10.931 s) : 0, 10930545
Agent [candidate] (1.158 s) : 0, 1157666
Total [candidate] (10.907 s) : 0, 10906715
section profiling
Agent [baseline] (1.163 s) : 0, 1163400
Total [baseline] (11.011 s) : 0, 11010594
Agent [candidate] (1.167 s) : 0, 1166607
Total [candidate] (11.056 s) : 0, 11056267
gantt
title petclinic - break down per module: candidate=1.54.0-SNAPSHOT~95b71ca9ca, baseline=1.54.0-SNAPSHOT~02cae20a94
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.477 ms) : 0, 1477
crashtracking [candidate] (1.452 ms) : 0, 1452
BytebuddyAgent [baseline] (700.153 ms) : 0, 700153
BytebuddyAgent [candidate] (694.688 ms) : 0, 694688
GlobalTracer [baseline] (243.631 ms) : 0, 243631
GlobalTracer [candidate] (241.992 ms) : 0, 241992
AppSec [baseline] (33.076 ms) : 0, 33076
AppSec [candidate] (32.701 ms) : 0, 32701
Debugger [baseline] (6.465 ms) : 0, 6465
Debugger [candidate] (6.414 ms) : 0, 6414
Remote Config [baseline] (689.292 µs) : 0, 689
Remote Config [candidate] (683.223 µs) : 0, 683
Telemetry [baseline] (9.275 ms) : 0, 9275
Telemetry [candidate] (9.211 ms) : 0, 9211
Flare Poller [baseline] (10.602 ms) : 0, 10602
Flare Poller [candidate] (11.496 ms) : 0, 11496
section appsec
crashtracking [baseline] (1.48 ms) : 0, 1480
crashtracking [candidate] (1.468 ms) : 0, 1468
BytebuddyAgent [baseline] (719.589 ms) : 0, 719589
BytebuddyAgent [candidate] (718.453 ms) : 0, 718453
GlobalTracer [baseline] (234.989 ms) : 0, 234989
GlobalTracer [candidate] (234.208 ms) : 0, 234208
AppSec [baseline] (174.581 ms) : 0, 174581
AppSec [candidate] (174.966 ms) : 0, 174966
Debugger [baseline] (6.159 ms) : 0, 6159
Debugger [candidate] (6.123 ms) : 0, 6123
Remote Config [baseline] (644.016 µs) : 0, 644
Remote Config [candidate] (640.216 µs) : 0, 640
Telemetry [baseline] (9.301 ms) : 0, 9301
Telemetry [candidate] (8.408 ms) : 0, 8408
Flare Poller [baseline] (4.0 ms) : 0, 4000
Flare Poller [candidate] (3.996 ms) : 0, 3996
IAST [baseline] (24.901 ms) : 0, 24901
IAST [candidate] (24.981 ms) : 0, 24981
section iast
crashtracking [baseline] (1.449 ms) : 0, 1449
crashtracking [candidate] (1.462 ms) : 0, 1462
BytebuddyAgent [baseline] (814.3 ms) : 0, 814300
BytebuddyAgent [candidate] (819.864 ms) : 0, 819864
GlobalTracer [baseline] (231.97 ms) : 0, 231970
GlobalTracer [candidate] (233.322 ms) : 0, 233322
AppSec [baseline] (35.364 ms) : 0, 35364
AppSec [candidate] (35.307 ms) : 0, 35307
Debugger [baseline] (6.092 ms) : 0, 6092
Debugger [candidate] (6.092 ms) : 0, 6092
Remote Config [baseline] (603.136 µs) : 0, 603
Remote Config [candidate] (621.054 µs) : 0, 621
Telemetry [baseline] (8.411 ms) : 0, 8411
Telemetry [candidate] (8.497 ms) : 0, 8497
Flare Poller [baseline] (4.135 ms) : 0, 4135
Flare Poller [candidate] (4.196 ms) : 0, 4196
IAST [baseline] (26.719 ms) : 0, 26719
IAST [candidate] (27.051 ms) : 0, 27051
section profiling
ProfilingAgent [baseline] (106.531 ms) : 0, 106531
ProfilingAgent [candidate] (107.294 ms) : 0, 107294
crashtracking [baseline] (1.424 ms) : 0, 1424
crashtracking [candidate] (1.418 ms) : 0, 1418
BytebuddyAgent [baseline] (723.193 ms) : 0, 723193
BytebuddyAgent [candidate] (725.352 ms) : 0, 725352
GlobalTracer [baseline] (218.07 ms) : 0, 218070
GlobalTracer [candidate] (218.425 ms) : 0, 218425
AppSec [baseline] (33.034 ms) : 0, 33034
AppSec [candidate] (33.165 ms) : 0, 33165
Debugger [baseline] (6.486 ms) : 0, 6486
Debugger [candidate] (7.253 ms) : 0, 7253
Remote Config [baseline] (684.964 µs) : 0, 685
Remote Config [candidate] (698.088 µs) : 0, 698
Telemetry [baseline] (16.526 ms) : 0, 16526
Telemetry [candidate] (15.844 ms) : 0, 15844
Flare Poller [baseline] (4.177 ms) : 0, 4177
Flare Poller [candidate] (4.153 ms) : 0, 4153
Profiling [baseline] (107.791 ms) : 0, 107791
Profiling [candidate] (108.195 ms) : 0, 108195
LoadParameters
See matching parameters
SummaryFound 3 performance improvements and 0 performance regressions! Performance is the same for 9 metrics, 12 unstable metrics.
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.54.0-SNAPSHOT~95b71ca9ca, baseline=1.54.0-SNAPSHOT~02cae20a94
dateFormat X
axisFormat %s
section baseline
no_agent (4.192 ms) : 4142, 4242
. : milestone, 4192,
iast (9.341 ms) : 9188, 9493
. : milestone, 9341,
iast_FULL (14.108 ms) : 13827, 14389
. : milestone, 14108,
iast_GLOBAL (10.666 ms) : 10478, 10854
. : milestone, 10666,
profiling (9.005 ms) : 8866, 9143
. : milestone, 9005,
tracing (7.64 ms) : 7528, 7753
. : milestone, 7640,
section candidate
no_agent (4.231 ms) : 4180, 4282
. : milestone, 4231,
iast (9.33 ms) : 9178, 9482
. : milestone, 9330,
iast_FULL (13.816 ms) : 13543, 14090
. : milestone, 13816,
iast_GLOBAL (10.546 ms) : 10359, 10734
. : milestone, 10546,
profiling (8.615 ms) : 8481, 8749
. : milestone, 8615,
tracing (7.731 ms) : 7612, 7849
. : milestone, 7731,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.54.0-SNAPSHOT~95b71ca9ca, baseline=1.54.0-SNAPSHOT~02cae20a94
dateFormat X
axisFormat %s
section baseline
no_agent (36.614 ms) : 36314, 36913
. : milestone, 36614,
appsec (50.648 ms) : 50199, 51097
. : milestone, 50648,
code_origins (44.591 ms) : 44209, 44973
. : milestone, 44591,
iast (45.833 ms) : 45435, 46230
. : milestone, 45833,
profiling (49.159 ms) : 48659, 49660
. : milestone, 49159,
tracing (44.107 ms) : 43740, 44473
. : milestone, 44107,
section candidate
no_agent (35.294 ms) : 35008, 35581
. : milestone, 35294,
appsec (47.481 ms) : 47069, 47893
. : milestone, 47481,
code_origins (43.963 ms) : 43602, 44324
. : milestone, 43963,
iast (45.226 ms) : 44839, 45613
. : milestone, 45226,
profiling (49.194 ms) : 48684, 49704
. : milestone, 49194,
tracing (43.308 ms) : 42948, 43667
. : milestone, 43308,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 10 metrics, 2 unstable metrics. Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.54.0-SNAPSHOT~95b71ca9ca, baseline=1.54.0-SNAPSHOT~02cae20a94
dateFormat X
axisFormat %s
section baseline
no_agent (1.477 ms) : 1466, 1489
. : milestone, 1477,
appsec (3.715 ms) : 3496, 3935
. : milestone, 3715,
iast (2.208 ms) : 2144, 2271
. : milestone, 2208,
iast_GLOBAL (2.253 ms) : 2189, 2317
. : milestone, 2253,
profiling (2.511 ms) : 2339, 2683
. : milestone, 2511,
tracing (2.028 ms) : 1978, 2077
. : milestone, 2028,
section candidate
no_agent (1.481 ms) : 1470, 1493
. : milestone, 1481,
appsec (3.743 ms) : 3524, 3963
. : milestone, 3743,
iast (2.214 ms) : 2150, 2277
. : milestone, 2214,
iast_GLOBAL (2.264 ms) : 2201, 2328
. : milestone, 2264,
profiling (2.082 ms) : 2030, 2135
. : milestone, 2082,
tracing (2.029 ms) : 1980, 2079
. : milestone, 2029,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.54.0-SNAPSHOT~95b71ca9ca, baseline=1.54.0-SNAPSHOT~02cae20a94
dateFormat X
axisFormat %s
section baseline
no_agent (15.576 s) : 15576000, 15576000
. : milestone, 15576000,
appsec (14.987 s) : 14987000, 14987000
. : milestone, 14987000,
iast (18.727 s) : 18727000, 18727000
. : milestone, 18727000,
iast_GLOBAL (17.778 s) : 17778000, 17778000
. : milestone, 17778000,
profiling (15.361 s) : 15361000, 15361000
. : milestone, 15361000,
tracing (15.094 s) : 15094000, 15094000
. : milestone, 15094000,
section candidate
no_agent (15.367 s) : 15367000, 15367000
. : milestone, 15367000,
appsec (15.142 s) : 15142000, 15142000
. : milestone, 15142000,
iast (18.437 s) : 18437000, 18437000
. : milestone, 18437000,
iast_GLOBAL (18.033 s) : 18033000, 18033000
. : milestone, 18033000,
profiling (15.966 s) : 15966000, 15966000
. : milestone, 15966000,
tracing (15.105 s) : 15105000, 15105000
. : milestone, 15105000,
|
843aa9a
to
31dd984
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
31dd984
to
95b71ca
Compare
What Does This Do
Adds support for downstream HTTP request and response analysis in the OkHttp3 client instrumentation.
Motivation
Enable AppSec to analyze outbound requests made through OkHttp3. This expands coverage for API security and SSRF protections, while supporting downstream traffic inspection with configurable sampling.
Additional Notes
RFC
Contributor Checklist
type:
and (comp:
orinst:
) labels in addition to any useful labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: APPSEC-58613