-
Notifications
You must be signed in to change notification settings - Fork 304
The Stable Config migration from snakeyaml to the snakeyaml engine to support GraalVM Native #8790
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
Conversation
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 58 metrics, 13 unstable metrics. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.50.0-SNAPSHOT~9bc2136fbc, baseline=1.50.0-SNAPSHOT~fc74eaa891
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.021 s) : 0, 1021132
Total [baseline] (8.632 s) : 0, 8632093
Agent [candidate] (1.02 s) : 0, 1019820
Total [candidate] (8.629 s) : 0, 8628916
section iast
Agent [baseline] (1.159 s) : 0, 1159376
Total [baseline] (9.254 s) : 0, 9253852
Agent [candidate] (1.149 s) : 0, 1149354
Total [candidate] (9.22 s) : 0, 9220180
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.149 s) : 0, 1149181
Total [baseline] (9.207 s) : 0, 9207092
Agent [candidate] (1.159 s) : 0, 1159448
Total [candidate] (9.208 s) : 0, 9207559
section iast_TELEMETRY_OFF
Agent [baseline] (1.147 s) : 0, 1147500
Total [baseline] (9.24 s) : 0, 9239688
Agent [candidate] (1.149 s) : 0, 1148662
Total [candidate] (9.214 s) : 0, 9213847
gantt
title insecure-bank - break down per module: candidate=1.50.0-SNAPSHOT~9bc2136fbc, baseline=1.50.0-SNAPSHOT~fc74eaa891
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (683.816 ms) : 0, 683816
BytebuddyAgent [candidate] (682.305 ms) : 0, 682305
GlobalTracer [baseline] (240.406 ms) : 0, 240406
GlobalTracer [candidate] (239.841 ms) : 0, 239841
AppSec [baseline] (54.565 ms) : 0, 54565
AppSec [candidate] (54.407 ms) : 0, 54407
Debugger [baseline] (9.06 ms) : 0, 9060
Debugger [candidate] (6.968 ms) : 0, 6968
Remote Config [baseline] (700.402 µs) : 0, 700
Remote Config [candidate] (709.267 µs) : 0, 709
Telemetry [baseline] (9.13 ms) : 0, 9130
Telemetry [candidate] (12.09 ms) : 0, 12090
section iast
BytebuddyAgent [baseline] (809.608 ms) : 0, 809608
BytebuddyAgent [candidate] (801.751 ms) : 0, 801751
GlobalTracer [baseline] (232.585 ms) : 0, 232585
GlobalTracer [candidate] (230.813 ms) : 0, 230813
IAST [baseline] (25.343 ms) : 0, 25343
IAST [candidate] (26.579 ms) : 0, 26579
AppSec [baseline] (51.369 ms) : 0, 51369
AppSec [candidate] (52.342 ms) : 0, 52342
Debugger [baseline] (5.977 ms) : 0, 5977
Debugger [candidate] (5.934 ms) : 0, 5934
Remote Config [baseline] (603.639 µs) : 0, 604
Remote Config [candidate] (588.452 µs) : 0, 588
Telemetry [baseline] (7.851 ms) : 0, 7851
Telemetry [candidate] (7.857 ms) : 0, 7857
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (801.363 ms) : 0, 801363
BytebuddyAgent [candidate] (808.554 ms) : 0, 808554
GlobalTracer [baseline] (230.958 ms) : 0, 230958
GlobalTracer [candidate] (232.533 ms) : 0, 232533
IAST [baseline] (30.265 ms) : 0, 30265
IAST [candidate] (24.104 ms) : 0, 24104
AppSec [baseline] (48.741 ms) : 0, 48741
AppSec [candidate] (52.099 ms) : 0, 52099
Debugger [baseline] (5.892 ms) : 0, 5892
Debugger [candidate] (6.016 ms) : 0, 6016
Remote Config [baseline] (591.484 µs) : 0, 591
Remote Config [candidate] (606.379 µs) : 0, 606
Telemetry [baseline] (7.88 ms) : 0, 7880
Telemetry [candidate] (8.094 ms) : 0, 8094
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (798.571 ms) : 0, 798571
BytebuddyAgent [candidate] (799.867 ms) : 0, 799867
GlobalTracer [baseline] (231.941 ms) : 0, 231941
GlobalTracer [candidate] (231.933 ms) : 0, 231933
IAST [baseline] (22.573 ms) : 0, 22573
IAST [candidate] (22.659 ms) : 0, 22659
AppSec [baseline] (56.373 ms) : 0, 56373
AppSec [candidate] (55.443 ms) : 0, 55443
Debugger [baseline] (5.989 ms) : 0, 5989
Debugger [candidate] (5.966 ms) : 0, 5966
Remote Config [baseline] (609.074 µs) : 0, 609
Remote Config [candidate] (590.173 µs) : 0, 590
Telemetry [baseline] (7.87 ms) : 0, 7870
Telemetry [candidate] (7.85 ms) : 0, 7850
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.50.0-SNAPSHOT~9bc2136fbc, baseline=1.50.0-SNAPSHOT~fc74eaa891
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.022 s) : 0, 1022008
Total [baseline] (10.43 s) : 0, 10430451
Agent [candidate] (1.032 s) : 0, 1031523
Total [candidate] (10.475 s) : 0, 10475175
section appsec
Agent [baseline] (1.166 s) : 0, 1166492
Total [baseline] (10.694 s) : 0, 10694091
Agent [candidate] (1.163 s) : 0, 1162613
Total [candidate] (10.652 s) : 0, 10652067
section iast
Agent [baseline] (1.152 s) : 0, 1152325
Total [baseline] (10.835 s) : 0, 10834774
Agent [candidate] (1.151 s) : 0, 1150886
Total [candidate] (10.864 s) : 0, 10863760
section profiling
Agent [baseline] (1.264 s) : 0, 1264387
Total [baseline] (10.787 s) : 0, 10787253
Agent [candidate] (1.273 s) : 0, 1273111
Total [candidate] (10.918 s) : 0, 10917805
gantt
title petclinic - break down per module: candidate=1.50.0-SNAPSHOT~9bc2136fbc, baseline=1.50.0-SNAPSHOT~fc74eaa891
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (684.406 ms) : 0, 684406
BytebuddyAgent [candidate] (689.451 ms) : 0, 689451
GlobalTracer [baseline] (241.122 ms) : 0, 241122
GlobalTracer [candidate] (242.733 ms) : 0, 242733
AppSec [baseline] (54.7 ms) : 0, 54700
AppSec [candidate] (55.709 ms) : 0, 55709
Debugger [baseline] (7.603 ms) : 0, 7603
Debugger [candidate] (7.693 ms) : 0, 7693
Remote Config [baseline] (705.232 µs) : 0, 705
Remote Config [candidate] (706.477 µs) : 0, 706
Telemetry [baseline] (9.905 ms) : 0, 9905
Telemetry [candidate] (11.366 ms) : 0, 11366
section appsec
BytebuddyAgent [baseline] (705.335 ms) : 0, 705335
BytebuddyAgent [candidate] (701.39 ms) : 0, 701390
GlobalTracer [baseline] (237.253 ms) : 0, 237253
GlobalTracer [candidate] (237.017 ms) : 0, 237017
AppSec [baseline] (175.163 ms) : 0, 175163
AppSec [candidate] (175.468 ms) : 0, 175468
Debugger [baseline] (5.957 ms) : 0, 5957
Debugger [candidate] (5.975 ms) : 0, 5975
Remote Config [baseline] (639.814 µs) : 0, 640
Remote Config [candidate] (624.225 µs) : 0, 624
Telemetry [baseline] (7.419 ms) : 0, 7419
Telemetry [candidate] (7.797 ms) : 0, 7797
IAST [baseline] (21.929 ms) : 0, 21929
IAST [candidate] (21.646 ms) : 0, 21646
section iast
BytebuddyAgent [baseline] (804.405 ms) : 0, 804405
BytebuddyAgent [candidate] (803.026 ms) : 0, 803026
GlobalTracer [baseline] (231.509 ms) : 0, 231509
GlobalTracer [candidate] (230.973 ms) : 0, 230973
AppSec [baseline] (50.232 ms) : 0, 50232
AppSec [candidate] (52.807 ms) : 0, 52807
Debugger [baseline] (5.862 ms) : 0, 5862
Debugger [candidate] (5.889 ms) : 0, 5889
Remote Config [baseline] (574.362 µs) : 0, 574
Remote Config [candidate] (592.803 µs) : 0, 593
Telemetry [baseline] (7.813 ms) : 0, 7813
Telemetry [candidate] (7.942 ms) : 0, 7942
IAST [baseline] (28.348 ms) : 0, 28348
IAST [candidate] (25.263 ms) : 0, 25263
section profiling
ProfilingAgent [baseline] (103.068 ms) : 0, 103068
ProfilingAgent [candidate] (103.698 ms) : 0, 103698
BytebuddyAgent [baseline] (673.496 ms) : 0, 673496
BytebuddyAgent [candidate] (679.163 ms) : 0, 679163
GlobalTracer [baseline] (359.714 ms) : 0, 359714
GlobalTracer [candidate] (361.785 ms) : 0, 361785
AppSec [baseline] (62.026 ms) : 0, 62026
AppSec [candidate] (62.027 ms) : 0, 62027
Debugger [baseline] (6.243 ms) : 0, 6243
Debugger [candidate] (6.297 ms) : 0, 6297
Remote Config [baseline] (656.398 µs) : 0, 656
Remote Config [candidate] (652.68 µs) : 0, 653
Telemetry [baseline] (8.237 ms) : 0, 8237
Telemetry [candidate] (8.253 ms) : 0, 8253
Profiling [baseline] (103.093 ms) : 0, 103093
Profiling [candidate] (103.722 ms) : 0, 103722
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 1 performance regressions! Performance is the same for 11 metrics, 18 unstable metrics.
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~9bc2136fbc, baseline=1.50.0-SNAPSHOT~fc74eaa891
dateFormat X
axisFormat %s
section baseline
no_agent (383.508 µs) : 364, 403
. : milestone, 384,
iast (517.776 µs) : 496, 539
. : milestone, 518,
iast_FULL (740.975 µs) : 719, 763
. : milestone, 741,
iast_GLOBAL (563.687 µs) : 542, 585
. : milestone, 564,
iast_HARDCODED_SECRET_DISABLED (538.108 µs) : 515, 561
. : milestone, 538,
iast_INACTIVE (475.075 µs) : 452, 498
. : milestone, 475,
iast_TELEMETRY_OFF (522.846 µs) : 499, 547
. : milestone, 523,
tracing (466.235 µs) : 444, 488
. : milestone, 466,
section candidate
no_agent (376.857 µs) : 357, 396
. : milestone, 377,
iast (532.386 µs) : 510, 554
. : milestone, 532,
iast_FULL (742.103 µs) : 720, 764
. : milestone, 742,
iast_GLOBAL (574.869 µs) : 553, 597
. : milestone, 575,
iast_HARDCODED_SECRET_DISABLED (535.905 µs) : 513, 559
. : milestone, 536,
iast_INACTIVE (466.827 µs) : 444, 489
. : milestone, 467,
iast_TELEMETRY_OFF (509.115 µs) : 486, 533
. : milestone, 509,
tracing (467.483 µs) : 445, 490
. : milestone, 467,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.50.0-SNAPSHOT~9bc2136fbc, baseline=1.50.0-SNAPSHOT~fc74eaa891
dateFormat X
axisFormat %s
section baseline
no_agent (1.374 ms) : 1355, 1394
. : milestone, 1374,
appsec (1.736 ms) : 1712, 1759
. : milestone, 1736,
appsec_no_iast (1.74 ms) : 1717, 1763
. : milestone, 1740,
code_origins (1.672 ms) : 1645, 1699
. : milestone, 1672,
iast (1.511 ms) : 1486, 1535
. : milestone, 1511,
profiling (1.535 ms) : 1511, 1559
. : milestone, 1535,
tracing (1.488 ms) : 1463, 1512
. : milestone, 1488,
section candidate
no_agent (1.368 ms) : 1347, 1388
. : milestone, 1368,
appsec (1.739 ms) : 1716, 1763
. : milestone, 1739,
appsec_no_iast (1.739 ms) : 1715, 1762
. : milestone, 1739,
code_origins (1.671 ms) : 1644, 1698
. : milestone, 1671,
iast (1.533 ms) : 1507, 1558
. : milestone, 1533,
profiling (1.597 ms) : 1572, 1621
. : milestone, 1597,
tracing (1.487 ms) : 1463, 1510
. : milestone, 1487,
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 tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~9bc2136fbc, baseline=1.50.0-SNAPSHOT~fc74eaa891
dateFormat X
axisFormat %s
section baseline
no_agent (1.469 ms) : 1457, 1480
. : milestone, 1469,
appsec (2.395 ms) : 2346, 2444
. : milestone, 2395,
iast (2.175 ms) : 2114, 2237
. : milestone, 2175,
iast_GLOBAL (2.227 ms) : 2164, 2289
. : milestone, 2227,
profiling (2.034 ms) : 1984, 2083
. : milestone, 2034,
tracing (2.008 ms) : 1960, 2056
. : milestone, 2008,
section candidate
no_agent (1.473 ms) : 1461, 1484
. : milestone, 1473,
appsec (2.392 ms) : 2343, 2441
. : milestone, 2392,
iast (2.176 ms) : 2114, 2238
. : milestone, 2176,
iast_GLOBAL (2.222 ms) : 2160, 2284
. : milestone, 2222,
profiling (2.029 ms) : 1980, 2079
. : milestone, 2029,
tracing (1.998 ms) : 1950, 2046
. : milestone, 1998,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.50.0-SNAPSHOT~9bc2136fbc, baseline=1.50.0-SNAPSHOT~fc74eaa891
dateFormat X
axisFormat %s
section baseline
no_agent (15.237 s) : 15237000, 15237000
. : milestone, 15237000,
appsec (15.024 s) : 15024000, 15024000
. : milestone, 15024000,
iast (18.868 s) : 18868000, 18868000
. : milestone, 18868000,
iast_GLOBAL (17.676 s) : 17676000, 17676000
. : milestone, 17676000,
profiling (15.558 s) : 15558000, 15558000
. : milestone, 15558000,
tracing (14.856 s) : 14856000, 14856000
. : milestone, 14856000,
section candidate
no_agent (14.813 s) : 14813000, 14813000
. : milestone, 14813000,
appsec (15.203 s) : 15203000, 15203000
. : milestone, 15203000,
iast (18.936 s) : 18936000, 18936000
. : milestone, 18936000,
iast_GLOBAL (18.043 s) : 18043000, 18043000
. : milestone, 18043000,
profiling (14.97 s) : 14970000, 14970000
. : milestone, 14970000,
tracing (14.965 s) : 14965000, 14965000
. : milestone, 14965000,
|
39a540b
to
a4deaea
Compare
Datadog Summary✅ Code Quality ✅ Code Security ✅ Dependencies Was this helpful? Give us feedback! |
...al-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigSourceTest.groovy
Show resolved
Hide resolved
...al-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigSourceTest.groovy
Outdated
Show resolved
Hide resolved
...al-api/src/test/groovy/datadog/trace/bootstrap/config/provider/StableConfigParserTest.groovy
Show resolved
Hide resolved
internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java
Show resolved
Hide resolved
internal-api/src/main/java/datadog/trace/bootstrap/config/provider/StableConfigParser.java
Outdated
Show resolved
Hide resolved
internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/Rule.java
Outdated
Show resolved
Hide resolved
internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/Rule.java
Outdated
Show resolved
Hide resolved
internal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/Rule.java
Outdated
Show resolved
Hide resolved
...nal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/StableConfig.java
Outdated
Show resolved
Hide resolved
...nal-api/src/main/java/datadog/trace/bootstrap/config/provider/stableconfig/StableConfig.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good so far, left comments
a405f7a
to
fe3e325
Compare
What Does This Do
Migrates the yaml component from snakeyaml to snakeyaml-engine, which is currently only used in the stable config.
Motivation
The main motivation is GraalVM Native compatibility. The original snakeyaml supports java bean de/serialization from/to yaml which doesn't work with GraalVM Native builds.
Additional Notes
Without this, it would cause the GraalVM Native Build error:
whenever stable config parsing occurs, such as when
/etc/datadog-agent/application_monitoring.yaml
exists.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: [PROJ-IDENT]