Skip to content
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

Skip telemetry heartbeat and add app closing event on shutdown flush #7496

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

smola
Copy link
Member

@smola smola commented Aug 23, 2024

What Does This Do

  • Skip heartbeat on last telemetry message batch, on message flush. If a heartbeat was needed, it would have been scheduled already.
  • Include the app-closing message in the same batch as the rest of messages. This avoids wasting resources by sending 2 HTTP requests instead of 1 during shutdown. I did not add a special case for when there's no pending data to avoid the message-batch wrapper. I doubt it's worth it.

Motivation

Review originally motivated by flaky system test that pointed that we sent heartbeats too fast. It turns out it was the heartbeat of the shutdown flush.

Additional Notes

Contributor Checklist

@pr-commenter
Copy link

pr-commenter bot commented Aug 23, 2024

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master smola/telemetry-app-closing-fix
git_commit_date 1734342386 1734342268
git_commit_sha 0196f1e 4e5feaf
release_version 1.45.0-SNAPSHOT~0196f1eb01 1.45.0-SNAPSHOT~4e5feaf456
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1734344670 1734344670
ci_job_id 739906503 739906503
ci_pipeline_id 51181852 51181852
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
module Agent Agent
parent None None
variant iast iast

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 54 metrics, 9 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.45.0-SNAPSHOT~4e5feaf456, baseline=1.45.0-SNAPSHOT~0196f1eb01

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.095 s) : 0, 1095114
Total [baseline] (8.646 s) : 0, 8646342
Agent [candidate] (1.092 s) : 0, 1092407
Total [candidate] (8.611 s) : 0, 8610866
section iast
Agent [baseline] (1.22 s) : 0, 1219644
Total [baseline] (9.204 s) : 0, 9204050
Agent [candidate] (1.221 s) : 0, 1220888
Total [candidate] (9.208 s) : 0, 9207747
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.231 s) : 0, 1230636
Total [baseline] (9.171 s) : 0, 9171037
Agent [candidate] (1.223 s) : 0, 1222536
Total [candidate] (9.154 s) : 0, 9153553
section iast_TELEMETRY_OFF
Agent [baseline] (1.213 s) : 0, 1213133
Total [baseline] (9.148 s) : 0, 9147509
Agent [candidate] (1.214 s) : 0, 1214427
Total [candidate] (9.196 s) : 0, 9195845
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.095 s -
Agent iast 1.22 s 124.53 ms (11.4%)
Agent iast_HARDCODED_SECRET_DISABLED 1.231 s 135.522 ms (12.4%)
Agent iast_TELEMETRY_OFF 1.213 s 118.019 ms (10.8%)
Total tracing 8.646 s -
Total iast 9.204 s 557.707 ms (6.5%)
Total iast_HARDCODED_SECRET_DISABLED 9.171 s 524.695 ms (6.1%)
Total iast_TELEMETRY_OFF 9.148 s 501.166 ms (5.8%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.092 s -
Agent iast 1.221 s 128.481 ms (11.8%)
Agent iast_HARDCODED_SECRET_DISABLED 1.223 s 130.129 ms (11.9%)
Agent iast_TELEMETRY_OFF 1.214 s 122.02 ms (11.2%)
Total tracing 8.611 s -
Total iast 9.208 s 596.882 ms (6.9%)
Total iast_HARDCODED_SECRET_DISABLED 9.154 s 542.688 ms (6.3%)
Total iast_TELEMETRY_OFF 9.196 s 584.979 ms (6.8%)
gantt
    title insecure-bank - break down per module: candidate=1.45.0-SNAPSHOT~4e5feaf456, baseline=1.45.0-SNAPSHOT~0196f1eb01

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (695.386 ms) : 0, 695386
BytebuddyAgent [candidate] (695.344 ms) : 0, 695344
GlobalTracer [baseline] (317.143 ms) : 0, 317143
GlobalTracer [candidate] (316.134 ms) : 0, 316134
AppSec [baseline] (54.441 ms) : 0, 54441
AppSec [candidate] (54.477 ms) : 0, 54477
Remote Config [baseline] (693.817 µs) : 0, 694
Remote Config [candidate] (674.169 µs) : 0, 674
Telemetry [baseline] (13.732 ms) : 0, 13732
Telemetry [candidate] (12.067 ms) : 0, 12067
section iast
BytebuddyAgent [baseline] (812.928 ms) : 0, 812928
BytebuddyAgent [candidate] (813.912 ms) : 0, 813912
GlobalTracer [baseline] (305.374 ms) : 0, 305374
GlobalTracer [candidate] (306.281 ms) : 0, 306281
AppSec [baseline] (57.386 ms) : 0, 57386
AppSec [candidate] (57.697 ms) : 0, 57697
Remote Config [baseline] (650.123 µs) : 0, 650
Remote Config [candidate] (632.143 µs) : 0, 632
Telemetry [baseline] (7.489 ms) : 0, 7489
Telemetry [candidate] (7.507 ms) : 0, 7507
IAST [baseline] (22.116 ms) : 0, 22116
IAST [candidate] (21.113 ms) : 0, 21113
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (820.758 ms) : 0, 820758
BytebuddyAgent [candidate] (814.757 ms) : 0, 814757
GlobalTracer [baseline] (307.582 ms) : 0, 307582
GlobalTracer [candidate] (306.357 ms) : 0, 306357
AppSec [baseline] (57.741 ms) : 0, 57741
AppSec [candidate] (56.628 ms) : 0, 56628
Remote Config [baseline] (626.206 µs) : 0, 626
Remote Config [candidate] (618.36 µs) : 0, 618
Telemetry [baseline] (7.584 ms) : 0, 7584
Telemetry [candidate] (7.489 ms) : 0, 7489
IAST [baseline] (22.377 ms) : 0, 22377
IAST [candidate] (22.874 ms) : 0, 22874
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (808.042 ms) : 0, 808042
BytebuddyAgent [candidate] (809.344 ms) : 0, 809344
GlobalTracer [baseline] (305.089 ms) : 0, 305089
GlobalTracer [candidate] (305.153 ms) : 0, 305153
AppSec [baseline] (57.687 ms) : 0, 57687
AppSec [candidate] (57.84 ms) : 0, 57840
Remote Config [baseline] (642.259 µs) : 0, 642
Remote Config [candidate] (611.178 µs) : 0, 611
Telemetry [baseline] (7.378 ms) : 0, 7378
Telemetry [candidate] (7.319 ms) : 0, 7319
IAST [baseline] (20.632 ms) : 0, 20632
IAST [candidate] (20.45 ms) : 0, 20450
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.45.0-SNAPSHOT~4e5feaf456, baseline=1.45.0-SNAPSHOT~0196f1eb01

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.099 s) : 0, 1098782
Total [baseline] (10.399 s) : 0, 10398754
Agent [candidate] (1.09 s) : 0, 1090129
Total [candidate] (10.429 s) : 0, 10428545
section appsec
Agent [baseline] (1.229 s) : 0, 1229225
Total [baseline] (10.662 s) : 0, 10661886
Agent [candidate] (1.229 s) : 0, 1229333
Total [candidate] (10.673 s) : 0, 10673341
section iast
Agent [baseline] (1.229 s) : 0, 1228808
Total [baseline] (10.984 s) : 0, 10983841
Agent [candidate] (1.238 s) : 0, 1237938
Total [candidate] (11.051 s) : 0, 11050503
section profiling
Agent [baseline] (1.317 s) : 0, 1316739
Total [baseline] (10.802 s) : 0, 10801997
Agent [candidate] (1.314 s) : 0, 1314079
Total [candidate] (10.775 s) : 0, 10775227
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.099 s -
Agent appsec 1.229 s 130.443 ms (11.9%)
Agent iast 1.229 s 130.027 ms (11.8%)
Agent profiling 1.317 s 217.957 ms (19.8%)
Total tracing 10.399 s -
Total appsec 10.662 s 263.132 ms (2.5%)
Total iast 10.984 s 585.087 ms (5.6%)
Total profiling 10.802 s 403.243 ms (3.9%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.09 s -
Agent appsec 1.229 s 139.205 ms (12.8%)
Agent iast 1.238 s 147.81 ms (13.6%)
Agent profiling 1.314 s 223.95 ms (20.5%)
Total tracing 10.429 s -
Total appsec 10.673 s 244.796 ms (2.3%)
Total iast 11.051 s 621.958 ms (6.0%)
Total profiling 10.775 s 346.682 ms (3.3%)
gantt
    title petclinic - break down per module: candidate=1.45.0-SNAPSHOT~4e5feaf456, baseline=1.45.0-SNAPSHOT~0196f1eb01

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (700.502 ms) : 0, 700502
BytebuddyAgent [candidate] (693.531 ms) : 0, 693531
GlobalTracer [baseline] (318.843 ms) : 0, 318843
GlobalTracer [candidate] (316.057 ms) : 0, 316057
AppSec [baseline] (54.928 ms) : 0, 54928
AppSec [candidate] (54.829 ms) : 0, 54829
Remote Config [baseline] (678.303 µs) : 0, 678
Remote Config [candidate] (701.452 µs) : 0, 701
Telemetry [baseline] (10.034 ms) : 0, 10034
Telemetry [candidate] (11.311 ms) : 0, 11311
section appsec
BytebuddyAgent [baseline] (714.931 ms) : 0, 714931
BytebuddyAgent [candidate] (714.58 ms) : 0, 714580
GlobalTracer [baseline] (314.286 ms) : 0, 314286
GlobalTracer [candidate] (314.882 ms) : 0, 314882
AppSec [baseline] (166.59 ms) : 0, 166590
AppSec [candidate] (168.228 ms) : 0, 168228
IAST [baseline] (20.426 ms) : 0, 20426
IAST [candidate] (19.659 ms) : 0, 19659
Remote Config [baseline] (644.33 µs) : 0, 644
Remote Config [candidate] (633.742 µs) : 0, 634
Telemetry [baseline] (8.831 ms) : 0, 8831
Telemetry [candidate] (7.428 ms) : 0, 7428
section iast
BytebuddyAgent [baseline] (819.46 ms) : 0, 819460
BytebuddyAgent [candidate] (826.877 ms) : 0, 826877
GlobalTracer [baseline] (307.675 ms) : 0, 307675
GlobalTracer [candidate] (308.663 ms) : 0, 308663
AppSec [baseline] (58.273 ms) : 0, 58273
AppSec [candidate] (57.897 ms) : 0, 57897
IAST [baseline] (21.412 ms) : 0, 21412
IAST [candidate] (22.33 ms) : 0, 22330
Remote Config [baseline] (634.76 µs) : 0, 635
Remote Config [candidate] (630.549 µs) : 0, 631
Telemetry [baseline] (7.541 ms) : 0, 7541
Telemetry [candidate] (7.55 ms) : 0, 7550
section profiling
BytebuddyAgent [baseline] (689.549 ms) : 0, 689549
BytebuddyAgent [candidate] (688.41 ms) : 0, 688410
GlobalTracer [baseline] (432.249 ms) : 0, 432249
GlobalTracer [candidate] (430.824 ms) : 0, 430824
AppSec [baseline] (53.687 ms) : 0, 53687
AppSec [candidate] (53.839 ms) : 0, 53839
Remote Config [baseline] (670.943 µs) : 0, 671
Remote Config [candidate] (666.796 µs) : 0, 667
Telemetry [baseline] (7.64 ms) : 0, 7640
Telemetry [candidate] (7.584 ms) : 0, 7584
ProfilingAgent [baseline] (93.811 ms) : 0, 93811
ProfilingAgent [candidate] (93.65 ms) : 0, 93650
Profiling [baseline] (93.834 ms) : 0, 93834
Profiling [candidate] (93.674 ms) : 0, 93674
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2024-12-16T09:54:41 2024-12-16T10:01:39
git_branch master smola/telemetry-app-closing-fix
git_commit_date 1734342386 1734342268
git_commit_sha 0196f1e 4e5feaf
release_version 1.45.0-SNAPSHOT~0196f1eb01 1.45.0-SNAPSHOT~4e5feaf456
start_time 2024-12-16T09:54:27 2024-12-16T10:01:26
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1734343653 1734343653
ci_job_id 739906504 739906504
ci_pipeline_id 51181852 51181852
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
variant iast iast

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 16 unstable metrics.

Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~4e5feaf456, baseline=1.45.0-SNAPSHOT~0196f1eb01
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.359 ms) : 1339, 1378
.   : milestone, 1359,
appsec (1.754 ms) : 1731, 1778
.   : milestone, 1754,
appsec_no_iast (1.771 ms) : 1747, 1795
.   : milestone, 1771,
iast (1.492 ms) : 1469, 1514
.   : milestone, 1492,
profiling (1.504 ms) : 1481, 1528
.   : milestone, 1504,
tracing (1.508 ms) : 1484, 1532
.   : milestone, 1508,
section candidate
no_agent (1.363 ms) : 1344, 1382
.   : milestone, 1363,
appsec (1.771 ms) : 1747, 1795
.   : milestone, 1771,
appsec_no_iast (1.758 ms) : 1732, 1783
.   : milestone, 1758,
iast (1.485 ms) : 1462, 1507
.   : milestone, 1485,
profiling (1.509 ms) : 1486, 1532
.   : milestone, 1509,
tracing (1.496 ms) : 1472, 1520
.   : milestone, 1496,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.359 ms [1.339 ms, 1.378 ms] -
appsec 1.754 ms [1.731 ms, 1.778 ms] 395.695 µs (29.1%)
appsec_no_iast 1.771 ms [1.747 ms, 1.795 ms] 412.459 µs (30.4%)
iast 1.492 ms [1.469 ms, 1.514 ms] 132.899 µs (9.8%)
profiling 1.504 ms [1.481 ms, 1.528 ms] 145.627 µs (10.7%)
tracing 1.508 ms [1.484 ms, 1.532 ms] 148.885 µs (11.0%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.363 ms [1.344 ms, 1.382 ms] -
appsec 1.771 ms [1.747 ms, 1.795 ms] 407.429 µs (29.9%)
appsec_no_iast 1.758 ms [1.732 ms, 1.783 ms] 394.469 µs (28.9%)
iast 1.485 ms [1.462 ms, 1.507 ms] 121.875 µs (8.9%)
profiling 1.509 ms [1.486 ms, 1.532 ms] 145.895 µs (10.7%)
tracing 1.496 ms [1.472 ms, 1.52 ms] 132.987 µs (9.8%)
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~4e5feaf456, baseline=1.45.0-SNAPSHOT~0196f1eb01
    dateFormat X
    axisFormat %s
section baseline
no_agent (373.559 µs) : 353, 394
.   : milestone, 374,
iast (493.93 µs) : 473, 515
.   : milestone, 494,
iast_FULL (656.413 µs) : 635, 678
.   : milestone, 656,
iast_GLOBAL (518.841 µs) : 497, 541
.   : milestone, 519,
iast_HARDCODED_SECRET_DISABLED (495.002 µs) : 474, 516
.   : milestone, 495,
iast_INACTIVE (448.419 µs) : 428, 469
.   : milestone, 448,
iast_TELEMETRY_OFF (481.665 µs) : 461, 503
.   : milestone, 482,
tracing (443.46 µs) : 423, 464
.   : milestone, 443,
section candidate
no_agent (375.728 µs) : 356, 395
.   : milestone, 376,
iast (492.067 µs) : 471, 514
.   : milestone, 492,
iast_FULL (655.376 µs) : 634, 677
.   : milestone, 655,
iast_GLOBAL (529.26 µs) : 506, 552
.   : milestone, 529,
iast_HARDCODED_SECRET_DISABLED (495.703 µs) : 474, 517
.   : milestone, 496,
iast_INACTIVE (460.479 µs) : 439, 482
.   : milestone, 460,
iast_TELEMETRY_OFF (481.65 µs) : 460, 503
.   : milestone, 482,
tracing (445.579 µs) : 425, 466
.   : milestone, 446,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 373.559 µs [353.221 µs, 393.898 µs] -
iast 493.93 µs [472.532 µs, 515.329 µs] 120.371 µs (32.2%)
iast_FULL 656.413 µs [635.035 µs, 677.791 µs] 282.854 µs (75.7%)
iast_GLOBAL 518.841 µs [496.783 µs, 540.899 µs] 145.282 µs (38.9%)
iast_HARDCODED_SECRET_DISABLED 495.002 µs [473.645 µs, 516.358 µs] 121.442 µs (32.5%)
iast_INACTIVE 448.419 µs [427.684 µs, 469.154 µs] 74.86 µs (20.0%)
iast_TELEMETRY_OFF 481.665 µs [460.509 µs, 502.821 µs] 108.105 µs (28.9%)
tracing 443.46 µs [423.01 µs, 463.91 µs] 69.901 µs (18.7%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 375.728 µs [356.055 µs, 395.401 µs] -
iast 492.067 µs [470.527 µs, 513.607 µs] 116.339 µs (31.0%)
iast_FULL 655.376 µs [633.959 µs, 676.793 µs] 279.648 µs (74.4%)
iast_GLOBAL 529.26 µs [506.48 µs, 552.04 µs] 153.532 µs (40.9%)
iast_HARDCODED_SECRET_DISABLED 495.703 µs [474.209 µs, 517.196 µs] 119.975 µs (31.9%)
iast_INACTIVE 460.479 µs [439.002 µs, 481.956 µs] 84.751 µs (22.6%)
iast_TELEMETRY_OFF 481.65 µs [460.294 µs, 503.006 µs] 105.922 µs (28.2%)
tracing 445.579 µs [425.159 µs, 465.998 µs] 69.851 µs (18.6%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master smola/telemetry-app-closing-fix
git_commit_date 1734342386 1734342268
git_commit_sha 0196f1e 4e5feaf
release_version 1.45.0-SNAPSHOT~0196f1eb01 1.45.0-SNAPSHOT~4e5feaf456
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1734344215 1734344215
ci_job_id 739906505 739906505
ci_pipeline_id 51181852 51181852
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
variant appsec appsec

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics.

Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~4e5feaf456, baseline=1.45.0-SNAPSHOT~0196f1eb01
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.897 s) : 14897000, 14897000
.   : milestone, 14897000,
appsec (15.043 s) : 15043000, 15043000
.   : milestone, 15043000,
iast (18.647 s) : 18647000, 18647000
.   : milestone, 18647000,
iast_GLOBAL (17.723 s) : 17723000, 17723000
.   : milestone, 17723000,
profiling (15.302 s) : 15302000, 15302000
.   : milestone, 15302000,
tracing (15.221 s) : 15221000, 15221000
.   : milestone, 15221000,
section candidate
no_agent (15.405 s) : 15405000, 15405000
.   : milestone, 15405000,
appsec (15.003 s) : 15003000, 15003000
.   : milestone, 15003000,
iast (18.769 s) : 18769000, 18769000
.   : milestone, 18769000,
iast_GLOBAL (17.922 s) : 17922000, 17922000
.   : milestone, 17922000,
profiling (14.995 s) : 14995000, 14995000
.   : milestone, 14995000,
tracing (14.958 s) : 14958000, 14958000
.   : milestone, 14958000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.897 s [14.897 s, 14.897 s] -
appsec 15.043 s [15.043 s, 15.043 s] 146.0 ms (1.0%)
iast 18.647 s [18.647 s, 18.647 s] 3.75 s (25.2%)
iast_GLOBAL 17.723 s [17.723 s, 17.723 s] 2.826 s (19.0%)
profiling 15.302 s [15.302 s, 15.302 s] 405.0 ms (2.7%)
tracing 15.221 s [15.221 s, 15.221 s] 324.0 ms (2.2%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.405 s [15.405 s, 15.405 s] -
appsec 15.003 s [15.003 s, 15.003 s] -402.0 ms (-2.6%)
iast 18.769 s [18.769 s, 18.769 s] 3.364 s (21.8%)
iast_GLOBAL 17.922 s [17.922 s, 17.922 s] 2.517 s (16.3%)
profiling 14.995 s [14.995 s, 14.995 s] -410.0 ms (-2.7%)
tracing 14.958 s [14.958 s, 14.958 s] -447.0 ms (-2.9%)
Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~4e5feaf456, baseline=1.45.0-SNAPSHOT~0196f1eb01
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.47 ms) : 1459, 1482
.   : milestone, 1470,
appsec (2.35 ms) : 2308, 2392
.   : milestone, 2350,
iast (2.093 ms) : 2040, 2146
.   : milestone, 2093,
iast_GLOBAL (2.132 ms) : 2078, 2185
.   : milestone, 2132,
profiling (1.964 ms) : 1921, 2007
.   : milestone, 1964,
tracing (1.929 ms) : 1888, 1969
.   : milestone, 1929,
section candidate
no_agent (1.469 ms) : 1457, 1480
.   : milestone, 1469,
appsec (2.343 ms) : 2301, 2384
.   : milestone, 2343,
iast (2.094 ms) : 2041, 2147
.   : milestone, 2094,
iast_GLOBAL (2.135 ms) : 2082, 2188
.   : milestone, 2135,
profiling (1.983 ms) : 1939, 2026
.   : milestone, 1983,
tracing (1.933 ms) : 1893, 1974
.   : milestone, 1933,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.47 ms [1.459 ms, 1.482 ms] -
appsec 2.35 ms [2.308 ms, 2.392 ms] 879.579 µs (59.8%)
iast 2.093 ms [2.04 ms, 2.146 ms] 623.083 µs (42.4%)
iast_GLOBAL 2.132 ms [2.078 ms, 2.185 ms] 661.257 µs (45.0%)
profiling 1.964 ms [1.921 ms, 2.007 ms] 493.477 µs (33.6%)
tracing 1.929 ms [1.888 ms, 1.969 ms] 458.512 µs (31.2%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.469 ms [1.457 ms, 1.48 ms] -
appsec 2.343 ms [2.301 ms, 2.384 ms] 874.244 µs (59.5%)
iast 2.094 ms [2.041 ms, 2.147 ms] 625.43 µs (42.6%)
iast_GLOBAL 2.135 ms [2.082 ms, 2.188 ms] 666.406 µs (45.4%)
profiling 1.983 ms [1.939 ms, 2.026 ms] 514.354 µs (35.0%)
tracing 1.933 ms [1.893 ms, 1.974 ms] 464.919 µs (31.7%)

@smola smola marked this pull request as ready for review August 26, 2024 07:28
@smola smola requested a review from a team as a code owner August 26, 2024 07:28
request.writeHeartbeat();
if (isClosing) {
// Write early, if moved, ensure it does not get skipped because of size limits.
request.writeAppClosing();

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As a side effect, this changes the request type for the app closing event, it won't be app-closing anymore but a message-batch.

Can this cause any issues further down the line in the backend (probably not)?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not really. The only problem is that we won't be optimizing the message size for the case where there is only an app-closing message. I think that will usually not be the case because of metrics, and anyway it's not that much overhead.

@smola smola requested a review from a team September 2, 2024 07:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants