-
Notifications
You must be signed in to change notification settings - Fork 292
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
Retry telemetry requests if CI Visibility is enabled #8147
base: master
Are you sure you want to change the base?
Retry telemetry requests if CI Visibility is enabled #8147
Conversation
Hi! 👋 Thanks for your pull request! 🎉 To help us review it, please make sure to:
If you need help, please check our contributing guidelines. |
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 1 performance regressions! Performance is the same for 59 metrics, 3 unstable metrics.
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.45.0-SNAPSHOT~fd72025912, baseline=1.45.0-SNAPSHOT~a8b33d5c49
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.054 s) : 0, 1054082
Total [baseline] (8.625 s) : 0, 8625038
Agent [candidate] (1.056 s) : 0, 1056250
Total [candidate] (8.608 s) : 0, 8608034
section iast
Agent [baseline] (1.185 s) : 0, 1184631
Total [baseline] (9.213 s) : 0, 9212801
Agent [candidate] (1.189 s) : 0, 1188736
Total [candidate] (9.292 s) : 0, 9291567
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.181 s) : 0, 1180707
Total [baseline] (9.166 s) : 0, 9166317
Agent [candidate] (1.18 s) : 0, 1180298
Total [candidate] (9.193 s) : 0, 9193088
section iast_TELEMETRY_OFF
Agent [baseline] (1.176 s) : 0, 1175841
Total [baseline] (9.224 s) : 0, 9224494
Agent [candidate] (1.184 s) : 0, 1183719
Total [candidate] (9.224 s) : 0, 9224375
gantt
title insecure-bank - break down per module: candidate=1.45.0-SNAPSHOT~fd72025912, baseline=1.45.0-SNAPSHOT~a8b33d5c49
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (713.071 ms) : 0, 713071
BytebuddyAgent [candidate] (714.111 ms) : 0, 714111
GlobalTracer [baseline] (256.693 ms) : 0, 256693
GlobalTracer [candidate] (257.112 ms) : 0, 257112
AppSec [baseline] (55.268 ms) : 0, 55268
AppSec [candidate] (55.366 ms) : 0, 55366
Remote Config [baseline] (710.417 µs) : 0, 710
Remote Config [candidate] (726.04 µs) : 0, 726
Telemetry [baseline] (13.27 ms) : 0, 13270
Telemetry [candidate] (13.778 ms) : 0, 13778
section iast
BytebuddyAgent [baseline] (834.696 ms) : 0, 834696
BytebuddyAgent [candidate] (835.851 ms) : 0, 835851
GlobalTracer [baseline] (246.255 ms) : 0, 246255
GlobalTracer [candidate] (248.557 ms) : 0, 248557
AppSec [baseline] (58.106 ms) : 0, 58106
AppSec [candidate] (58.219 ms) : 0, 58219
Remote Config [baseline] (643.658 µs) : 0, 644
Remote Config [candidate] (663.721 µs) : 0, 664
Telemetry [baseline] (8.501 ms) : 0, 8501
Telemetry [candidate] (8.864 ms) : 0, 8864
IAST [baseline] (21.366 ms) : 0, 21366
IAST [candidate] (21.465 ms) : 0, 21465
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (829.832 ms) : 0, 829832
BytebuddyAgent [candidate] (829.376 ms) : 0, 829376
GlobalTracer [baseline] (246.676 ms) : 0, 246676
GlobalTracer [candidate] (247.079 ms) : 0, 247079
AppSec [baseline] (58.258 ms) : 0, 58258
AppSec [candidate] (58.044 ms) : 0, 58044
Remote Config [baseline] (660.293 µs) : 0, 660
Remote Config [candidate] (643.121 µs) : 0, 643
Telemetry [baseline] (8.705 ms) : 0, 8705
Telemetry [candidate] (8.75 ms) : 0, 8750
IAST [baseline] (21.584 ms) : 0, 21584
IAST [candidate] (21.312 ms) : 0, 21312
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (826.042 ms) : 0, 826042
BytebuddyAgent [candidate] (831.848 ms) : 0, 831848
GlobalTracer [baseline] (246.668 ms) : 0, 246668
GlobalTracer [candidate] (248.189 ms) : 0, 248189
AppSec [baseline] (57.921 ms) : 0, 57921
AppSec [candidate] (58.037 ms) : 0, 58037
Remote Config [baseline] (648.264 µs) : 0, 648
Remote Config [candidate] (656.4 µs) : 0, 656
Telemetry [baseline] (8.482 ms) : 0, 8482
Telemetry [candidate] (8.746 ms) : 0, 8746
IAST [baseline] (21.095 ms) : 0, 21095
IAST [candidate] (21.156 ms) : 0, 21156
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.45.0-SNAPSHOT~fd72025912, baseline=1.45.0-SNAPSHOT~a8b33d5c49
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.057 s) : 0, 1057232
Total [baseline] (10.427 s) : 0, 10426931
Agent [candidate] (1.062 s) : 0, 1061788
Total [candidate] (10.557 s) : 0, 10556726
section appsec
Agent [baseline] (1.188 s) : 0, 1188012
Total [baseline] (10.737 s) : 0, 10737448
Agent [candidate] (1.186 s) : 0, 1186371
Total [candidate] (10.725 s) : 0, 10724694
section iast
Agent [baseline] (1.18 s) : 0, 1180389
Total [baseline] (10.92 s) : 0, 10920073
Agent [candidate] (1.179 s) : 0, 1178681
Total [candidate] (11.062 s) : 0, 11062267
section profiling
Agent [baseline] (1.277 s) : 0, 1276688
Total [baseline] (10.859 s) : 0, 10858518
Agent [candidate] (1.289 s) : 0, 1289290
Total [candidate] (10.816 s) : 0, 10815791
gantt
title petclinic - break down per module: candidate=1.45.0-SNAPSHOT~fd72025912, baseline=1.45.0-SNAPSHOT~a8b33d5c49
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (716.313 ms) : 0, 716313
BytebuddyAgent [candidate] (716.832 ms) : 0, 716832
GlobalTracer [baseline] (257.607 ms) : 0, 257607
GlobalTracer [candidate] (258.309 ms) : 0, 258309
AppSec [baseline] (55.433 ms) : 0, 55433
AppSec [candidate] (55.734 ms) : 0, 55734
Remote Config [baseline] (734.617 µs) : 0, 735
Remote Config [candidate] (735.577 µs) : 0, 736
Telemetry [baseline] (12.002 ms) : 0, 12002
Telemetry [candidate] (14.902 ms) : 0, 14902
section appsec
BytebuddyAgent [baseline] (730.749 ms) : 0, 730749
BytebuddyAgent [candidate] (729.533 ms) : 0, 729533
GlobalTracer [baseline] (253.079 ms) : 0, 253079
GlobalTracer [candidate] (253.01 ms) : 0, 253010
AppSec [baseline] (170.882 ms) : 0, 170882
AppSec [candidate] (170.191 ms) : 0, 170191
Remote Config [baseline] (653.445 µs) : 0, 653
Remote Config [candidate] (672.64 µs) : 0, 673
Telemetry [baseline] (7.992 ms) : 0, 7992
Telemetry [candidate] (8.262 ms) : 0, 8262
IAST [baseline] (19.367 ms) : 0, 19367
IAST [candidate] (19.336 ms) : 0, 19336
section iast
BytebuddyAgent [baseline] (829.733 ms) : 0, 829733
BytebuddyAgent [candidate] (828.262 ms) : 0, 828262
GlobalTracer [baseline] (246.9 ms) : 0, 246900
GlobalTracer [candidate] (246.819 ms) : 0, 246819
AppSec [baseline] (58.103 ms) : 0, 58103
AppSec [candidate] (57.976 ms) : 0, 57976
Remote Config [baseline] (643.175 µs) : 0, 643
Remote Config [candidate] (651.028 µs) : 0, 651
Telemetry [baseline] (8.554 ms) : 0, 8554
Telemetry [candidate] (8.742 ms) : 0, 8742
IAST [baseline] (21.461 ms) : 0, 21461
IAST [candidate] (21.204 ms) : 0, 21204
section profiling
ProfilingAgent [baseline] (95.696 ms) : 0, 95696
ProfilingAgent [candidate] (96.121 ms) : 0, 96121
BytebuddyAgent [baseline] (702.804 ms) : 0, 702804
BytebuddyAgent [candidate] (711.157 ms) : 0, 711157
GlobalTracer [baseline] (373.928 ms) : 0, 373928
GlobalTracer [candidate] (375.585 ms) : 0, 375585
AppSec [baseline] (53.894 ms) : 0, 53894
AppSec [candidate] (55.267 ms) : 0, 55267
Remote Config [baseline] (658.682 µs) : 0, 659
Remote Config [candidate] (669.768 µs) : 0, 670
Telemetry [baseline] (7.828 ms) : 0, 7828
Telemetry [candidate] (8.041 ms) : 0, 8041
Profiling [baseline] (95.719 ms) : 0, 95719
Profiling [candidate] (96.145 ms) : 0, 96145
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 16 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~fd72025912, baseline=1.45.0-SNAPSHOT~a8b33d5c49
dateFormat X
axisFormat %s
section baseline
no_agent (384.036 µs) : 363, 405
. : milestone, 384,
iast (502.613 µs) : 481, 525
. : milestone, 503,
iast_FULL (658.461 µs) : 637, 680
. : milestone, 658,
iast_GLOBAL (525.857 µs) : 503, 548
. : milestone, 526,
iast_HARDCODED_SECRET_DISABLED (490.058 µs) : 468, 512
. : milestone, 490,
iast_INACTIVE (451.975 µs) : 431, 473
. : milestone, 452,
iast_TELEMETRY_OFF (481.878 µs) : 460, 503
. : milestone, 482,
tracing (448.965 µs) : 428, 470
. : milestone, 449,
section candidate
no_agent (379.325 µs) : 360, 399
. : milestone, 379,
iast (493.687 µs) : 472, 515
. : milestone, 494,
iast_FULL (655.052 µs) : 633, 677
. : milestone, 655,
iast_GLOBAL (522.181 µs) : 501, 544
. : milestone, 522,
iast_HARDCODED_SECRET_DISABLED (496.78 µs) : 475, 518
. : milestone, 497,
iast_INACTIVE (454.341 µs) : 433, 475
. : milestone, 454,
iast_TELEMETRY_OFF (481.506 µs) : 460, 503
. : milestone, 482,
tracing (446.753 µs) : 426, 467
. : milestone, 447,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~fd72025912, baseline=1.45.0-SNAPSHOT~a8b33d5c49
dateFormat X
axisFormat %s
section baseline
no_agent (1.358 ms) : 1337, 1379
. : milestone, 1358,
appsec (1.742 ms) : 1718, 1765
. : milestone, 1742,
appsec_no_iast (1.752 ms) : 1728, 1777
. : milestone, 1752,
iast (1.498 ms) : 1475, 1522
. : milestone, 1498,
profiling (1.515 ms) : 1490, 1540
. : milestone, 1515,
tracing (1.49 ms) : 1464, 1516
. : milestone, 1490,
section candidate
no_agent (1.376 ms) : 1356, 1395
. : milestone, 1376,
appsec (1.757 ms) : 1732, 1781
. : milestone, 1757,
appsec_no_iast (1.728 ms) : 1703, 1754
. : milestone, 1728,
iast (1.495 ms) : 1472, 1518
. : milestone, 1495,
profiling (1.54 ms) : 1515, 1565
. : milestone, 1540,
tracing (1.488 ms) : 1464, 1511
. : milestone, 1488,
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 tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~fd72025912, baseline=1.45.0-SNAPSHOT~a8b33d5c49
dateFormat X
axisFormat %s
section baseline
no_agent (1.473 ms) : 1462, 1485
. : milestone, 1473,
appsec (2.358 ms) : 2316, 2401
. : milestone, 2358,
iast (2.097 ms) : 2044, 2150
. : milestone, 2097,
iast_GLOBAL (2.143 ms) : 2089, 2196
. : milestone, 2143,
profiling (1.959 ms) : 1917, 2002
. : milestone, 1959,
tracing (1.94 ms) : 1899, 1981
. : milestone, 1940,
section candidate
no_agent (1.47 ms) : 1459, 1482
. : milestone, 1470,
appsec (2.369 ms) : 2327, 2411
. : milestone, 2369,
iast (2.094 ms) : 2041, 2147
. : milestone, 2094,
iast_GLOBAL (2.131 ms) : 2078, 2185
. : milestone, 2131,
profiling (1.99 ms) : 1946, 2035
. : milestone, 1990,
tracing (1.937 ms) : 1897, 1978
. : milestone, 1937,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~fd72025912, baseline=1.45.0-SNAPSHOT~a8b33d5c49
dateFormat X
axisFormat %s
section baseline
no_agent (15.475 s) : 15475000, 15475000
. : milestone, 15475000,
appsec (15.074 s) : 15074000, 15074000
. : milestone, 15074000,
iast (18.918 s) : 18918000, 18918000
. : milestone, 18918000,
iast_GLOBAL (17.724 s) : 17724000, 17724000
. : milestone, 17724000,
profiling (15.108 s) : 15108000, 15108000
. : milestone, 15108000,
tracing (14.777 s) : 14777000, 14777000
. : milestone, 14777000,
section candidate
no_agent (14.961 s) : 14961000, 14961000
. : milestone, 14961000,
appsec (15.149 s) : 15149000, 15149000
. : milestone, 15149000,
iast (18.8 s) : 18800000, 18800000
. : milestone, 18800000,
iast_GLOBAL (18.098 s) : 18098000, 18098000
. : milestone, 18098000,
profiling (15.013 s) : 15013000, 15013000
. : milestone, 15013000,
tracing (15.054 s) : 15054000, 15054000
. : milestone, 15054000,
|
What Does This Do
Motivation
Telemetry system is shut down when the JVM terminates. Shutdown interrupts telemetry thread, and if a telemetry request was in progress when the shutdown starts that request is aborted and an
InterruptedIOException
is thrown.Current behaviour is to log an error in this case, and possibly reattempt the request with a different dispatch method (intake vs agent).
This is not suitable for CI Visibility: oftentimes traced JVMs are short-lived (e.g. they need to run a few unit tests and then terminate). In such cases telemetry will fail to be sent (and we will miss useful data in the backend, for example the number of test start events will not correspond to the number of test finished events), and an error will be logged which is confusing to the customer. The changes in this PR are meant to address these shortcomings.
Contributor Checklist
type:
and (comp:
orinst:
) labels in addition to any usefull labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: SDTEST-1411