Add Profiling Specific Handling for Config Inversion Linter#11066
Add Profiling Specific Handling for Config Inversion Linter#11066gh-worker-dd-mergequeue-cf854d[bot] merged 12 commits intomasterfrom
Conversation
d6bc4c0 to
cca00b9
Compare
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 66 metrics, 5 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.62.0-SNAPSHOT~be3dc11e3e, baseline=1.62.0-SNAPSHOT~3fb37337ab
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.056 s) : 0, 1056205
Total [baseline] (8.833 s) : 0, 8832960
Agent [candidate] (1.056 s) : 0, 1055843
Total [candidate] (8.839 s) : 0, 8838559
section iast
Agent [baseline] (1.222 s) : 0, 1221603
Total [baseline] (9.572 s) : 0, 9571925
Agent [candidate] (1.221 s) : 0, 1220621
Total [candidate] (9.557 s) : 0, 9556641
gantt
title insecure-bank - break down per module: candidate=1.62.0-SNAPSHOT~be3dc11e3e, baseline=1.62.0-SNAPSHOT~3fb37337ab
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.23 ms) : 0, 1230
crashtracking [candidate] (1.218 ms) : 0, 1218
BytebuddyAgent [baseline] (632.18 ms) : 0, 632180
BytebuddyAgent [candidate] (633.227 ms) : 0, 633227
AgentMeter [baseline] (29.509 ms) : 0, 29509
AgentMeter [candidate] (29.313 ms) : 0, 29313
GlobalTracer [baseline] (248.328 ms) : 0, 248328
GlobalTracer [candidate] (248.463 ms) : 0, 248463
AppSec [baseline] (32.393 ms) : 0, 32393
AppSec [candidate] (32.314 ms) : 0, 32314
Debugger [baseline] (58.876 ms) : 0, 58876
Debugger [candidate] (59.008 ms) : 0, 59008
Remote Config [baseline] (589.473 µs) : 0, 589
Remote Config [candidate] (589.245 µs) : 0, 589
Telemetry [baseline] (8.018 ms) : 0, 8018
Telemetry [candidate] (8.052 ms) : 0, 8052
Flare Poller [baseline] (8.925 ms) : 0, 8925
Flare Poller [candidate] (7.534 ms) : 0, 7534
section iast
crashtracking [baseline] (1.231 ms) : 0, 1231
crashtracking [candidate] (1.222 ms) : 0, 1222
BytebuddyAgent [baseline] (799.968 ms) : 0, 799968
BytebuddyAgent [candidate] (799.049 ms) : 0, 799049
AgentMeter [baseline] (11.349 ms) : 0, 11349
AgentMeter [candidate] (11.444 ms) : 0, 11444
GlobalTracer [baseline] (238.473 ms) : 0, 238473
GlobalTracer [candidate] (238.391 ms) : 0, 238391
AppSec [baseline] (31.927 ms) : 0, 31927
AppSec [candidate] (31.981 ms) : 0, 31981
Debugger [baseline] (63.299 ms) : 0, 63299
Debugger [candidate] (63.442 ms) : 0, 63442
Remote Config [baseline] (549.797 µs) : 0, 550
Remote Config [candidate] (543.005 µs) : 0, 543
Telemetry [baseline] (9.362 ms) : 0, 9362
Telemetry [candidate] (9.248 ms) : 0, 9248
Flare Poller [baseline] (3.544 ms) : 0, 3544
Flare Poller [candidate] (3.521 ms) : 0, 3521
IAST [baseline] (25.707 ms) : 0, 25707
IAST [candidate] (25.729 ms) : 0, 25729
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.62.0-SNAPSHOT~be3dc11e3e, baseline=1.62.0-SNAPSHOT~3fb37337ab
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.062 s) : 0, 1062480
Total [baseline] (11.088 s) : 0, 11087979
Agent [candidate] (1.056 s) : 0, 1056137
Total [candidate] (11.052 s) : 0, 11052334
section appsec
Agent [baseline] (1.251 s) : 0, 1250684
Total [baseline] (11.061 s) : 0, 11060739
Agent [candidate] (1.247 s) : 0, 1247081
Total [candidate] (11.101 s) : 0, 11101308
section iast
Agent [baseline] (1.226 s) : 0, 1225918
Total [baseline] (11.25 s) : 0, 11249782
Agent [candidate] (1.227 s) : 0, 1226800
Total [candidate] (11.254 s) : 0, 11254133
section profiling
Agent [baseline] (1.183 s) : 0, 1183336
Total [baseline] (11.099 s) : 0, 11098987
Agent [candidate] (1.188 s) : 0, 1188382
Total [candidate] (10.996 s) : 0, 10995523
gantt
title petclinic - break down per module: candidate=1.62.0-SNAPSHOT~be3dc11e3e, baseline=1.62.0-SNAPSHOT~3fb37337ab
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.262 ms) : 0, 1262
crashtracking [candidate] (1.219 ms) : 0, 1219
BytebuddyAgent [baseline] (636.824 ms) : 0, 636824
BytebuddyAgent [candidate] (631.807 ms) : 0, 631807
AgentMeter [baseline] (29.556 ms) : 0, 29556
AgentMeter [candidate] (29.362 ms) : 0, 29362
GlobalTracer [baseline] (249.437 ms) : 0, 249437
GlobalTracer [candidate] (248.444 ms) : 0, 248444
AppSec [baseline] (32.404 ms) : 0, 32404
AppSec [candidate] (32.355 ms) : 0, 32355
Debugger [baseline] (59.82 ms) : 0, 59820
Debugger [candidate] (59.925 ms) : 0, 59925
Remote Config [baseline] (586.829 µs) : 0, 587
Remote Config [candidate] (593.919 µs) : 0, 594
Telemetry [baseline] (8.117 ms) : 0, 8117
Telemetry [candidate] (8.12 ms) : 0, 8120
Flare Poller [baseline] (8.253 ms) : 0, 8253
Flare Poller [candidate] (8.297 ms) : 0, 8297
section appsec
crashtracking [baseline] (1.225 ms) : 0, 1225
crashtracking [candidate] (1.203 ms) : 0, 1203
BytebuddyAgent [baseline] (662.856 ms) : 0, 662856
BytebuddyAgent [candidate] (661.116 ms) : 0, 661116
AgentMeter [baseline] (12.027 ms) : 0, 12027
AgentMeter [candidate] (12.135 ms) : 0, 12135
GlobalTracer [baseline] (249.063 ms) : 0, 249063
GlobalTracer [candidate] (248.398 ms) : 0, 248398
IAST [baseline] (24.577 ms) : 0, 24577
IAST [candidate] (24.489 ms) : 0, 24489
AppSec [baseline] (185.642 ms) : 0, 185642
AppSec [candidate] (185.231 ms) : 0, 185231
Debugger [baseline] (66.401 ms) : 0, 66401
Debugger [candidate] (65.554 ms) : 0, 65554
Remote Config [baseline] (615.832 µs) : 0, 616
Remote Config [candidate] (605.427 µs) : 0, 605
Telemetry [baseline] (8.374 ms) : 0, 8374
Telemetry [candidate] (8.511 ms) : 0, 8511
Flare Poller [baseline] (3.535 ms) : 0, 3535
Flare Poller [candidate] (3.516 ms) : 0, 3516
section iast
crashtracking [baseline] (1.226 ms) : 0, 1226
crashtracking [candidate] (1.206 ms) : 0, 1206
BytebuddyAgent [baseline] (801.624 ms) : 0, 801624
BytebuddyAgent [candidate] (801.868 ms) : 0, 801868
AgentMeter [baseline] (11.491 ms) : 0, 11491
AgentMeter [candidate] (11.541 ms) : 0, 11541
GlobalTracer [baseline] (239.477 ms) : 0, 239477
GlobalTracer [candidate] (240.546 ms) : 0, 240546
IAST [baseline] (25.842 ms) : 0, 25842
IAST [candidate] (25.927 ms) : 0, 25927
AppSec [baseline] (33.736 ms) : 0, 33736
AppSec [candidate] (32.773 ms) : 0, 32773
Debugger [baseline] (62.786 ms) : 0, 62786
Debugger [candidate] (63.479 ms) : 0, 63479
Remote Config [baseline] (538.833 µs) : 0, 539
Remote Config [candidate] (546.239 µs) : 0, 546
Telemetry [baseline] (9.371 ms) : 0, 9371
Telemetry [candidate] (9.301 ms) : 0, 9301
Flare Poller [baseline] (3.601 ms) : 0, 3601
Flare Poller [candidate] (3.498 ms) : 0, 3498
section profiling
crashtracking [baseline] (1.17 ms) : 0, 1170
crashtracking [candidate] (1.185 ms) : 0, 1185
BytebuddyAgent [baseline] (690.665 ms) : 0, 690665
BytebuddyAgent [candidate] (694.465 ms) : 0, 694465
AgentMeter [baseline] (9.066 ms) : 0, 9066
AgentMeter [candidate] (9.099 ms) : 0, 9099
GlobalTracer [baseline] (206.919 ms) : 0, 206919
GlobalTracer [candidate] (207.891 ms) : 0, 207891
AppSec [baseline] (32.749 ms) : 0, 32749
AppSec [candidate] (33.024 ms) : 0, 33024
Debugger [baseline] (65.478 ms) : 0, 65478
Debugger [candidate] (65.675 ms) : 0, 65675
Remote Config [baseline] (590.955 µs) : 0, 591
Remote Config [candidate] (577.574 µs) : 0, 578
Telemetry [baseline] (7.816 ms) : 0, 7816
Telemetry [candidate] (7.787 ms) : 0, 7787
Flare Poller [baseline] (3.548 ms) : 0, 3548
Flare Poller [candidate] (3.557 ms) : 0, 3557
ProfilingAgent [baseline] (94.059 ms) : 0, 94059
ProfilingAgent [candidate] (93.765 ms) : 0, 93765
Profiling [baseline] (94.631 ms) : 0, 94631
Profiling [candidate] (94.335 ms) : 0, 94335
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 21 metrics, 15 unstable metrics. Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.62.0-SNAPSHOT~be3dc11e3e, baseline=1.62.0-SNAPSHOT~3fb37337ab
dateFormat X
axisFormat %s
section baseline
no_agent (18.907 ms) : 18716, 19097
. : milestone, 18907,
appsec (18.505 ms) : 18322, 18689
. : milestone, 18505,
code_origins (17.852 ms) : 17676, 18028
. : milestone, 17852,
iast (17.604 ms) : 17432, 17776
. : milestone, 17604,
profiling (18.447 ms) : 18266, 18628
. : milestone, 18447,
tracing (17.789 ms) : 17614, 17964
. : milestone, 17789,
section candidate
no_agent (19.542 ms) : 19336, 19747
. : milestone, 19542,
appsec (18.582 ms) : 18392, 18773
. : milestone, 18582,
code_origins (17.999 ms) : 17821, 18176
. : milestone, 17999,
iast (17.866 ms) : 17692, 18039
. : milestone, 17866,
profiling (18.615 ms) : 18430, 18800
. : milestone, 18615,
tracing (17.828 ms) : 17651, 18005
. : milestone, 17828,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.62.0-SNAPSHOT~be3dc11e3e, baseline=1.62.0-SNAPSHOT~3fb37337ab
dateFormat X
axisFormat %s
section baseline
no_agent (1.25 ms) : 1238, 1262
. : milestone, 1250,
iast (3.239 ms) : 3197, 3281
. : milestone, 3239,
iast_FULL (6.01 ms) : 5949, 6070
. : milestone, 6010,
iast_GLOBAL (3.657 ms) : 3596, 3718
. : milestone, 3657,
profiling (2.157 ms) : 2138, 2177
. : milestone, 2157,
tracing (1.997 ms) : 1979, 2015
. : milestone, 1997,
section candidate
no_agent (1.262 ms) : 1250, 1275
. : milestone, 1262,
iast (3.34 ms) : 3291, 3388
. : milestone, 3340,
iast_FULL (5.755 ms) : 5698, 5812
. : milestone, 5755,
iast_GLOBAL (3.665 ms) : 3604, 3726
. : milestone, 3665,
profiling (2.381 ms) : 2355, 2408
. : milestone, 2381,
tracing (1.865 ms) : 1849, 1881
. : milestone, 1865,
DacapoParameters
See matching parameters
SummaryFound 1 performance improvements and 0 performance regressions! Performance is the same for 10 metrics, 1 unstable metrics.
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.62.0-SNAPSHOT~be3dc11e3e, baseline=1.62.0-SNAPSHOT~3fb37337ab
dateFormat X
axisFormat %s
section baseline
no_agent (1.49 ms) : 1478, 1501
. : milestone, 1490,
appsec (3.856 ms) : 3633, 4080
. : milestone, 3856,
iast (2.282 ms) : 2213, 2351
. : milestone, 2282,
iast_GLOBAL (2.318 ms) : 2249, 2387
. : milestone, 2318,
profiling (2.523 ms) : 2308, 2738
. : milestone, 2523,
tracing (2.098 ms) : 2044, 2152
. : milestone, 2098,
section candidate
no_agent (1.493 ms) : 1481, 1504
. : milestone, 1493,
appsec (2.54 ms) : 2485, 2595
. : milestone, 2540,
iast (2.285 ms) : 2216, 2354
. : milestone, 2285,
iast_GLOBAL (2.315 ms) : 2246, 2385
. : milestone, 2315,
profiling (2.516 ms) : 2352, 2680
. : milestone, 2516,
tracing (2.095 ms) : 2041, 2149
. : milestone, 2095,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.62.0-SNAPSHOT~be3dc11e3e, baseline=1.62.0-SNAPSHOT~3fb37337ab
dateFormat X
axisFormat %s
section baseline
no_agent (15.045 s) : 15045000, 15045000
. : milestone, 15045000,
appsec (14.959 s) : 14959000, 14959000
. : milestone, 14959000,
iast (18.186 s) : 18186000, 18186000
. : milestone, 18186000,
iast_GLOBAL (17.993 s) : 17993000, 17993000
. : milestone, 17993000,
profiling (14.8 s) : 14800000, 14800000
. : milestone, 14800000,
tracing (14.95 s) : 14950000, 14950000
. : milestone, 14950000,
section candidate
no_agent (14.891 s) : 14891000, 14891000
. : milestone, 14891000,
appsec (14.887 s) : 14887000, 14887000
. : milestone, 14887000,
iast (18.184 s) : 18184000, 18184000
. : milestone, 18184000,
iast_GLOBAL (18.234 s) : 18234000, 18234000
. : milestone, 18234000,
profiling (15.364 s) : 15364000, 15364000
. : milestone, 15364000,
tracing (15.068 s) : 15068000, 15068000
. : milestone, 15068000,
|
bric3
left a comment
There was a problem hiding this comment.
It seems I forgot to submit my comments 🤦
bric3
left a comment
There was a problem hiding this comment.
Pre-approving, thanks for the refactor !
I'll just make one change on the task dependency (to use task providers) before merging.
|
/merge |
|
View all feedbacks in Devflow UI.
The expected merge time in
|
What Does This Do
This PR adds Profiling-specific handling for
ConfigInversionLinter. Profiling calls individual helper functions to query configurations by potentially normalizingddprof->asyncas an alternative configuration. This means that static checks toProfilingConfig.javais not sufficient to ensure that all Profiling configs are documented - we need to add static checks inDatadogProfilerConfig.javaas well.Only calls to
getString,getBoolean,getLong, andgetIntegerwhenConfigProvideris the first parameter passed in perform the normalization mentioned above. The added Gradle task is only concerned about these cases, as they cannot be caught from the existing static checks.This Gradle task also has some repeated components with the existing
registerCheckConfigStringsTaskand pulls out shared logic to be used by both tasks.This PR also adds the new Gradle task to the
config-inversion-linterCI job.Motivation
Profiling does not test all of its configs at runtime, making runtime checks ineffective for determining all Profiling configs are documented. Additionally, the special handling of
asyncconfigs in Profiling require a new Gradle task to account for this edge case.Additional Notes
Contributor Checklist
type:and (comp:orinst:) labels in addition to any other useful labelsclose,fix, or any linking keywords when referencing an issueUse
solvesinstead, and assign the PR milestone to the issueJira ticket: [PROJ-IDENT]
Note: Once your PR is ready to merge, add it to the merge queue by commenting
/merge./merge -ccancels the queue request./merge -f --reason "reason"skips all merge queue checks; please use this judiciously, as some checks do not run at the PR-level. For more information, see this doc.