Skip to content

Allow disabling JFR profiler manually via configuration - #6428

Merged
jbachorik merged 1 commit into
masterfrom
jb/dsiable_jfr_config
Jan 2, 2024
Merged

Allow disabling JFR profiler manually via configuration#6428
jbachorik merged 1 commit into
masterfrom
jb/dsiable_jfr_config

Conversation

@jbachorik

@jbachorik jbachorik commented Jan 2, 2024

Copy link
Copy Markdown
Contributor

What Does This Do

Adds a debug config option to allow manually disabling the JFR profiler

Motivation

Debugging weird issues with JFR repository we are seeing at some customers

Additional Notes

Jira ticket: PROF-8843

@pr-commenter

pr-commenter Bot commented Jan 2, 2024

Copy link
Copy Markdown

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master jb/dsiable_jfr_config
git_commit_date 1704189023 1704190504
git_commit_sha 7440eac f158574
release_version 1.27.0-SNAPSHOT~7440eac70c 1.27.0-SNAPSHOT~f158574ca1
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1704193154 1704193154
ci_job_id 398487546 398487546
ci_pipeline_id 25718180 25718180
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 45 metrics, 9 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.27.0-SNAPSHOT~f158574ca1, baseline=1.27.0-SNAPSHOT~7440eac70c

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.046 s) : 0, 1045558
Total [baseline] (8.702 s) : 0, 8701540
Agent [candidate] (1.057 s) : 0, 1057184
Total [candidate] (8.759 s) : 0, 8758990
section iast
Agent [baseline] (1.166 s) : 0, 1166444
Total [baseline] (9.338 s) : 0, 9338264
Agent [candidate] (1.17 s) : 0, 1170414
Total [candidate] (9.254 s) : 0, 9253682
section iast_TELEMETRY_OFF
Agent [baseline] (1.168 s) : 0, 1168451
Total [baseline] (9.27 s) : 0, 9270009
Agent [candidate] (1.162 s) : 0, 1162143
Total [candidate] (9.234 s) : 0, 9233893
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.046 s -
Agent iast 1.166 s 120.886 ms (11.6%)
Agent iast_TELEMETRY_OFF 1.168 s 122.893 ms (11.8%)
Total tracing 8.702 s -
Total iast 9.338 s 636.724 ms (7.3%)
Total iast_TELEMETRY_OFF 9.27 s 568.47 ms (6.5%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.057 s -
Agent iast 1.17 s 113.23 ms (10.7%)
Agent iast_TELEMETRY_OFF 1.162 s 104.959 ms (9.9%)
Total tracing 8.759 s -
Total iast 9.254 s 494.692 ms (5.6%)
Total iast_TELEMETRY_OFF 9.234 s 474.903 ms (5.4%)
gantt
    title insecure-bank - break down per module: candidate=1.27.0-SNAPSHOT~f158574ca1, baseline=1.27.0-SNAPSHOT~7440eac70c

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (647.324 ms) : 0, 647324
BytebuddyAgent [candidate] (654.301 ms) : 0, 654301
GlobalTracer [baseline] (305.913 ms) : 0, 305913
GlobalTracer [candidate] (309.445 ms) : 0, 309445
AppSec [baseline] (50.372 ms) : 0, 50372
AppSec [candidate] (50.925 ms) : 0, 50925
Remote Config [baseline] (677.822 µs) : 0, 678
Remote Config [candidate] (679.732 µs) : 0, 680
Telemetry [baseline] (7.158 ms) : 0, 7158
Telemetry [candidate] (7.359 ms) : 0, 7359
section iast
BytebuddyAgent [baseline] (768.766 ms) : 0, 768766
BytebuddyAgent [candidate] (771.362 ms) : 0, 771362
GlobalTracer [baseline] (284.867 ms) : 0, 284867
GlobalTracer [candidate] (285.677 ms) : 0, 285677
AppSec [baseline] (53.531 ms) : 0, 53531
AppSec [candidate] (51.116 ms) : 0, 51116
IAST [baseline] (18.087 ms) : 0, 18087
IAST [candidate] (20.087 ms) : 0, 20087
Remote Config [baseline] (554.413 µs) : 0, 554
Remote Config [candidate] (569.324 µs) : 0, 569
Telemetry [baseline] (6.383 ms) : 0, 6383
Telemetry [candidate] (7.272 ms) : 0, 7272
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (768.003 ms) : 0, 768003
BytebuddyAgent [candidate] (763.405 ms) : 0, 763405
GlobalTracer [baseline] (287.297 ms) : 0, 287297
GlobalTracer [candidate] (285.742 ms) : 0, 285742
AppSec [baseline] (49.45 ms) : 0, 49450
AppSec [candidate] (49.263 ms) : 0, 49263
IAST [baseline] (22.014 ms) : 0, 22014
IAST [candidate] (22.478 ms) : 0, 22478
Remote Config [baseline] (648.986 µs) : 0, 649
Remote Config [candidate] (567.085 µs) : 0, 567
Telemetry [baseline] (6.495 ms) : 0, 6495
Telemetry [candidate] (6.44 ms) : 0, 6440
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.27.0-SNAPSHOT~f158574ca1, baseline=1.27.0-SNAPSHOT~7440eac70c

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.048 s) : 0, 1048061
Total [baseline] (9.328 s) : 0, 9327697
Agent [candidate] (1.053 s) : 0, 1053490
Total [candidate] (9.34 s) : 0, 9340197
section appsec
Agent [baseline] (1.144 s) : 0, 1143863
Total [baseline] (9.453 s) : 0, 9452513
Agent [candidate] (1.149 s) : 0, 1149302
Total [candidate] (9.418 s) : 0, 9417575
section iast
Agent [baseline] (1.168 s) : 0, 1168388
Total [baseline] (9.634 s) : 0, 9633921
Agent [candidate] (1.178 s) : 0, 1177889
Total [candidate] (9.672 s) : 0, 9671981
section profiling
Agent [baseline] (1.251 s) : 0, 1251087
Total [baseline] (9.586 s) : 0, 9586397
Agent [candidate] (1.245 s) : 0, 1244971
Total [candidate] (9.566 s) : 0, 9566330
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.048 s -
Agent appsec 1.144 s 95.802 ms (9.1%)
Agent iast 1.168 s 120.327 ms (11.5%)
Agent profiling 1.251 s 203.026 ms (19.4%)
Total tracing 9.328 s -
Total appsec 9.453 s 124.817 ms (1.3%)
Total iast 9.634 s 306.225 ms (3.3%)
Total profiling 9.586 s 258.701 ms (2.8%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.053 s -
Agent appsec 1.149 s 95.811 ms (9.1%)
Agent iast 1.178 s 124.399 ms (11.8%)
Agent profiling 1.245 s 191.481 ms (18.2%)
Total tracing 9.34 s -
Total appsec 9.418 s 77.378 ms (0.8%)
Total iast 9.672 s 331.784 ms (3.6%)
Total profiling 9.566 s 226.133 ms (2.4%)
gantt
    title petclinic - break down per module: candidate=1.27.0-SNAPSHOT~f158574ca1, baseline=1.27.0-SNAPSHOT~7440eac70c

    dateFormat X
    axisFormat %s
section tracing
BytebuddyAgent [baseline] (648.671 ms) : 0, 648671
BytebuddyAgent [candidate] (652.34 ms) : 0, 652340
GlobalTracer [baseline] (306.638 ms) : 0, 306638
GlobalTracer [candidate] (308.217 ms) : 0, 308217
AppSec [baseline] (50.836 ms) : 0, 50836
AppSec [candidate] (50.647 ms) : 0, 50647
Remote Config [baseline] (661.334 µs) : 0, 661
Remote Config [candidate] (673.768 µs) : 0, 674
Telemetry [baseline] (7.107 ms) : 0, 7107
Telemetry [candidate] (7.221 ms) : 0, 7221
section appsec
BytebuddyAgent [baseline] (648.542 ms) : 0, 648542
BytebuddyAgent [candidate] (650.911 ms) : 0, 650911
GlobalTracer [baseline] (305.738 ms) : 0, 305738
GlobalTracer [candidate] (307.977 ms) : 0, 307977
AppSec [baseline] (147.943 ms) : 0, 147943
AppSec [candidate] (148.549 ms) : 0, 148549
Remote Config [baseline] (643.833 µs) : 0, 644
Remote Config [candidate] (645.842 µs) : 0, 646
Telemetry [baseline] (6.884 ms) : 0, 6884
Telemetry [candidate] (6.908 ms) : 0, 6908
section iast
BytebuddyAgent [baseline] (769.281 ms) : 0, 769281
BytebuddyAgent [candidate] (776.262 ms) : 0, 776262
GlobalTracer [baseline] (285.136 ms) : 0, 285136
GlobalTracer [candidate] (287.029 ms) : 0, 287029
AppSec [baseline] (52.56 ms) : 0, 52560
AppSec [candidate] (52.862 ms) : 0, 52862
Remote Config [baseline] (579.919 µs) : 0, 580
Remote Config [candidate] (586.862 µs) : 0, 587
Telemetry [baseline] (8.068 ms) : 0, 8068
Telemetry [candidate] (6.484 ms) : 0, 6484
IAST [baseline] (18.435 ms) : 0, 18435
IAST [candidate] (20.094 ms) : 0, 20094
section profiling
ProfilingAgent [baseline] (95.466 ms) : 0, 95466
ProfilingAgent [candidate] (94.836 ms) : 0, 94836
BytebuddyAgent [baseline] (662.712 ms) : 0, 662712
BytebuddyAgent [candidate] (659.584 ms) : 0, 659584
GlobalTracer [baseline] (378.486 ms) : 0, 378486
GlobalTracer [candidate] (376.932 ms) : 0, 376932
AppSec [baseline] (51.53 ms) : 0, 51530
AppSec [candidate] (51.335 ms) : 0, 51335
Remote Config [baseline] (1.033 ms) : 0, 1033
Remote Config [candidate] (998.609 µs) : 0, 999
Telemetry [baseline] (7.317 ms) : 0, 7317
Telemetry [candidate] (7.167 ms) : 0, 7167
Profiling [baseline] (95.492 ms) : 0, 95492
Profiling [candidate] (94.861 ms) : 0, 94861
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
end_time 2024-01-02T10:38:25 2024-01-02T10:55:00
git_branch master jb/dsiable_jfr_config
git_commit_date 1704189023 1704190504
git_commit_sha 7440eac f158574
release_version 1.27.0-SNAPSHOT~7440eac70c 1.27.0-SNAPSHOT~f158574ca1
start_time 2024-01-02T10:38:12 2024-01-02T10:54:47
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1704193154 1704193154
ci_job_id 398487546 398487546
ci_pipeline_id 25718180 25718180
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 8 metrics, 14 unstable metrics.

Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.27.0-SNAPSHOT~f158574ca1, baseline=1.27.0-SNAPSHOT~7440eac70c
    dateFormat X
    axisFormat %s
section baseline
no_agent (367.843 µs) : 348, 387
.   : milestone, 368,
iast (474.664 µs) : 454, 495
.   : milestone, 475,
iast_FULL (541.2 µs) : 521, 562
.   : milestone, 541,
iast_INACTIVE (446.786 µs) : 425, 468
.   : milestone, 447,
iast_TELEMETRY_OFF (466.731 µs) : 446, 488
.   : milestone, 467,
tracing (446.443 µs) : 425, 468
.   : milestone, 446,
section candidate
no_agent (365.932 µs) : 346, 386
.   : milestone, 366,
iast (477.729 µs) : 457, 499
.   : milestone, 478,
iast_FULL (542.795 µs) : 522, 563
.   : milestone, 543,
iast_INACTIVE (444.789 µs) : 424, 465
.   : milestone, 445,
iast_TELEMETRY_OFF (470.92 µs) : 451, 491
.   : milestone, 471,
tracing (445.055 µs) : 425, 466
.   : milestone, 445,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 367.843 µs [348.294 µs, 387.392 µs] -
iast 474.664 µs [454.087 µs, 495.242 µs] 106.822 µs (29.0%)
iast_FULL 541.2 µs [520.534 µs, 561.867 µs] 173.357 µs (47.1%)
iast_INACTIVE 446.786 µs [425.307 µs, 468.266 µs] 78.944 µs (21.5%)
iast_TELEMETRY_OFF 466.731 µs [445.797 µs, 487.665 µs] 98.888 µs (26.9%)
tracing 446.443 µs [425.381 µs, 467.505 µs] 78.6 µs (21.4%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 365.932 µs [345.896 µs, 385.967 µs] -
iast 477.729 µs [456.862 µs, 498.596 µs] 111.797 µs (30.6%)
iast_FULL 542.795 µs [522.277 µs, 563.313 µs] 176.863 µs (48.3%)
iast_INACTIVE 444.789 µs [424.235 µs, 465.342 µs] 78.857 µs (21.5%)
iast_TELEMETRY_OFF 470.92 µs [450.541 µs, 491.299 µs] 104.988 µs (28.7%)
tracing 445.055 µs [424.541 µs, 465.569 µs] 79.123 µs (21.6%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.27.0-SNAPSHOT~f158574ca1, baseline=1.27.0-SNAPSHOT~7440eac70c
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.349 ms) : 1330, 1367
.   : milestone, 1349,
appsec (1.757 ms) : 1732, 1783
.   : milestone, 1757,
iast (1.529 ms) : 1505, 1552
.   : milestone, 1529,
profiling (1.534 ms) : 1509, 1560
.   : milestone, 1534,
tracing (1.49 ms) : 1465, 1515
.   : milestone, 1490,
section candidate
no_agent (1.347 ms) : 1328, 1366
.   : milestone, 1347,
appsec (1.771 ms) : 1746, 1796
.   : milestone, 1771,
iast (1.526 ms) : 1502, 1550
.   : milestone, 1526,
profiling (1.519 ms) : 1493, 1546
.   : milestone, 1519,
tracing (1.517 ms) : 1492, 1541
.   : milestone, 1517,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.349 ms [1.33 ms, 1.367 ms] -
appsec 1.757 ms [1.732 ms, 1.783 ms] 408.763 µs (30.3%)
iast 1.529 ms [1.505 ms, 1.552 ms] 179.849 µs (13.3%)
profiling 1.534 ms [1.509 ms, 1.56 ms] 185.758 µs (13.8%)
tracing 1.49 ms [1.465 ms, 1.515 ms] 141.23 µs (10.5%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 1.347 ms [1.328 ms, 1.366 ms] -
appsec 1.771 ms [1.746 ms, 1.796 ms] 424.151 µs (31.5%)
iast 1.526 ms [1.502 ms, 1.55 ms] 178.98 µs (13.3%)
profiling 1.519 ms [1.493 ms, 1.546 ms] 172.338 µs (12.8%)
tracing 1.517 ms [1.492 ms, 1.541 ms] 169.693 µs (12.6%)

@jbachorik
jbachorik marked this pull request as ready for review January 2, 2024 12:10
@jbachorik
jbachorik requested review from a team as code owners January 2, 2024 12:10
@jbachorik jbachorik added comp: profiling Profiling tag: no release notes Changes to exclude from release notes labels Jan 2, 2024
@jbachorik
jbachorik merged commit ffd45ae into master Jan 2, 2024
@jbachorik
jbachorik deleted the jb/dsiable_jfr_config branch January 2, 2024 12:39
@github-actions github-actions Bot added this to the 1.27.0 milestone Jan 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp: profiling Profiling tag: no release notes Changes to exclude from release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants