-
Notifications
You must be signed in to change notification settings - Fork 317
Use ClassNameFilter to track uninteresting classes
#9976
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
base: master
Are you sure you want to change the base?
Conversation
|
🎯 Code Coverage 🔗 Commit SHA: 460fc41 | Docs | Datadog PR Page | Was this helpful? Give us feedback! |
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 58 metrics, 7 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.56.0-SNAPSHOT~460fc410b0, baseline=1.56.0-SNAPSHOT~121136e971
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.098 s) : 0, 1097840
Total [baseline] (10.816 s) : 0, 10815670
Agent [candidate] (1.108 s) : 0, 1108059
Total [candidate] (10.883 s) : 0, 10883473
section appsec
Agent [baseline] (1.281 s) : 0, 1280898
Total [baseline] (11.111 s) : 0, 11110802
Agent [candidate] (1.278 s) : 0, 1278038
Total [candidate] (11.056 s) : 0, 11055584
section iast
Agent [baseline] (1.247 s) : 0, 1246857
Total [baseline] (11.25 s) : 0, 11250337
Agent [candidate] (1.253 s) : 0, 1253487
Total [candidate] (11.268 s) : 0, 11268231
section profiling
Agent [baseline] (1.237 s) : 0, 1236881
Total [baseline] (11.106 s) : 0, 11105643
Agent [candidate] (1.243 s) : 0, 1242524
Total [candidate] (11.148 s) : 0, 11148281
gantt
title petclinic - break down per module: candidate=1.56.0-SNAPSHOT~460fc410b0, baseline=1.56.0-SNAPSHOT~121136e971
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.465 ms) : 0, 1465
crashtracking [candidate] (1.462 ms) : 0, 1462
BytebuddyAgent [baseline] (705.029 ms) : 0, 705029
BytebuddyAgent [candidate] (710.512 ms) : 0, 710512
GlobalTracer [baseline] (247.94 ms) : 0, 247940
GlobalTracer [candidate] (250.837 ms) : 0, 250837
AppSec [baseline] (32.033 ms) : 0, 32033
AppSec [candidate] (32.91 ms) : 0, 32910
Debugger [baseline] (63.992 ms) : 0, 63992
Debugger [candidate] (64.427 ms) : 0, 64427
Remote Config [baseline] (635.364 µs) : 0, 635
Remote Config [candidate] (650.442 µs) : 0, 650
Telemetry [baseline] (8.18 ms) : 0, 8180
Telemetry [candidate] (8.325 ms) : 0, 8325
Flare Poller [baseline] (3.733 ms) : 0, 3733
Flare Poller [candidate] (3.767 ms) : 0, 3767
section appsec
crashtracking [baseline] (1.456 ms) : 0, 1456
crashtracking [candidate] (1.444 ms) : 0, 1444
BytebuddyAgent [baseline] (730.067 ms) : 0, 730067
BytebuddyAgent [candidate] (728.974 ms) : 0, 728974
GlobalTracer [baseline] (240.244 ms) : 0, 240244
GlobalTracer [candidate] (240.436 ms) : 0, 240436
AppSec [baseline] (174.851 ms) : 0, 174851
AppSec [candidate] (173.849 ms) : 0, 173849
Debugger [baseline] (61.553 ms) : 0, 61553
Debugger [candidate] (60.85 ms) : 0, 60850
Remote Config [baseline] (734.551 µs) : 0, 735
Remote Config [candidate] (646.567 µs) : 0, 647
Telemetry [baseline] (8.405 ms) : 0, 8405
Telemetry [candidate] (8.235 ms) : 0, 8235
Flare Poller [baseline] (3.986 ms) : 0, 3986
Flare Poller [candidate] (3.808 ms) : 0, 3808
IAST [baseline] (24.594 ms) : 0, 24594
IAST [candidate] (24.881 ms) : 0, 24881
section iast
crashtracking [baseline] (1.459 ms) : 0, 1459
crashtracking [candidate] (1.483 ms) : 0, 1483
BytebuddyAgent [baseline] (836.403 ms) : 0, 836403
BytebuddyAgent [candidate] (842.103 ms) : 0, 842103
GlobalTracer [baseline] (238.984 ms) : 0, 238984
GlobalTracer [candidate] (239.494 ms) : 0, 239494
AppSec [baseline] (34.288 ms) : 0, 34288
AppSec [candidate] (30.586 ms) : 0, 30586
Debugger [baseline] (61.458 ms) : 0, 61458
Debugger [candidate] (61.55 ms) : 0, 61550
Remote Config [baseline] (544.265 µs) : 0, 544
Remote Config [candidate] (550.598 µs) : 0, 551
Telemetry [baseline] (7.734 ms) : 0, 7734
Telemetry [candidate] (7.718 ms) : 0, 7718
Flare Poller [baseline] (3.487 ms) : 0, 3487
Flare Poller [candidate] (3.509 ms) : 0, 3509
IAST [baseline] (27.396 ms) : 0, 27396
IAST [candidate] (31.498 ms) : 0, 31498
section profiling
ProfilingAgent [baseline] (97.449 ms) : 0, 97449
ProfilingAgent [candidate] (98.244 ms) : 0, 98244
crashtracking [baseline] (1.457 ms) : 0, 1457
crashtracking [candidate] (1.464 ms) : 0, 1464
BytebuddyAgent [baseline] (736.196 ms) : 0, 736196
BytebuddyAgent [candidate] (739.901 ms) : 0, 739901
GlobalTracer [baseline] (223.652 ms) : 0, 223652
GlobalTracer [candidate] (223.83 ms) : 0, 223830
AppSec [baseline] (32.491 ms) : 0, 32491
AppSec [candidate] (32.536 ms) : 0, 32536
Debugger [baseline] (63.178 ms) : 0, 63178
Debugger [candidate] (63.54 ms) : 0, 63540
Remote Config [baseline] (652.265 µs) : 0, 652
Remote Config [candidate] (673.83 µs) : 0, 674
Telemetry [baseline] (7.891 ms) : 0, 7891
Telemetry [candidate] (8.169 ms) : 0, 8169
Flare Poller [baseline] (3.783 ms) : 0, 3783
Flare Poller [candidate] (3.823 ms) : 0, 3823
Profiling [baseline] (98.056 ms) : 0, 98056
Profiling [candidate] (98.833 ms) : 0, 98833
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.56.0-SNAPSHOT~460fc410b0, baseline=1.56.0-SNAPSHOT~121136e971
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.096 s) : 0, 1095709
Total [baseline] (8.829 s) : 0, 8828853
Agent [candidate] (1.104 s) : 0, 1104494
Total [candidate] (8.809 s) : 0, 8809276
section iast
Agent [baseline] (1.236 s) : 0, 1235586
Total [baseline] (9.516 s) : 0, 9515957
Agent [candidate] (1.236 s) : 0, 1236236
Total [candidate] (9.529 s) : 0, 9528782
gantt
title insecure-bank - break down per module: candidate=1.56.0-SNAPSHOT~460fc410b0, baseline=1.56.0-SNAPSHOT~121136e971
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.444 ms) : 0, 1444
crashtracking [candidate] (1.465 ms) : 0, 1465
BytebuddyAgent [baseline] (703.694 ms) : 0, 703694
BytebuddyAgent [candidate] (709.647 ms) : 0, 709647
GlobalTracer [baseline] (247.901 ms) : 0, 247901
GlobalTracer [candidate] (249.795 ms) : 0, 249795
AppSec [baseline] (32.192 ms) : 0, 32192
AppSec [candidate] (32.467 ms) : 0, 32467
Debugger [baseline] (63.342 ms) : 0, 63342
Debugger [candidate] (63.607 ms) : 0, 63607
Remote Config [baseline] (642.416 µs) : 0, 642
Remote Config [candidate] (643.179 µs) : 0, 643
Telemetry [baseline] (8.077 ms) : 0, 8077
Telemetry [candidate] (8.217 ms) : 0, 8217
Flare Poller [baseline] (3.637 ms) : 0, 3637
Flare Poller [candidate] (3.683 ms) : 0, 3683
section iast
crashtracking [baseline] (1.459 ms) : 0, 1459
crashtracking [candidate] (1.449 ms) : 0, 1449
BytebuddyAgent [baseline] (828.815 ms) : 0, 828815
BytebuddyAgent [candidate] (829.566 ms) : 0, 829566
GlobalTracer [baseline] (237.605 ms) : 0, 237605
GlobalTracer [candidate] (237.393 ms) : 0, 237393
IAST [baseline] (26.667 ms) : 0, 26667
IAST [candidate] (27.541 ms) : 0, 27541
AppSec [baseline] (34.564 ms) : 0, 34564
AppSec [candidate] (33.793 ms) : 0, 33793
Debugger [baseline] (60.0 ms) : 0, 60000
Debugger [candidate] (60.081 ms) : 0, 60081
Remote Config [baseline] (547.661 µs) : 0, 548
Remote Config [candidate] (545.851 µs) : 0, 546
Telemetry [baseline] (7.581 ms) : 0, 7581
Telemetry [candidate] (7.609 ms) : 0, 7609
Flare Poller [baseline] (3.449 ms) : 0, 3449
Flare Poller [candidate] (3.394 ms) : 0, 3394
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 4 performance regressions! Performance is the same for 15 metrics, 17 unstable metrics.
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.56.0-SNAPSHOT~460fc410b0, baseline=1.56.0-SNAPSHOT~121136e971
dateFormat X
axisFormat %s
section baseline
no_agent (1.179 ms) : 1168, 1191
. : milestone, 1179,
iast (3.207 ms) : 3172, 3242
. : milestone, 3207,
iast_FULL (5.75 ms) : 5692, 5808
. : milestone, 5750,
iast_GLOBAL (3.639 ms) : 3521, 3756
. : milestone, 3639,
profiling (2.018 ms) : 2000, 2037
. : milestone, 2018,
tracing (1.818 ms) : 1803, 1833
. : milestone, 1818,
section candidate
no_agent (1.19 ms) : 1178, 1201
. : milestone, 1190,
iast (3.193 ms) : 3158, 3229
. : milestone, 3193,
iast_FULL (5.827 ms) : 5769, 5886
. : milestone, 5827,
iast_GLOBAL (3.738 ms) : 3675, 3800
. : milestone, 3738,
profiling (1.902 ms) : 1887, 1918
. : milestone, 1902,
tracing (1.794 ms) : 1779, 1808
. : milestone, 1794,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.56.0-SNAPSHOT~460fc410b0, baseline=1.56.0-SNAPSHOT~121136e971
dateFormat X
axisFormat %s
section baseline
no_agent (17.144 ms) : 16972, 17317
. : milestone, 17144,
appsec (18.752 ms) : 18562, 18941
. : milestone, 18752,
code_origins (17.733 ms) : 17558, 17909
. : milestone, 17733,
iast (17.709 ms) : 17532, 17885
. : milestone, 17709,
profiling (18.488 ms) : 18303, 18674
. : milestone, 18488,
tracing (17.754 ms) : 17576, 17931
. : milestone, 17754,
section candidate
no_agent (19.115 ms) : 18916, 19315
. : milestone, 19115,
appsec (18.403 ms) : 18216, 18589
. : milestone, 18403,
code_origins (17.658 ms) : 17485, 17832
. : milestone, 17658,
iast (18.007 ms) : 17820, 18194
. : milestone, 18007,
profiling (19.929 ms) : 19721, 20137
. : milestone, 19929,
tracing (17.697 ms) : 17522, 17873
. : milestone, 17697,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 10 metrics, 2 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.56.0-SNAPSHOT~460fc410b0, baseline=1.56.0-SNAPSHOT~121136e971
dateFormat X
axisFormat %s
section baseline
no_agent (15.046 s) : 15046000, 15046000
. : milestone, 15046000,
appsec (14.723 s) : 14723000, 14723000
. : milestone, 14723000,
iast (18.003 s) : 18003000, 18003000
. : milestone, 18003000,
iast_GLOBAL (17.989 s) : 17989000, 17989000
. : milestone, 17989000,
profiling (15.093 s) : 15093000, 15093000
. : milestone, 15093000,
tracing (15.101 s) : 15101000, 15101000
. : milestone, 15101000,
section candidate
no_agent (15.679 s) : 15679000, 15679000
. : milestone, 15679000,
appsec (14.715 s) : 14715000, 14715000
. : milestone, 14715000,
iast (18.303 s) : 18303000, 18303000
. : milestone, 18303000,
iast_GLOBAL (17.981 s) : 17981000, 17981000
. : milestone, 17981000,
profiling (15.379 s) : 15379000, 15379000
. : milestone, 15379000,
tracing (15.044 s) : 15044000, 15044000
. : milestone, 15044000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.56.0-SNAPSHOT~460fc410b0, baseline=1.56.0-SNAPSHOT~121136e971
dateFormat X
axisFormat %s
section baseline
no_agent (1.47 ms) : 1459, 1482
. : milestone, 1470,
appsec (3.632 ms) : 3420, 3845
. : milestone, 3632,
iast (2.206 ms) : 2142, 2269
. : milestone, 2206,
iast_GLOBAL (2.243 ms) : 2179, 2307
. : milestone, 2243,
profiling (2.495 ms) : 2322, 2668
. : milestone, 2495,
tracing (2.029 ms) : 1979, 2079
. : milestone, 2029,
section candidate
no_agent (1.468 ms) : 1457, 1480
. : milestone, 1468,
appsec (3.703 ms) : 3485, 3922
. : milestone, 3703,
iast (2.203 ms) : 2140, 2267
. : milestone, 2203,
iast_GLOBAL (2.243 ms) : 2179, 2307
. : milestone, 2243,
profiling (2.058 ms) : 2006, 2109
. : milestone, 2058,
tracing (2.021 ms) : 1971, 2071
. : milestone, 2021,
|
bric3
left a comment
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.
It looks ok to me, but maybe another pair of eye could be useful!
| new DataInputStream(new BufferedInputStream(Files.newInputStream(noMatchFile)))) { | ||
| while (true) { | ||
| switch (in.readUTF()) { | ||
| case "dd-java-agent": |
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.
nitpick: Should we use a constant for these strings and in the counter part persist function) ?
| // populate filter from current run and persist at shutdown | ||
| ClassNameFilter filter = emptyNoMatchFilter(); | ||
| Runtime.getRuntime().addShutdownHook(new ShutdownHook(noMatchFile, filter)); | ||
| return filter; |
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.
question: Should (over) writing be toggleable ?
AlexeyKuznetsov-DD
left a comment
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.
Just curious if it is possible to cover changes with tests?
Or it is 100% identical to previous code and already covered?
What Does This Do
Replaces
ClassCodeFilterwithClassNameFilterfrom https://github.com/DataDog/dd-instrument-javaClassNameFilterhas a number of improvements, including:Motivation
Uninteresting classes can be excluded from further type-matching.
Note this information can be shared across runs if the type-resolver cache is enabled with
-Ddd.resolver.cache.dir=<directory>orDD_RESOLVER_CACHE_DIR=<directory>Additional Notes
Also uses
ClassNameFilterto track public classes.Contributor Checklist
type:and (comp:orinst:) labels in addition to any useful labelsclose,fixor any linking keywords when referencing an issue.Use
solvesinstead, and assign the PR milestone to the issueJira ticket: [PROJ-IDENT]