dd-trace-js
dd-trace-js copied to clipboard
Remote config client + AppSec remote activation
What does this PR do?
Adds the new Remote Config client, that subscribes to products and receive configuration update for those products. It also includes the first use case: AppSec 1 click activation.
Motivation
This removes a lot of friction to enable AppSec on services, and will enable many more use cases in the future.
Overall package size
Self size: 2.84 MB Deduped: 31.92 MB No deduping: 32.12 MB
Dependency sizes
| name | version | self size | total size |
|---|---|---|---|
| @datadog/pprof | 1.0.2 | 8.74 MB | 16.25 MB |
| @datadog/native-metrics | 1.4.3 | 6.57 MB | 6.58 MB |
| @datadog/native-appsec | 1.2.1 | 5.1 MB | 5.43 MB |
| opentracing | 0.14.7 | 194.81 kB | 194.81 kB |
| @datadog/sketches-js | 2.1.0 | 109.9 kB | 109.9 kB |
| lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB |
| lru-cache | 7.14.0 | 74.95 kB | 74.95 kB |
| semver | 5.7.1 | 61.58 kB | 61.58 kB |
| ipaddr.js | 2.0.1 | 59.52 kB | 59.52 kB |
| ignore | 5.2.0 | 48.87 kB | 48.87 kB |
| import-in-the-middle | 1.3.4 | 32.7 kB | 37.17 kB |
| istanbul-lib-coverage | 3.2.0 | 29.34 kB | 29.34 kB |
| retry | 0.10.1 | 27.44 kB | 27.44 kB |
| lodash.uniq | 4.5.0 | 25.01 kB | 25.01 kB |
| limiter | 1.1.5 | 23.17 kB | 23.17 kB |
| lodash.kebabcase | 4.1.1 | 17.75 kB | 17.75 kB |
| lodash.pick | 4.4.0 | 16.33 kB | 16.33 kB |
| crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB |
| diagnostics_channel | 1.1.0 | 7.07 kB | 7.07 kB |
| path-to-regexp | 0.1.7 | 6.78 kB | 6.78 kB |
| koalas | 1.0.2 | 6.47 kB | 6.47 kB |
| methods | 1.1.2 | 5.29 kB | 5.29 kB |
| module-details-from-path | 1.0.3 | 4.47 kB | 4.47 kB |
π€ This report was automatically generated by heaviest-objects-in-the-universe
Codecov Report
Merging #2401 (7f81be6) into master (17df4ca) will increase coverage by
0.11%. The diff coverage is100.00%.
@@ Coverage Diff @@
## master #2401 +/- ##
==========================================
+ Coverage 89.74% 89.86% +0.11%
==========================================
Files 286 288 +2
Lines 9783 9893 +110
==========================================
+ Hits 8780 8890 +110
Misses 1003 1003
| Impacted Files | Coverage Ξ | |
|---|---|---|
| packages/dd-trace/src/appsec/callbacks/ddwaf.js | 100.00% <ΓΈ> (ΓΈ) |
|
| packages/dd-trace/src/appsec/index.js | 100.00% <100.00%> (ΓΈ) |
|
| .../dd-trace/src/appsec/remote_config/capabilities.js | 100.00% <100.00%> (ΓΈ) |
|
| ...ackages/dd-trace/src/appsec/remote_config/index.js | 100.00% <100.00%> (ΓΈ) |
|
| ...kages/dd-trace/src/appsec/remote_config/manager.js | 100.00% <100.00%> (ΓΈ) |
|
| ...ges/dd-trace/src/appsec/remote_config/scheduler.js | 100.00% <100.00%> (ΓΈ) |
|
| packages/dd-trace/src/appsec/rule_manager.js | 100.00% <100.00%> (ΓΈ) |
|
| packages/dd-trace/src/config.js | 98.49% <100.00%> (+0.03%) |
:arrow_up: |
| packages/dd-trace/src/proxy.js | 87.23% <100.00%> (+0.56%) |
:arrow_up: |
| ...ages/datadog-instrumentations/src/limitd-client.js |
:mega: Weβre building smart automated test selection to slash your CI/CD build times. Learn more
Benchmarks for Node.js v16
Parameters
| Baseline | Candidate | |
|---|---|---|
| config | baseline | candidate |
| git_branch | master | remote_config_client |
| git_commit_sha | b8be1fb3 | 51285e0d |
See matching parameters
| Baseline | Candidate | |
|---|---|---|
| name | profiler | profiler |
| nodeVersion | 16.17.1 | 16.17.1 |
| variant | control | control |
Summary
Found 0 performance improvements and 18 performance regressions! Performance is the same for 332 cases.
| scenario | Ξ mean cpu_system_time | Ξ mean cpu_usage_percentage | Ξ mean cpu_user_time | Ξ mean execution_time | Ξ mean max_event_loop_delay | Ξ mean max_gc_pause | Ξ mean max_rss_usage |
|---|---|---|---|---|---|---|---|
| scenario:startup-with-tracer-16 | same | same | worse [+10.259ms; +16.660ms] or [+9.055%; +14.705%] |
worse [+14.260ms; +16.101ms] or [+10.678%; +12.057%] |
worse [+0.867KB; +1.057KB] or [+1.946%; +2.372%] |
||
| scenario:log-without-log-16 | same | same | worse [+12.127ms; +14.946ms] or [+10.433%; +12.858%] |
worse [+14.421ms; +14.985ms] or [+10.724%; +11.143%] |
unsure [+0.014KB; +0.089KB] or [+0.031%; +0.197%] |
||
| scenario:spans-finish-immediately-16 | same | same | worse [+9.578ms; +15.344ms] or [+2.587%; +4.144%] |
worse [+13.553ms; +15.769ms] or [+3.463%; +4.029%] |
unsure [+0.459KB; +0.563KB] or [+0.956%; +1.174%] |
||
| scenario:log-skip-log-16 | same | same | worse [+11.778ms; +14.779ms] or [+10.223%; +12.828%] |
worse [+14.454ms; +14.876ms] or [+10.745%; +11.059%] |
same | ||
| scenario:startup-control-everything-16 | same | unsure [+0.108%; +0.534%] |
worse [+0.034s; +0.063s] or [+3.253%; +6.003%] |
worse [+0.040s; +0.060s] or [+3.270%; +4.937%] |
unsure [+0.582KB; +1.294KB] or [+0.480%; +1.068%] |
||
| scenario:log-with-debug-16 | same | same | worse [+11.692ms; +14.646ms] or [+10.116%; +12.671%] |
worse [+14.307ms; +14.653ms] or [+10.632%; +10.889%] |
unsure [-0.043KB; -0.003KB] or [-0.094%; -0.006%] |
||
| scenario:net-with-tracer-16 | same | same | same | same | worse [+1.808KB; +2.065KB] or [+3.067%; +3.503%] |
||
| scenario:plugin-bluebird-with-tracer-16 | same | same | worse [+10.502ms; +13.805ms] or [+4.789%; +6.296%] |
worse [+12.424ms; +12.970ms] or [+5.010%; +5.230%] |
same | ||
| scenario:log-with-error-16 | same | unsure [+0.052%; +0.362%] |
worse [+11.136ms; +14.097ms] or [+9.636%; +12.198%] |
worse [+13.379ms; +13.989ms] or [+9.957%; +10.411%] |
unsure [-0.055KB; -0.017KB] or [-0.121%; -0.038%] |
Benchmarks for Node.js v14
Parameters
| Baseline | Candidate | |
|---|---|---|
| config | baseline | candidate |
| git_branch | master | remote_config_client |
| git_commit_sha | b8be1fb3 | 51285e0d |
See matching parameters
| Baseline | Candidate | |
|---|---|---|
| name | profiler | profiler |
| nodeVersion | 14.20.1 | 14.20.1 |
| variant | control | control |
Summary
Found 3 performance improvements and 24 performance regressions! Performance is the same for 323 cases.
| scenario | Ξ mean cpu_system_time | Ξ mean cpu_usage_percentage | Ξ mean cpu_user_time | Ξ mean execution_time | Ξ mean max_event_loop_delay | Ξ mean max_gc_pause | Ξ mean max_rss_usage |
|---|---|---|---|---|---|---|---|
| scenario:startup-with-tracer-14 | same | same | worse [+9.457ms; +15.912ms] or [+8.172%; +13.750%] |
worse [+13.185ms; +14.369ms] or [+9.964%; +10.859%] |
unsure [+0.514KB; +0.681KB] or [+1.227%; +1.625%] |
||
| scenario:log-without-log-14 | same | unsure [+0.001%; +0.250%] |
worse [+12.137ms; +15.166ms] or [+10.507%; +13.130%] |
worse [+14.736ms; +15.132ms] or [+11.107%; +11.405%] |
worse [+0.678KB; +0.738KB] or [+1.613%; +1.755%] |
||
| scenario:spans-finish-immediately-14 | same | same | worse [+8.657ms; +14.400ms] or [+2.207%; +3.672%] |
worse [+11.470ms; +13.436ms] or [+2.761%; +3.235%] |
unsure [+0.131KB; +0.211KB] or [+0.271%; +0.437%] |
||
| scenario:log-skip-log-14 | worse [+0.344ms; +3.344ms] or [+2.088%; +20.277%] |
same | worse [+11.666ms; +14.671ms] or [+10.079%; +12.675%] |
worse [+14.951ms; +15.149ms] or [+11.274%; +11.423%] |
worse [+0.637KB; +0.686KB] or [+1.514%; +1.632%] |
||
| scenario:async_hooks-init-only-14 | better [-18.520ms; -2.780ms] or [-17.010%; -2.553%] |
same | same | same | same | same | same |
| scenario:log-with-debug-14 | unsure [+0.041ms; +3.158ms] or [+0.240%; +18.523%] |
same | worse [+11.866ms; +14.989ms] or [+10.289%; +12.998%] |
worse [+14.635ms; +15.315ms] or [+11.003%; +11.514%] |
worse [+0.669KB; +0.714KB] or [+1.591%; +1.697%] |
||
| scenario:appsec-control-with-attacks-14 | same | unsure [+0.541%; +2.656%] |
worse [+45.280ms; +87.729ms] or [+5.170%; +10.016%] |
worse [+0.032s; +0.076s] or [+2.990%; +7.000%] |
unsure [+0.119KB; +0.749KB] or [+0.201%; +1.260%] |
||
| scenario:plugin-http-server-with-tracer-14 | same | unsure [-1.258%; -0.592%] |
same | worse [+0.020s; +0.044s] or [+1.587%; +3.412%] |
same | ||
| scenario:plugin-bluebird-with-tracer-14 | unsure [+0.110ms; +3.429ms] or [+0.431%; +13.468%] |
same | worse [+8.631ms; +11.955ms] or [+3.996%; +5.535%] |
worse [+11.845ms; +12.288ms] or [+4.895%; +5.078%] |
unsure [-0.421KB; -0.369KB] or [-0.808%; -0.710%] |
||
| scenario:log-with-error-14 | same | same | worse [+13.338ms; +16.650ms] or [+11.642%; +14.533%] |
worse [+14.661ms; +15.172ms] or [+11.032%; +11.417%] |
worse [+0.652KB; +0.694KB] or [+1.551%; +1.649%] |
||
| scenario:startup-with-tracer-everything-14 | same | unsure [+0.008%; +0.390%] |
unsure [+0.018s; +0.038s] or [+1.391%; +3.032%] |
worse [+0.022s; +0.029s] or [+1.502%; +1.994%] |
better [-2.645KB; -1.777KB] or [-2.307%; -1.550%] |
||
| scenario:plugin-http-server-querystring-obfuscation-14 | same | worse [+1.790%; +2.051%] |
same | better [-0.076s; -0.056s] or [-5.214%; -3.811%] |
same |
Benchmarks for Node.js v18
Parameters
| Baseline | Candidate | |
|---|---|---|
| config | baseline | candidate |
| git_branch | master | remote_config_client |
| git_commit_sha | b8be1fb3 | 51285e0d |
See matching parameters
| Baseline | Candidate | |
|---|---|---|
| name | profiler | profiler |
| nodeVersion | 18.10.0 | 18.10.0 |
| variant | control | control |
Summary
Found 0 performance improvements and 27 performance regressions! Performance is the same for 323 cases.
| scenario | Ξ mean cpu_system_time | Ξ mean cpu_usage_percentage | Ξ mean cpu_user_time | Ξ mean execution_time | Ξ mean max_event_loop_delay | Ξ mean max_gc_pause | Ξ mean max_rss_usage |
|---|---|---|---|---|---|---|---|
| scenario:startup-with-tracer-18 | same | same | worse [+11.562ms; +18.575ms] or [+9.760%; +15.680%] |
worse [+13.858ms; +14.757ms] or [+9.788%; +10.423%] |
worse [+0.954KB; +1.062KB] or [+1.903%; +2.119%] |
||
| scenario:log-without-log-18 | same | same | worse [+12.142ms; +15.278ms] or [+10.054%; +12.651%] |
worse [+14.656ms; +15.097ms] or [+10.342%; +10.653%] |
worse [+0.970KB; +1.004KB] or [+1.929%; +1.997%] |
||
| scenario:spans-finish-immediately-18 | same | same | worse [+20.920ms; +26.848ms] or [+5.869%; +7.532%] |
worse [+24.040ms; +26.599ms] or [+6.293%; +6.963%] |
worse [+1.052KB; +1.099KB] or [+1.938%; +2.024%] |
||
| scenario:log-skip-log-18 | same | same | worse [+12.660ms; +15.776ms] or [+10.539%; +13.134%] |
worse [+14.753ms; +15.101ms] or [+10.409%; +10.655%] |
worse [+0.964KB; +0.993KB] or [+1.918%; +1.974%] |
||
| scenario:log-with-debug-18 | worse [+0.427ms; +3.455ms] or [+2.070%; +16.752%] |
same | worse [+11.331ms; +14.379ms] or [+9.380%; +11.903%] |
worse [+14.746ms; +15.018ms] or [+10.395%; +10.586%] |
worse [+0.965KB; +0.994KB] or [+1.920%; +1.977%] |
||
| scenario:scope-manager-async_local_storage-18 | worse [+0.400ms; +10.212ms] or [+2.902%; +74.089%] |
same | unsure [-10.874ms; -0.880ms] or [-12.558%; -1.016%] |
same | same | ||
| scenario:net-with-tracer-18 | same | same | worse [+19.377ms; +41.744ms] or [+2.364%; +5.094%] |
unsure [+0.018s; +0.053s] or [+1.363%; +3.985%] |
unsure [+0.542KB; +0.797KB] or [+0.793%; +1.167%] |
||
| scenario:spans-finish-later-18 | same | same | unsure [+7.904ms; +18.853ms] or [+1.004%; +2.394%] |
worse [+13.618ms; +16.000ms] or [+1.516%; +1.781%] |
unsure [+0.470KB; +0.827KB] or [+0.228%; +0.401%] |
||
| scenario:plugin-bluebird-with-tracer-18 | same | same | worse [+12.251ms; +15.634ms] or [+5.886%; +7.512%] |
worse [+13.049ms; +13.325ms] or [+5.415%; +5.529%] |
unsure [+0.490KB; +0.529KB] or [+0.790%; +0.854%] |
||
| scenario:log-with-error-18 | same | same | worse [+12.075ms; +15.261ms] or [+10.140%; +12.815%] |
worse [+13.438ms; +14.027ms] or [+9.488%; +9.904%] |
worse [+0.965KB; +0.994KB] or [+1.918%; +1.976%] |
||
| scenario:plugin-http-server-querystring-obfuscation-18 | worse [+4.689ms; +32.271ms] or [+3.635%; +25.014%] |
same | unsure [-30.577ms; -2.159ms] or [-7.042%; -0.497%] |
same | same | ||
| scenario:plugin-dns-with-tracer-18 | same | unsure [-0.647%; -0.248%] |
unsure [-22.259ms; -4.271ms] or [-5.254%; -1.008%] |
same | worse [+0.976KB; +1.308KB] or [+1.703%; +2.283%] |
||
| scenario:startup-with-tracer-everything-18 | worse [+10.612ms; +29.651ms] or [+6.074%; +16.970%] |
same | same | unsure [+0.007s; +0.018s] or [+0.476%; +1.232%] |
unsure [+0.547KB; +0.866KB] or [+0.395%; +0.626%] |
Benchmarks for Node.js v16
Parameters
| Baseline | Candidate | |
|---|---|---|
| config | baseline | candidate |
| git_branch | master | remote_config_client |
| git_commit_sha | b8be1fb3 | d82489d9 |
See matching parameters
| Baseline | Candidate | |
|---|---|---|
| name | profiler | profiler |
| nodeVersion | 16.17.1 | 16.17.1 |
| variant | control | control |
Summary
Found 0 performance improvements and 20 performance regressions! Performance is the same for 330 cases.
| scenario | Ξ mean cpu_system_time | Ξ mean cpu_usage_percentage | Ξ mean cpu_user_time | Ξ mean execution_time | Ξ mean max_event_loop_delay | Ξ mean max_gc_pause | Ξ mean max_rss_usage |
|---|---|---|---|---|---|---|---|
| scenario:startup-with-tracer-16 | same | same | worse [+13.483ms; +19.650ms] or [+11.866%; +17.292%] |
worse [+14.033ms; +15.690ms] or [+10.487%; +11.725%] |
worse [+0.726KB; +0.925KB] or [+1.625%; +2.070%] |
||
| scenario:log-without-log-16 | same | same | worse [+12.556ms; +15.606ms] or [+10.893%; +13.540%] |
worse [+14.692ms; +15.059ms] or [+10.952%; +11.226%] |
same | ||
| scenario:spans-finish-immediately-16 | same | same | worse [+13.093ms; +19.006ms] or [+3.546%; +5.148%] |
worse [+14.391ms; +17.301ms] or [+3.681%; +4.425%] |
unsure [+0.428KB; +0.522KB] or [+0.891%; +1.088%] |
||
| scenario:log-skip-log-16 | same | same | worse [+12.881ms; +15.853ms] or [+11.165%; +13.740%] |
worse [+14.510ms; +14.767ms] or [+10.801%; +10.993%] |
same | ||
| scenario:startup-control-everything-16 | same | same | worse [+0.042s; +0.070s] or [+4.057%; +6.650%] |
worse [+0.038s; +0.057s] or [+3.128%; +4.736%] |
unsure [+0.979KB; +1.630KB] or [+0.807%; +1.344%] |
||
| scenario:log-with-debug-16 | same | same | worse [+11.618ms; +14.537ms] or [+10.014%; +12.530%] |
worse [+14.297ms; +14.760ms] or [+10.635%; +10.979%] |
same | ||
| scenario:net-with-tracer-16 | same | same | same | same | worse [+1.830KB; +2.069KB] or [+3.104%; +3.509%] |
||
| scenario:plugin-bluebird-with-tracer-16 | same | same | worse [+11.407ms; +14.733ms] or [+5.229%; +6.754%] |
worse [+12.511ms; +12.986ms] or [+5.061%; +5.253%] |
same | ||
| scenario:log-with-error-16 | same | unsure [+0.041%; +0.253%] |
worse [+11.227ms; +14.443ms] or [+9.767%; +12.565%] |
worse [+13.540ms; +14.039ms] or [+10.100%; +10.472%] |
same | ||
| scenario:spans-finish-later-16 | same | same | unsure [+6.494ms; +18.354ms] or [+0.777%; +2.197%] |
worse [+14.289ms; +18.554ms] or [+1.513%; +1.964%] |
unsure [+0.837KB; +1.934KB] or [+0.406%; +0.937%] |
||
| scenario:plugin-q-with-tracer-16 | same | same | unsure [+8.607ms; +20.254ms] or [+1.040%; +2.447%] |
worse [+13.516ms; +22.636ms] or [+1.506%; +2.522%] |
unsure [+0.057KB; +0.526KB] or [+0.042%; +0.388%] |
Benchmarks for Node.js v14
Parameters
| Baseline | Candidate | |
|---|---|---|
| config | baseline | candidate |
| git_branch | master | remote_config_client |
| git_commit_sha | b8be1fb3 | d82489d9 |
See matching parameters
| Baseline | Candidate | |
|---|---|---|
| name | profiler | profiler |
| nodeVersion | 14.20.1 | 14.20.1 |
| variant | control | control |
Summary
Found 1 performance improvements and 24 performance regressions! Performance is the same for 325 cases.
| scenario | Ξ mean cpu_system_time | Ξ mean cpu_usage_percentage | Ξ mean cpu_user_time | Ξ mean execution_time | Ξ mean max_event_loop_delay | Ξ mean max_gc_pause | Ξ mean max_rss_usage |
|---|---|---|---|---|---|---|---|
| scenario:startup-with-tracer-14 | same | same | worse [+9.369ms; +16.391ms] or [+8.157%; +14.270%] |
worse [+13.709ms; +14.523ms] or [+10.349%; +10.963%] |
unsure [+0.448KB; +0.619KB] or [+1.069%; +1.475%] |
||
| scenario:log-without-log-14 | same | same | worse [+13.483ms; +16.658ms] or [+11.754%; +14.523%] |
worse [+14.862ms; +15.305ms] or [+11.192%; +11.526%] |
worse [+0.661KB; +0.712KB] or [+1.572%; +1.693%] |
||
| scenario:spans-finish-immediately-14 | same | same | worse [+11.020ms; +16.546ms] or [+2.808%; +4.215%] |
worse [+12.386ms; +15.139ms] or [+2.973%; +3.634%] |
unsure [+0.137KB; +0.206KB] or [+0.284%; +0.425%] |
||
| scenario:log-skip-log-14 | unsure [+0.028ms; +2.889ms] or [+0.180%; +18.274%] |
unsure [+0.001%; +0.403%] |
worse [+12.189ms; +15.039ms] or [+10.453%; +12.897%] |
worse [+14.498ms; +15.134ms] or [+10.894%; +11.372%] |
worse [+0.669KB; +0.711KB] or [+1.591%; +1.690%] |
||
| scenario:log-with-debug-14 | worse [+0.464ms; +3.421ms] or [+2.832%; +20.888%] |
same | worse [+11.556ms; +14.530ms] or [+9.948%; +12.507%] |
worse [+14.709ms; +15.521ms] or [+11.042%; +11.652%] |
worse [+0.673KB; +0.714KB] or [+1.600%; +1.697%] |
||
| scenario:appsec-control-with-attacks-14 | same | same | worse [+55.106ms; +86.430ms] or [+6.413%; +10.058%] |
worse [+0.049s; +0.076s] or [+4.617%; +7.131%] |
unsure [+0.124KB; +0.601KB] or [+0.207%; +1.006%] |
||
| scenario:plugin-bluebird-with-tracer-14 | same | same | worse [+10.309ms; +13.566ms] or [+4.781%; +6.291%] |
worse [+11.832ms; +12.247ms] or [+4.890%; +5.062%] |
unsure [-0.421KB; -0.371KB] or [-0.809%; -0.714%] |
||
| scenario:log-with-error-14 | same | same | worse [+12.757ms; +15.711ms] or [+11.105%; +13.676%] |
worse [+14.599ms; +15.049ms] or [+10.973%; +11.311%] |
worse [+0.665KB; +0.706KB] or [+1.580%; +1.678%] |
||
| scenario:startup-with-tracer-everything-14 | same | same | worse [+0.020s; +0.040s] or [+1.578%; +3.116%] |
worse [+0.026s; +0.032s] or [+1.761%; +2.168%] |
unsure [-2.603KB; -1.529KB] or [-2.279%; -1.339%] |
||
| scenario:plugin-http-server-querystring-obfuscation-14 | same | worse [+1.740%; +1.913%] |
same | better [-0.073s; -0.052s] or [-5.020%; -3.582%] |
same |
Benchmarks for Node.js v18
Parameters
| Baseline | Candidate | |
|---|---|---|
| config | baseline | candidate |
| git_branch | master | remote_config_client |
| git_commit_sha | b8be1fb3 | d82489d9 |
See matching parameters
| Baseline | Candidate | |
|---|---|---|
| name | profiler | profiler |
| nodeVersion | 18.10.0 | 18.10.0 |
| variant | control | control |
Summary
Found 0 performance improvements and 24 performance regressions! Performance is the same for 326 cases.
| scenario | Ξ mean cpu_system_time | Ξ mean cpu_usage_percentage | Ξ mean cpu_user_time | Ξ mean execution_time | Ξ mean max_event_loop_delay | Ξ mean max_gc_pause | Ξ mean max_rss_usage |
|---|---|---|---|---|---|---|---|
| scenario:startup-with-tracer-18 | same | same | worse [+11.580ms; +19.172ms] or [+9.752%; +16.144%] |
worse [+13.955ms; +14.747ms] or [+9.907%; +10.469%] |
worse [+0.954KB; +1.038KB] or [+1.902%; +2.069%] |
||
| scenario:log-without-log-18 | same | same | worse [+13.012ms; +16.148ms] or [+10.864%; +13.483%] |
worse [+14.751ms; +15.226ms] or [+10.441%; +10.777%] |
worse [+0.982KB; +1.012KB] or [+1.954%; +2.012%] |
||
| scenario:spans-finish-immediately-18 | same | same | worse [+20.625ms; +26.922ms] or [+5.788%; +7.555%] |
worse [+24.808ms; +27.371ms] or [+6.508%; +7.181%] |
worse [+1.051KB; +1.094KB] or [+1.935%; +2.015%] |
||
| scenario:log-skip-log-18 | same | same | worse [+13.417ms; +16.341ms] or [+11.202%; +13.644%] |
worse [+14.793ms; +15.001ms] or [+10.468%; +10.615%] |
worse [+0.954KB; +0.984KB] or [+1.896%; +1.956%] |
||
| scenario:startup-control-everything-18 | same | same | same | unsure [+0.003s; +0.013s] or [+0.274%; +1.013%] |
worse [+2.310KB; +4.372KB] or [+1.767%; +3.344%] |
||
| scenario:log-with-debug-18 | same | same | worse [+13.183ms; +16.175ms] or [+11.042%; +13.547%] |
worse [+14.619ms; +15.028ms] or [+10.324%; +10.613%] |
worse [+0.961KB; +0.991KB] or [+1.911%; +1.970%] |
||
| scenario:net-with-tracer-18 | same | same | worse [+23.220ms; +41.929ms] or [+2.836%; +5.121%] |
unsure [+0.017s; +0.051s] or [+1.284%; +3.890%] |
unsure [+0.575KB; +0.859KB] or [+0.843%; +1.258%] |
||
| scenario:spans-finish-later-18 | same | same | worse [+12.305ms; +23.227ms] or [+1.573%; +2.970%] |
unsure [+12.415ms; +15.081ms] or [+1.385%; +1.683%] |
unsure [+0.452KB; +0.800KB] or [+0.219%; +0.388%] |
||
| scenario:plugin-bluebird-with-tracer-18 | same | same | worse [+11.787ms; +15.291ms] or [+5.641%; +7.318%] |
worse [+12.910ms; +13.389ms] or [+5.356%; +5.554%] |
unsure [+0.479KB; +0.514KB] or [+0.772%; +0.830%] |
||
| scenario:log-with-error-18 | same | unsure [+0.030%; +0.117%] |
worse [+11.412ms; +14.541ms] or [+9.499%; +12.103%] |
worse [+13.295ms; +13.879ms] or [+9.407%; +9.820%] |
worse [+0.962KB; +0.991KB] or [+1.913%; +1.971%] |
||
| scenario:plugin-dns-with-tracer-18 | same | unsure [-0.577%; -0.146%] |
unsure [-16.859ms; -1.606ms] or [-3.982%; -0.379%] |
same | worse [+1.183KB; +1.470KB] or [+2.066%; +2.567%] |
Integration tests are failing with one span being called http.requestinstead of web.request but I rebased twice, I thought this was fixed ?
Integration tests are failing with one span being called
http.requestinstead ofweb.requestbut I rebased twice, I thought this was fixed ?
one of the tests might need an extra DD_TRACE_TELEMETRY_ENABLED=false
I think it was only set for a test (the one that was failing then): https://github.com/DataDog/dd-trace-js/pull/2422/files#diff-aef7d5c9ebb5bb277297013f0d492dde1b78b2913a1a7e2dae02adead1aebc15R148
@juan-fernandez it's the same test failing :thinking: and it has the DD_TRACE_TELEMETRY_ENABLED: 'false'
Wait my PR is sending an outgoing http request at startup, could that fail the test the same way ? @juan-fernandez
Wait my PR is sending an outgoing http request at startup, could that fail the test the same way ? @juan-fernandez
yes it could
If I disable the remote config requests, the test passes. Instead of disabling remote config (not currently possible), could we just fix the damn test instead ? :sweat_smile:
Benchmarks
Found 10 performance improvements and 41 performance regressions! Performance is the same for 999 cases.
scenario:startup-with-tracer-14
- π₯
cpu_user_time[+1.816ms; +8.909ms] or [+1.584%; +7.772%] - π₯
execution_time[+3.073ms; +4.618ms] or [+2.329%; +3.500%]
scenario:appsec-control-14
- π©
cpu_system_time[-24.521ms; -2.903ms] or [-20.616%; -2.440%]
scenario:log-without-log-14
- π₯
cpu_user_time[+2.398ms; +5.372ms] or [+2.083%; +4.666%] - π₯
execution_time[+4.384ms; +5.009ms] or [+3.336%; +3.811%]
scenario:log-skip-log-14
- π₯
cpu_user_time[+2.405ms; +5.452ms] or [+2.097%; +4.755%] - π₯
execution_time[+4.428ms; +4.942ms] or [+3.369%; +3.760%]
scenario:log-with-debug-14
- π₯
cpu_user_time[+4.055ms; +6.925ms] or [+3.552%; +6.066%] - π₯
execution_time[+4.350ms; +4.824ms] or [+3.304%; +3.664%]
scenario:plugin-bluebird-with-tracer-14
- π₯
cpu_user_time[+5.612ms; +8.899ms] or [+2.614%; +4.146%] - π₯
execution_time[+6.033ms; +7.340ms] or [+2.512%; +3.056%]
scenario:log-with-error-14
- π₯
cpu_user_time[+3.387ms; +6.203ms] or [+2.971%; +5.442%] - π₯
execution_time[+4.404ms; +4.750ms] or [+3.345%; +3.608%]
scenario:net-with-tracer-14
- π₯
max_rss_usage[+1.693KB; +2.367KB] or [+3.121%; +4.363%]
scenario:startup-with-tracer-everything-14
- π₯
execution_time[+0.025s; +0.032s] or [+1.674%; +2.137%] - π₯
max_rss_usage[+3.017KB; +3.351KB] or [+2.611%; +2.900%]
scenario:plugin-http-server-querystring-obfuscation-14
- π₯
cpu_usage_percentage[+0.931%; +1.479%] - π©
execution_time[-0.052s; -0.031s] or [-3.701%; -2.188%]
scenario:profiler-control-16
- π©
cpu_system_time[-16.919ms; -1.831ms] or [-64.867%; -7.021%] - π₯
cpu_user_time[+1.576ms; +17.582ms] or [+1.501%; +16.747%] - π©
max_event_loop_delay[-6.608ms; -1.153ms] or [-105.501%; -18.400%]
scenario:startup-with-tracer-16
- π₯
execution_time[+3.229ms; +3.715ms] or [+2.439%; +2.807%]
scenario:exporting-pipeline-0.4-16
- π₯
cpu_user_time[+29.442ms; +59.737ms] or [+3.103%; +6.297%] - π₯
execution_time[+0.032s; +0.057s] or [+3.131%; +5.624%] - π©
max_rss_usage[-6.531KB; -1.644KB] or [-6.842%; -1.722%]
scenario:log-without-log-16
- π₯
cpu_user_time[+2.346ms; +5.267ms] or [+2.062%; +4.628%] - π₯
execution_time[+2.839ms; +3.532ms] or [+2.137%; +2.658%]
scenario:net-control-16
- π©
cpu_system_time[-17.526ms; -3.091ms] or [-10.821%; -1.909%]
scenario:log-skip-log-16
- π₯
cpu_user_time[+1.761ms; +4.869ms] or [+1.544%; +4.267%] - π₯
execution_time[+3.248ms; +3.539ms] or [+2.448%; +2.667%]
scenario:exporting-pipeline-0.4_with_stats-16
- π₯
cpu_user_time[+36.331ms; +67.298ms] or [+3.815%; +7.066%] - π₯
execution_time[+0.037s; +0.064s] or [+3.589%; +6.287%] - π©
max_rss_usage[-7.708KB; -4.331KB] or [-8.008%; -4.500%]
scenario:log-with-debug-16
- π₯
execution_time[+2.843ms; +3.634ms] or [+2.135%; +2.728%]
scenario:net-with-tracer-16
- π₯
max_rss_usage[+1.640KB; +1.829KB] or [+2.774%; +3.094%]
scenario:plugin-bluebird-with-tracer-16
- π₯
cpu_user_time[+5.190ms; +8.920ms] or [+2.392%; +4.111%] - π₯
execution_time[+6.162ms; +7.459ms] or [+2.510%; +3.038%]
scenario:log-with-error-16
- π₯
execution_time[+2.898ms; +3.604ms] or [+2.186%; +2.718%]
scenario:plugin-dns-with-tracer-16
- π₯
cpu_usage_percentage[+0.620%; +0.921%]
scenario:startup-with-tracer-18
- π₯
execution_time[+2.969ms; +3.310ms] or [+2.131%; +2.376%]
scenario:log-without-log-18
- π₯
execution_time[+3.239ms; +3.576ms] or [+2.318%; +2.559%]
scenario:exporting-pipeline-0.4-18
- π©
cpu_system_time[-16.251ms; -3.363ms] or [-20.789%; -4.302%]
scenario:log-skip-log-18
- π₯
execution_time[+3.205ms; +3.416ms] or [+2.292%; +2.443%]
scenario:exporting-pipeline-0.5-18
- π©
cpu_system_time[-14.847ms; -2.894ms] or [-29.079%; -5.669%]
scenario:log-with-debug-18
- π₯
execution_time[+2.984ms; +3.345ms] or [+2.129%; +2.387%]
scenario:plugin-bluebird-with-tracer-18
- π₯
cpu_user_time[+5.162ms; +8.816ms] or [+2.471%; +4.220%] - π₯
execution_time[+6.197ms; +7.497ms] or [+2.595%; +3.139%]
scenario:log-with-error-18
- π₯
cpu_user_time[+2.089ms; +5.176ms] or [+1.748%; +4.332%] - π₯
execution_time[+3.043ms; +3.278ms] or [+2.176%; +2.344%]
scenario:plugin-q-with-tracer-18
- π©
execution_time[-18.945ms; -13.624ms] or [-2.134%; -1.534%]
scenario:plugin-dns-with-tracer-18
- π₯
max_rss_usage[+0.896KB; +1.259KB] or [+1.555%; +2.186%]
Benchmarks
Found 4 performance improvements and 61 performance regressions! Performance is the same for 901 cases.
scenario:startup-with-tracer-14
- π₯
execution_time[+4.188ms; +4.686ms] or [+3.191%; +3.571%] - π₯
instructions[+8462200; +8755292] or [+2.583%; +2.672%]
scenario:log-without-log-14
- π₯
cpu_user_time[+2.525ms; +5.417ms] or [+2.212%; +4.746%] - π₯
execution_time[+4.075ms; +4.970ms] or [+3.096%; +3.776%] - π₯
instructions[+8688769; +8843857] or [+2.638%; +2.685%]
scenario:log-skip-log-14
- π₯
cpu_user_time[+1.820ms; +4.810ms] or [+1.579%; +4.175%] - π₯
execution_time[+4.322ms; +4.514ms] or [+3.284%; +3.430%] - π₯
instructions[+8730701; +8898770] or [+2.651%; +2.702%]
scenario:log-with-debug-14
- π₯
cpu_user_time[+2.721ms; +5.583ms] or [+2.364%; +4.852%] - π₯
execution_time[+4.155ms; +4.849ms] or [+3.150%; +3.676%] - π₯
instructions[+8740971; +8869905] or [+2.654%; +2.693%]
scenario:plugin-bluebird-with-tracer-14
- π₯
cpu_user_time[+19.744ms; +23.140ms] or [+9.234%; +10.822%] - π₯
execution_time[+20.864ms; +21.307ms] or [+8.667%; +8.851%] - π₯
instructions[+41472960; +42611319] or [+6.682%; +6.865%]
scenario:log-with-error-14
- π₯
cpu_user_time[+2.809ms; +5.533ms] or [+2.442%; +4.809%] - π₯
execution_time[+3.999ms; +4.634ms] or [+3.031%; +3.513%] - π₯
instructions[+8602139; +8766015] or [+2.611%; +2.661%]
scenario:spans-finish-later-14
- π©
instructions[-106038937; -38415461] or [-5.003%; -1.812%]
scenario:plugin-http-server-querystring-obfuscation-14
- π₯
cpu_usage_percentage[+0.918%; +1.053%] - π©
execution_time[-23.675ms; -20.068ms] or [-2.688%; -2.279%]
scenario:net-with-tracer-14
- π₯
cpu_user_time[+3.684ms; +7.455ms] or [+1.532%; +3.101%] - π₯
execution_time[+5.850ms; +7.727ms] or [+1.609%; +2.126%] - π₯
instructions[+14766551; +14972276] or [+2.284%; +2.316%]
scenario:startup-with-tracer-16
- π₯
execution_time[+3.082ms; +4.012ms] or [+2.322%; +3.023%] - π₯
instructions[+8233942; +8382925] or [+2.478%; +2.523%]
scenario:log-without-log-16
- π₯
execution_time[+3.215ms; +3.498ms] or [+2.423%; +2.636%] - π₯
instructions[+8381576; +8451096] or [+2.511%; +2.532%]
scenario:log-skip-log-16
- π₯
cpu_user_time[+3.543ms; +6.429ms] or [+3.132%; +5.684%] - π₯
execution_time[+3.207ms; +3.984ms] or [+2.414%; +2.999%] - π₯
instructions[+8404170; +8470985] or [+2.518%; +2.538%]
scenario:startup-control-everything-16
- π₯
cpu_user_time[+0.017s; +0.043s] or [+1.545%; +3.962%] - π₯
execution_time[+0.020s; +0.042s] or [+1.624%; +3.358%]
scenario:log-with-debug-16
- π₯
cpu_user_time[+1.878ms; +4.839ms] or [+1.651%; +4.253%] - π₯
execution_time[+3.208ms; +3.423ms] or [+2.414%; +2.576%] - π₯
instructions[+8355208; +8418547] or [+2.503%; +2.522%]
scenario:log-with-error-16
- π₯
execution_time[+2.858ms; +3.462ms] or [+2.151%; +2.606%] - π₯
instructions[+8138213; +8245773] or [+2.438%; +2.470%]
scenario:plugin-bluebird-with-tracer-16
- π₯
cpu_user_time[+17.716ms; +20.988ms] or [+8.116%; +9.615%] - π₯
execution_time[+21.078ms; +21.568ms] or [+8.552%; +8.751%] - π₯
instructions[+39355281; +40073105] or [+6.437%; +6.554%]
scenario:plugin-dns-with-tracer-16
- π₯
cpu_user_time[+9.906ms; +24.978ms] or [+2.455%; +6.190%] - π₯
instructions[+17100559; +23929944] or [+2.048%; +2.866%]
scenario:net-with-tracer-16
- π₯
cpu_user_time[+13.857ms; +17.527ms] or [+6.183%; +7.821%] - π₯
execution_time[+15.069ms; +17.102ms] or [+4.334%; +4.918%] - π₯
instructions[+13382602; +13521589] or [+2.213%; +2.236%]
scenario:startup-with-tracer-18
- π₯
execution_time[+2.434ms; +3.868ms] or [+1.713%; +2.721%] - π₯
instructions[+8168659; +8412970] or [+2.306%; +2.375%]
scenario:log-without-log-18
- π₯
cpu_user_time[+2.943ms; +5.995ms] or [+2.438%; +4.965%] - π₯
execution_time[+3.782ms; +4.239ms] or [+2.634%; +2.952%] - π₯
instructions[+9024341; +9130182] or [+2.527%; +2.557%]
scenario:log-skip-log-18
- π₯
cpu_user_time[+2.114ms; +5.481ms] or [+1.741%; +4.514%] - π₯
execution_time[+4.085ms; +4.281ms] or [+2.846%; +2.983%] - π₯
instructions[+9022235; +9154035] or [+2.526%; +2.563%]
scenario:log-with-debug-18
- π₯
cpu_user_time[+2.568ms; +6.024ms] or [+2.109%; +4.949%] - π₯
execution_time[+3.961ms; +4.248ms] or [+2.757%; +2.957%] - π₯
instructions[+9019402; +9135608] or [+2.525%; +2.558%]
scenario:plugin-bluebird-with-tracer-18
- π₯
cpu_user_time[+11.076ms; +14.476ms] or [+5.199%; +6.795%] - π₯
execution_time[+12.890ms; +13.233ms] or [+5.262%; +5.402%] - π₯
instructions[+36339223; +36909345] or [+6.193%; +6.290%]
scenario:log-with-error-18
- π₯
cpu_user_time[+2.828ms; +6.196ms] or [+2.319%; +5.081%] - π₯
execution_time[+3.758ms; +4.158ms] or [+2.615%; +2.894%] - π₯
instructions[+8861352; +8988744] or [+2.481%; +2.517%]
scenario:plugin-q-with-tracer-18
- π©
cpu_user_time[-26.615ms; -15.678ms] or [-3.199%; -1.884%]
scenario:plugin-dns-with-tracer-18
- π©
instructions[-24382778; -15907950] or [-2.694%; -1.757%]
scenario:net-with-tracer-18
- π₯
instructions[+11504719; +12002576] or [+1.813%; +1.892%]
@simon-id can you rebase this PR on master? It should fix many of the benchmarks.
@rochdev Yes the stealthy-require integ test is failing because you guys told me to move the dirty fix I made out of this PR, so I did: https://github.com/DataDog/dd-trace-js/pull/2537