Skip to content

Support java.util.Timer once scheduling#5708

Merged
amarziali merged 2 commits into
masterfrom
andrea.marziali/timertask
Aug 16, 2023
Merged

Support java.util.Timer once scheduling#5708
amarziali merged 2 commits into
masterfrom
andrea.marziali/timertask

Conversation

@amarziali

Copy link
Copy Markdown
Contributor

What Does This Do

Support context propagation on java.util.Timer for non repeated executions

Motivation

Additional Notes

@amarziali
amarziali requested a review from a team as a code owner August 10, 2023 14:40
@amarziali
amarziali force-pushed the andrea.marziali/timertask branch from 2a62dfb to 0fdc483 Compare August 10, 2023 14:46
@amarziali amarziali added the inst: others All other instrumentations label Aug 10, 2023
@pr-commenter

pr-commenter Bot commented Aug 10, 2023

Copy link
Copy Markdown

Benchmarks

Startup

Parameters

Baseline Candidate
commit 1.20.0-SNAPSHOT~51cca99355 1.20.0-SNAPSHOT~3111abac00
config baseline candidate
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
module Agent Agent
parent None None
variant appsec appsec

Summary

Found 2 performance improvements and 2 performance regressions! Performance is the same for 58 cases.

scenario Δ mean execution_time candidate mean execution_time baseline mean execution_time
scenario:insecure-bank:iast:IAST better
[-1207.292µs; -569.198µs] or [-8.470%; -3.993%]
13.366ms 14.254ms
scenario:insecure-bank:iast:Remote Config worse
[+17.045µs; +49.843µs] or [+2.812%; +8.222%]
639.669µs 606.225µs
scenario:insecure-bank:iast:Telemetry worse
[+128.908µs; +447.533µs] or [+2.491%; +8.648%]
5.463ms 5.175ms
scenario:petclinic:iast:IAST better
[-1.532ms; -0.652ms] or [-10.647%; -4.531%]
13.299ms 14.391ms
Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.20.0-SNAPSHOT~3111abac00, baseline=1.20.0-SNAPSHOT~51cca99355

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (982.811 ms) : 0, 982811
Total [baseline] (8.647 s) : 0, 8647250
Agent [candidate] (987.171 ms) : 0, 987171
Total [candidate] (8.656 s) : 0, 8656486
section appsec
Agent [baseline] (1.068 s) : 0, 1068221
Total [baseline] (8.725 s) : 0, 8725431
Agent [candidate] (1.072 s) : 0, 1071560
Total [candidate] (8.724 s) : 0, 8723750
section iast
Agent [baseline] (1.087 s) : 0, 1087168
Total [baseline] (9.193 s) : 0, 9192695
Agent [candidate] (1.092 s) : 0, 1091997
Total [candidate] (9.208 s) : 0, 9207984
section profiling
Agent [baseline] (1.167 s) : 0, 1167211
Total [baseline] (8.956 s) : 0, 8956231
Agent [candidate] (1.157 s) : 0, 1156920
Total [candidate] (8.871 s) : 0, 8870683
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 982.811 ms -
Agent appsec 1.068 s 85.41 ms (8.7%)
Agent iast 1.087 s 104.357 ms (10.6%)
Agent profiling 1.167 s 184.4 ms (18.8%)
Total tracing 8.647 s -
Total appsec 8.725 s 78.181 ms (0.9%)
Total iast 9.193 s 545.445 ms (6.3%)
Total profiling 8.956 s 308.981 ms (3.6%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 987.171 ms -
Agent appsec 1.072 s 84.39 ms (8.5%)
Agent iast 1.092 s 104.826 ms (10.6%)
Agent profiling 1.157 s 169.749 ms (17.2%)
Total tracing 8.656 s -
Total appsec 8.724 s 67.264 ms (0.8%)
Total iast 9.208 s 551.498 ms (6.4%)
Total profiling 8.871 s 214.197 ms (2.5%)
gantt
    title insecure-bank - break down per module: candidate=1.20.0-SNAPSHOT~3111abac00, baseline=1.20.0-SNAPSHOT~51cca99355

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (608.553 ms) : 0, 608553
BytebuddyAgent [candidate] (611.309 ms) : 0, 611309
GlobalTracer [baseline] (283.659 ms) : 0, 283659
GlobalTracer [candidate] (285.041 ms) : 0, 285041
AppSec [baseline] (50.335 ms) : 0, 50335
AppSec [candidate] (50.376 ms) : 0, 50376
Remote Config [baseline] (658.764 µs) : 0, 659
Remote Config [candidate] (661.735 µs) : 0, 662
Telemetry [baseline] (5.373 ms) : 0, 5373
Telemetry [candidate] (5.415 ms) : 0, 5415
section appsec
BytebuddyAgent [baseline] (609.397 ms) : 0, 609397
BytebuddyAgent [candidate] (611.262 ms) : 0, 611262
GlobalTracer [baseline] (283.747 ms) : 0, 283747
GlobalTracer [candidate] (285.043 ms) : 0, 285043
AppSec [baseline] (134.919 ms) : 0, 134919
AppSec [candidate] (135.094 ms) : 0, 135094
Remote Config [baseline] (722.651 µs) : 0, 723
Remote Config [candidate] (735.499 µs) : 0, 735
Telemetry [baseline] (5.188 ms) : 0, 5188
Telemetry [candidate] (5.176 ms) : 0, 5176
section iast
BytebuddyAgent [baseline] (714.252 ms) : 0, 714252
BytebuddyAgent [candidate] (718.106 ms) : 0, 718106
GlobalTracer [baseline] (271.894 ms) : 0, 271894
GlobalTracer [candidate] (272.554 ms) : 0, 272554
AppSec [baseline] (46.628 ms) : 0, 46628
AppSec [candidate] (47.427 ms) : 0, 47427
Remote Config [baseline] (606.225 µs) : 0, 606
Remote Config [candidate] (639.669 µs) : 0, 640
Telemetry [baseline] (5.175 ms) : 0, 5175
Telemetry [candidate] (5.463 ms) : 0, 5463
IAST [baseline] (14.254 ms) : 0, 14254
IAST [candidate] (13.366 ms) : 0, 13366
section profiling
ProfilingAgent [baseline] (75.484 ms) : 0, 75484
ProfilingAgent [candidate] (76.466 ms) : 0, 76466
BytebuddyAgent [baseline] (629.833 ms) : 0, 629833
BytebuddyAgent [candidate] (623.363 ms) : 0, 623363
GlobalTracer [baseline] (352.648 ms) : 0, 352648
GlobalTracer [candidate] (349.235 ms) : 0, 349235
AppSec [baseline] (49.652 ms) : 0, 49652
AppSec [candidate] (49.164 ms) : 0, 49164
Remote Config [baseline] (658.958 µs) : 0, 659
Remote Config [candidate] (656.207 µs) : 0, 656
Telemetry [baseline] (5.407 ms) : 0, 5407
Telemetry [candidate] (5.343 ms) : 0, 5343
Profiling [baseline] (75.508 ms) : 0, 75508
Profiling [candidate] (76.49 ms) : 0, 76490
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.20.0-SNAPSHOT~3111abac00, baseline=1.20.0-SNAPSHOT~51cca99355

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (984.952 ms) : 0, 984952
Total [baseline] (9.184 s) : 0, 9183786
Agent [candidate] (986.206 ms) : 0, 986206
Total [candidate] (9.214 s) : 0, 9214170
section appsec
Agent [baseline] (1.069 s) : 0, 1068635
Total [baseline] (9.26 s) : 0, 9259922
Agent [candidate] (1.069 s) : 0, 1068617
Total [candidate] (9.25 s) : 0, 9250178
section iast
Agent [baseline] (1.088 s) : 0, 1088262
Total [baseline] (9.417 s) : 0, 9416757
Agent [candidate] (1.09 s) : 0, 1090205
Total [candidate] (9.484 s) : 0, 9484213
section profiling
Agent [baseline] (1.156 s) : 0, 1155608
Total [baseline] (9.466 s) : 0, 9466191
Agent [candidate] (1.158 s) : 0, 1157895
Total [candidate] (9.463 s) : 0, 9463136
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 984.952 ms -
Agent appsec 1.069 s 83.683 ms (8.5%)
Agent iast 1.088 s 103.31 ms (10.5%)
Agent profiling 1.156 s 170.656 ms (17.3%)
Total tracing 9.184 s -
Total appsec 9.26 s 76.135 ms (0.8%)
Total iast 9.417 s 232.971 ms (2.5%)
Total profiling 9.466 s 282.405 ms (3.1%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 986.206 ms -
Agent appsec 1.069 s 82.411 ms (8.4%)
Agent iast 1.09 s 103.999 ms (10.5%)
Agent profiling 1.158 s 171.689 ms (17.4%)
Total tracing 9.214 s -
Total appsec 9.25 s 36.008 ms (0.4%)
Total iast 9.484 s 270.043 ms (2.9%)
Total profiling 9.463 s 248.966 ms (2.7%)
gantt
    title petclinic - break down per module: candidate=1.20.0-SNAPSHOT~3111abac00, baseline=1.20.0-SNAPSHOT~51cca99355

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (610.323 ms) : 0, 610323
BytebuddyAgent [candidate] (611.308 ms) : 0, 611308
GlobalTracer [baseline] (284.192 ms) : 0, 284192
GlobalTracer [candidate] (284.73 ms) : 0, 284730
AppSec [baseline] (50.013 ms) : 0, 50013
AppSec [candidate] (49.906 ms) : 0, 49906
Remote Config [baseline] (659.621 µs) : 0, 660
Remote Config [candidate] (656.937 µs) : 0, 657
Telemetry [baseline] (5.393 ms) : 0, 5393
Telemetry [candidate] (5.375 ms) : 0, 5375
section appsec
BytebuddyAgent [baseline] (609.858 ms) : 0, 609858
BytebuddyAgent [candidate] (609.724 ms) : 0, 609724
GlobalTracer [baseline] (283.65 ms) : 0, 283650
GlobalTracer [candidate] (284.159 ms) : 0, 284159
AppSec [baseline] (135.088 ms) : 0, 135088
AppSec [candidate] (134.596 ms) : 0, 134596
Remote Config [baseline] (725.845 µs) : 0, 726
Remote Config [candidate] (716.497 µs) : 0, 716
Telemetry [baseline] (5.138 ms) : 0, 5138
Telemetry [candidate] (5.196 ms) : 0, 5196
section iast
BytebuddyAgent [baseline] (713.978 ms) : 0, 713978
BytebuddyAgent [candidate] (716.93 ms) : 0, 716930
GlobalTracer [baseline] (272.964 ms) : 0, 272964
GlobalTracer [candidate] (271.933 ms) : 0, 271933
AppSec [baseline] (46.816 ms) : 0, 46816
AppSec [candidate] (47.365 ms) : 0, 47365
Remote Config [baseline] (634.346 µs) : 0, 634
Remote Config [candidate] (630.991 µs) : 0, 631
Telemetry [baseline] (5.261 ms) : 0, 5261
Telemetry [candidate] (5.532 ms) : 0, 5532
IAST [baseline] (14.391 ms) : 0, 14391
IAST [candidate] (13.299 ms) : 0, 13299
section profiling
ProfilingAgent [baseline] (76.741 ms) : 0, 76741
ProfilingAgent [candidate] (76.653 ms) : 0, 76653
BytebuddyAgent [baseline] (621.831 ms) : 0, 621831
BytebuddyAgent [candidate] (623.392 ms) : 0, 623392
GlobalTracer [baseline] (349.105 ms) : 0, 349105
GlobalTracer [candidate] (349.993 ms) : 0, 349993
AppSec [baseline] (49.146 ms) : 0, 49146
AppSec [candidate] (49.128 ms) : 0, 49128
Remote Config [baseline] (646.825 µs) : 0, 647
Remote Config [candidate] (663.459 µs) : 0, 663
Telemetry [baseline] (5.375 ms) : 0, 5375
Telemetry [candidate] (5.328 ms) : 0, 5328
Profiling [baseline] (76.765 ms) : 0, 76765
Profiling [candidate] (76.677 ms) : 0, 76677
Loading

Load

Parameters

Baseline Candidate
commit 1.20.0-SNAPSHOT~51cca99355 1.20.0-SNAPSHOT~3111abac00
config baseline candidate
end_time 2023-08-16T14:32:01 2023-08-16T14:50:10
start_time 2023-08-16T14:31:43 2023-08-16T14:49:53
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
variant appsec appsec

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 24 cases.

Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.20.0-SNAPSHOT~3111abac00, baseline=1.20.0-SNAPSHOT~51cca99355
    dateFormat X
    axisFormat %s
section baseline
no_agent (364.943 µs) : 345, 385
.   : milestone, 365,
appsec (660.407 µs) : 639, 681
.   : milestone, 660,
iast (465.36 µs) : 445, 486
.   : milestone, 465,
iast_FULL (527.94 µs) : 507, 549
.   : milestone, 528,
iast_INACTIVE (440.22 µs) : 419, 461
.   : milestone, 440,
profiling (444.667 µs) : 423, 466
.   : milestone, 445,
tracing (438.805 µs) : 418, 460
.   : milestone, 439,
section candidate
no_agent (366.73 µs) : 345, 389
.   : milestone, 367,
appsec (665.95 µs) : 645, 686
.   : milestone, 666,
iast (462.837 µs) : 442, 483
.   : milestone, 463,
iast_FULL (527.627 µs) : 507, 548
.   : milestone, 528,
iast_INACTIVE (443.469 µs) : 423, 464
.   : milestone, 443,
profiling (441.029 µs) : 420, 462
.   : milestone, 441,
tracing (443.804 µs) : 423, 465
.   : milestone, 444,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 364.943 µs [344.95 µs, 384.936 µs] -
appsec 660.407 µs [639.336 µs, 681.479 µs] 295.465 µs (81.0%)
iast 465.36 µs [444.608 µs, 486.112 µs] 100.417 µs (27.5%)
iast_FULL 527.94 µs [507.203 µs, 548.678 µs] 162.998 µs (44.7%)
iast_INACTIVE 440.22 µs [419.311 µs, 461.129 µs] 75.278 µs (20.6%)
profiling 444.667 µs [423.3 µs, 466.033 µs] 79.724 µs (21.8%)
tracing 438.805 µs [417.919 µs, 459.69 µs] 73.862 µs (20.2%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 366.73 µs [344.756 µs, 388.704 µs] -
appsec 665.95 µs [645.409 µs, 686.492 µs] 299.22 µs (81.6%)
iast 462.837 µs [442.414 µs, 483.259 µs] 96.106 µs (26.2%)
iast_FULL 527.627 µs [506.957 µs, 548.297 µs] 160.896 µs (43.9%)
iast_INACTIVE 443.469 µs [422.857 µs, 464.082 µs] 76.739 µs (20.9%)
profiling 441.029 µs [419.696 µs, 462.361 µs] 74.298 µs (20.3%)
tracing 443.804 µs [422.704 µs, 464.903 µs] 77.073 µs (21.0%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.20.0-SNAPSHOT~3111abac00, baseline=1.20.0-SNAPSHOT~51cca99355
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.36 ms) : 1341, 1379
.   : milestone, 1360,
appsec (1.691 ms) : 1667, 1716
.   : milestone, 1691,
iast (1.477 ms) : 1453, 1502
.   : milestone, 1477,
profiling (1.478 ms) : 1452, 1504
.   : milestone, 1478,
tracing (1.451 ms) : 1427, 1476
.   : milestone, 1451,
section candidate
no_agent (1.347 ms) : 1328, 1366
.   : milestone, 1347,
appsec (1.688 ms) : 1664, 1712
.   : milestone, 1688,
iast (1.484 ms) : 1460, 1508
.   : milestone, 1484,
profiling (1.453 ms) : 1428, 1478
.   : milestone, 1453,
tracing (1.453 ms) : 1428, 1478
.   : milestone, 1453,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.36 ms [1.341 ms, 1.379 ms] -
appsec 1.691 ms [1.667 ms, 1.716 ms] 331.534 µs (24.4%)
iast 1.477 ms [1.453 ms, 1.502 ms] 117.653 µs (8.7%)
profiling 1.478 ms [1.452 ms, 1.504 ms] 117.982 µs (8.7%)
tracing 1.451 ms [1.427 ms, 1.476 ms] 91.272 µs (6.7%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.347 ms [1.328 ms, 1.366 ms] -
appsec 1.688 ms [1.664 ms, 1.712 ms] 341.095 µs (25.3%)
iast 1.484 ms [1.46 ms, 1.508 ms] 137.037 µs (10.2%)
profiling 1.453 ms [1.428 ms, 1.478 ms] 105.813 µs (7.9%)
tracing 1.453 ms [1.428 ms, 1.478 ms] 105.754 µs (7.9%)

@amarziali
amarziali force-pushed the andrea.marziali/timertask branch from 7b3e1bc to fd9454f Compare August 16, 2023 12:00
@amarziali
amarziali requested a review from devinsba August 16, 2023 12:01
@amarziali
amarziali force-pushed the andrea.marziali/timertask branch from fd9454f to 3111aba Compare August 16, 2023 14:10
@amarziali
amarziali merged commit 09bdc63 into master Aug 16, 2023
@amarziali
amarziali deleted the andrea.marziali/timertask branch August 16, 2023 14:57
@github-actions github-actions Bot added this to the 1.20.0 milestone Aug 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

inst: others All other instrumentations

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants