-
Notifications
You must be signed in to change notification settings - Fork 311
Implement Failed Test Replay #9214
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
base: master
Are you sure you want to change the base?
Conversation
Debugger benchmarksParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 9 metrics, 6 unstable metrics. See unchanged results
Request duration reports for reportsgantt
title reports - request duration [CI 0.99] : candidate=None, baseline=None
dateFormat X
axisFormat %s
section baseline
noprobe (325.633 µs) : 285, 367
. : milestone, 326,
basic (279.407 µs) : 273, 286
. : milestone, 279,
loop (8.966 ms) : 8961, 8971
. : milestone, 8966,
section candidate
noprobe (312.325 µs) : 293, 332
. : milestone, 312,
basic (282.331 µs) : 275, 289
. : milestone, 282,
loop (8.968 ms) : 8964, 8973
. : milestone, 8968,
|
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 47 metrics, 12 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.51.0-SNAPSHOT~ec9c54d63e, baseline=1.53.0-SNAPSHOT~ef2e9f03e6
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.047 s) : 0, 1047152
Total [baseline] (8.577 s) : 0, 8577299
Agent [candidate] (1.06 s) : 0, 1060331
Total [candidate] (8.673 s) : 0, 8672935
section iast
Agent [baseline] (1.175 s) : 0, 1175131
Total [baseline] (9.346 s) : 0, 9345578
Agent [candidate] (1.2 s) : 0, 1199871
Total [candidate] (9.406 s) : 0, 9406343
gantt
title insecure-bank - break down per module: candidate=1.51.0-SNAPSHOT~ec9c54d63e, baseline=1.53.0-SNAPSHOT~ef2e9f03e6
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.429 ms) : 0, 1429
crashtracking [candidate] (1.445 ms) : 0, 1445
BytebuddyAgent [baseline] (731.562 ms) : 0, 731562
BytebuddyAgent [candidate] (741.398 ms) : 0, 741398
GlobalTracer [baseline] (241.74 ms) : 0, 241740
GlobalTracer [candidate] (245.304 ms) : 0, 245304
AppSec [baseline] (29.896 ms) : 0, 29896
AppSec [candidate] (30.639 ms) : 0, 30639
Debugger [baseline] (6.044 ms) : 0, 6044
Debugger [candidate] (6.142 ms) : 0, 6142
Remote Config [baseline] (645.398 µs) : 0, 645
Remote Config [candidate] (670.308 µs) : 0, 670
Telemetry [baseline] (14.892 ms) : 0, 14892
Telemetry [candidate] (13.517 ms) : 0, 13517
section iast
crashtracking [baseline] (1.44 ms) : 0, 1440
crashtracking [candidate] (1.468 ms) : 0, 1468
BytebuddyAgent [baseline] (848.653 ms) : 0, 848653
BytebuddyAgent [candidate] (868.411 ms) : 0, 868411
GlobalTracer [baseline] (232.255 ms) : 0, 232255
GlobalTracer [candidate] (235.205 ms) : 0, 235205
IAST [baseline] (29.009 ms) : 0, 29009
IAST [candidate] (29.549 ms) : 0, 29549
AppSec [baseline] (27.412 ms) : 0, 27412
AppSec [candidate] (28.314 ms) : 0, 28314
Debugger [baseline] (6.58 ms) : 0, 6580
Debugger [candidate] (6.73 ms) : 0, 6730
Remote Config [baseline] (582.402 µs) : 0, 582
Remote Config [candidate] (600.692 µs) : 0, 601
Telemetry [baseline] (8.236 ms) : 0, 8236
Telemetry [candidate] (8.348 ms) : 0, 8348
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.51.0-SNAPSHOT~ec9c54d63e, baseline=1.53.0-SNAPSHOT~ef2e9f03e6
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.044 s) : 0, 1043706
Total [baseline] (10.725 s) : 0, 10724922
Agent [candidate] (1.054 s) : 0, 1053592
Total [candidate] (10.829 s) : 0, 10829419
section appsec
Agent [baseline] (1.239 s) : 0, 1238658
Total [baseline] (10.865 s) : 0, 10864799
Agent [candidate] (1.22 s) : 0, 1219781
Total [candidate] (10.819 s) : 0, 10819239
section iast
Agent [baseline] (1.176 s) : 0, 1175616
Total [baseline] (10.918 s) : 0, 10918061
Agent [candidate] (1.175 s) : 0, 1174540
Total [candidate] (11.019 s) : 0, 11019229
section profiling
Agent [baseline] (1.194 s) : 0, 1194498
Total [baseline] (10.883 s) : 0, 10882549
Agent [candidate] (1.202 s) : 0, 1201552
Total [candidate] (10.871 s) : 0, 10871450
gantt
title petclinic - break down per module: candidate=1.51.0-SNAPSHOT~ec9c54d63e, baseline=1.53.0-SNAPSHOT~ef2e9f03e6
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.419 ms) : 0, 1419
crashtracking [candidate] (1.439 ms) : 0, 1439
BytebuddyAgent [baseline] (729.332 ms) : 0, 729332
BytebuddyAgent [candidate] (737.346 ms) : 0, 737346
GlobalTracer [baseline] (241.455 ms) : 0, 241455
GlobalTracer [candidate] (243.689 ms) : 0, 243689
AppSec [baseline] (29.875 ms) : 0, 29875
AppSec [candidate] (30.359 ms) : 0, 30359
Debugger [baseline] (6.016 ms) : 0, 6016
Debugger [candidate] (6.077 ms) : 0, 6077
Remote Config [baseline] (654.301 µs) : 0, 654
Remote Config [candidate] (659.173 µs) : 0, 659
Telemetry [baseline] (14.013 ms) : 0, 14013
Telemetry [candidate] (12.872 ms) : 0, 12872
section appsec
crashtracking [baseline] (1.457 ms) : 0, 1457
crashtracking [candidate] (1.438 ms) : 0, 1438
BytebuddyAgent [baseline] (766.26 ms) : 0, 766260
BytebuddyAgent [candidate] (752.547 ms) : 0, 752547
GlobalTracer [baseline] (238.46 ms) : 0, 238460
GlobalTracer [candidate] (235.442 ms) : 0, 235442
AppSec [baseline] (170.047 ms) : 0, 170047
AppSec [candidate] (168.955 ms) : 0, 168955
Debugger [baseline] (7.321 ms) : 0, 7321
Debugger [candidate] (7.917 ms) : 0, 7917
Remote Config [baseline] (640.19 µs) : 0, 640
Remote Config [candidate] (624.134 µs) : 0, 624
Telemetry [baseline] (9.234 ms) : 0, 9234
Telemetry [candidate] (8.418 ms) : 0, 8418
IAST [baseline] (23.923 ms) : 0, 23923
IAST [candidate] (23.425 ms) : 0, 23425
section iast
crashtracking [baseline] (1.437 ms) : 0, 1437
crashtracking [candidate] (1.431 ms) : 0, 1431
BytebuddyAgent [baseline] (847.885 ms) : 0, 847885
BytebuddyAgent [candidate] (847.785 ms) : 0, 847785
GlobalTracer [baseline] (233.593 ms) : 0, 233593
GlobalTracer [candidate] (231.912 ms) : 0, 231912
AppSec [baseline] (25.964 ms) : 0, 25964
AppSec [candidate] (26.229 ms) : 0, 26229
Debugger [baseline] (7.514 ms) : 0, 7514
Debugger [candidate] (9.356 ms) : 0, 9356
Remote Config [baseline] (590.638 µs) : 0, 591
Remote Config [candidate] (595.248 µs) : 0, 595
Telemetry [baseline] (8.324 ms) : 0, 8324
Telemetry [candidate] (8.288 ms) : 0, 8288
IAST [baseline] (29.377 ms) : 0, 29377
IAST [candidate] (28.035 ms) : 0, 28035
section profiling
ProfilingAgent [baseline] (108.633 ms) : 0, 108633
ProfilingAgent [candidate] (109.5 ms) : 0, 109500
crashtracking [baseline] (1.4 ms) : 0, 1400
crashtracking [candidate] (1.418 ms) : 0, 1418
BytebuddyAgent [baseline] (761.228 ms) : 0, 761228
BytebuddyAgent [candidate] (765.633 ms) : 0, 765633
GlobalTracer [baseline] (221.662 ms) : 0, 221662
GlobalTracer [candidate] (222.614 ms) : 0, 222614
AppSec [baseline] (29.954 ms) : 0, 29954
AppSec [candidate] (30.252 ms) : 0, 30252
Debugger [baseline] (6.266 ms) : 0, 6266
Debugger [candidate] (6.345 ms) : 0, 6345
Remote Config [baseline] (704.526 µs) : 0, 705
Remote Config [candidate] (677.704 µs) : 0, 678
Telemetry [baseline] (15.106 ms) : 0, 15106
Telemetry [candidate] (15.276 ms) : 0, 15276
Profiling [baseline] (109.26 ms) : 0, 109260
Profiling [candidate] (110.151 ms) : 0, 110151
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 12 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.51.0-SNAPSHOT~ec9c54d63e, baseline=1.53.0-SNAPSHOT~ef2e9f03e6
dateFormat X
axisFormat %s
section baseline
no_agent (4.367 ms) : 4310, 4424
. : milestone, 4367,
iast (9.402 ms) : 9242, 9561
. : milestone, 9402,
iast_FULL (13.776 ms) : 13508, 14044
. : milestone, 13776,
iast_GLOBAL (10.578 ms) : 10390, 10765
. : milestone, 10578,
profiling (8.793 ms) : 8649, 8936
. : milestone, 8793,
tracing (7.504 ms) : 7392, 7617
. : milestone, 7504,
section candidate
no_agent (4.487 ms) : 4435, 4539
. : milestone, 4487,
iast (9.366 ms) : 9214, 9517
. : milestone, 9366,
iast_FULL (13.623 ms) : 13355, 13891
. : milestone, 13623,
iast_GLOBAL (10.523 ms) : 10335, 10712
. : milestone, 10523,
profiling (8.932 ms) : 8772, 9092
. : milestone, 8932,
tracing (7.659 ms) : 7549, 7769
. : milestone, 7659,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.51.0-SNAPSHOT~ec9c54d63e, baseline=1.53.0-SNAPSHOT~ef2e9f03e6
dateFormat X
axisFormat %s
section baseline
no_agent (37.058 ms) : 36759, 37358
. : milestone, 37058,
appsec (46.84 ms) : 46423, 47257
. : milestone, 46840,
code_origins (44.585 ms) : 44214, 44955
. : milestone, 44585,
iast (44.276 ms) : 43875, 44678
. : milestone, 44276,
profiling (49.829 ms) : 49347, 50310
. : milestone, 49829,
tracing (44.88 ms) : 44491, 45268
. : milestone, 44880,
section candidate
no_agent (36.233 ms) : 35946, 36519
. : milestone, 36233,
appsec (47.49 ms) : 47064, 47916
. : milestone, 47490,
code_origins (45.637 ms) : 45227, 46047
. : milestone, 45637,
iast (45.529 ms) : 45122, 45935
. : milestone, 45529,
profiling (49.068 ms) : 48618, 49518
. : milestone, 49068,
tracing (43.769 ms) : 43375, 44164
. : milestone, 43769,
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.51.0-SNAPSHOT~ec9c54d63e, baseline=1.53.0-SNAPSHOT~ef2e9f03e6
dateFormat X
axisFormat %s
section baseline
no_agent (15.293 s) : 15293000, 15293000
. : milestone, 15293000,
appsec (14.81 s) : 14810000, 14810000
. : milestone, 14810000,
iast (18.301 s) : 18301000, 18301000
. : milestone, 18301000,
iast_GLOBAL (18.135 s) : 18135000, 18135000
. : milestone, 18135000,
profiling (15.903 s) : 15903000, 15903000
. : milestone, 15903000,
tracing (15.119 s) : 15119000, 15119000
. : milestone, 15119000,
section candidate
no_agent (15.052 s) : 15052000, 15052000
. : milestone, 15052000,
appsec (15.037 s) : 15037000, 15037000
. : milestone, 15037000,
iast (18.974 s) : 18974000, 18974000
. : milestone, 18974000,
iast_GLOBAL (18.125 s) : 18125000, 18125000
. : milestone, 18125000,
profiling (15.826 s) : 15826000, 15826000
. : milestone, 15826000,
tracing (14.886 s) : 14886000, 14886000
. : milestone, 14886000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.51.0-SNAPSHOT~ec9c54d63e, baseline=1.53.0-SNAPSHOT~ef2e9f03e6
dateFormat X
axisFormat %s
section baseline
no_agent (1.489 ms) : 1477, 1501
. : milestone, 1489,
appsec (2.483 ms) : 2429, 2536
. : milestone, 2483,
iast (2.216 ms) : 2153, 2279
. : milestone, 2216,
iast_GLOBAL (2.254 ms) : 2191, 2317
. : milestone, 2254,
profiling (2.076 ms) : 2024, 2128
. : milestone, 2076,
tracing (2.022 ms) : 1973, 2070
. : milestone, 2022,
section candidate
no_agent (1.482 ms) : 1471, 1494
. : milestone, 1482,
appsec (2.428 ms) : 2378, 2478
. : milestone, 2428,
iast (2.219 ms) : 2156, 2282
. : milestone, 2219,
iast_GLOBAL (2.262 ms) : 2199, 2325
. : milestone, 2262,
profiling (2.045 ms) : 1995, 2095
. : milestone, 2045,
tracing (2.032 ms) : 1983, 2081
. : milestone, 2032,
|
Code coverage: total 57.25%, patch 45.45% (view details) This comment will be updated automatically if new data arrives.🔗 Commit SHA: ec9c54d | Docs | Was this helpful? Give us feedback! |
What Does This Do
Implements Test Optimization's Failed Test Replay using Live Debugger's Exception Replay. When the feature is enabled and a test is retried due to Auto Test Retries, Exception Replay's logic will create a probe for the exception thrown (in the case of the test probably an assertion error, but not limited to it). When the test is retried, the probe captures debugging information if the exception is encountered again, creating a snapshot of the variables. If the snapshot is captured, it is send as a log to Datadog. The following modifications were made to Exception Replay's original implementation:
Config
. The enabling of Exception Replay now checks for either the property to be marked as enabled or Failed Test Replay being marked as active. This works due to CiVisibility's system being initialized before Live Debugger's.DefaultExceptionDebugger
was modified to support Failed Test Replay:product
field to snapshots, populated withtest_optimization
if Failed Test Replay was marked as active. This allows us to have the option of not billing customers for logs generated by the product.DD_CIVISIBILITY_AGENTLESS_ENABLED
is set, Live Debugger's logic for Exception Replay will use the logs API instead of the agent's.DebuggerSink
on test suite end, to avoid unsent snapshots.Additional changes:
BackendApiFactory.Intake
to a standaloneIntake
, given that it is useful in order to compute agentless mode URLs.failed_test_replay
in test frameworks that support Auto Test Retries.di_enabled
to the Settings response and telemetry.Validation:
MavenSmokeTest
now has an additional test for Failed Test Replay, validating the feature when build system instrumentation is present.JUnitConsoleSmokeTest
to validate the feature in headless mode. This test should ensure that the ordering dependency between CiVisibility's system and Live Debugger's is always accounted for.Motivation
Test Optimization wants to improve the support for Failed Test Replay, implementing it in additional languages apart from JS.
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-2242