Skip to content
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

v5.18.0 #4496

Merged
merged 70 commits into from
Jul 11, 2024
Merged

v5.18.0 #4496

merged 70 commits into from
Jul 11, 2024

Conversation

juan-fernandez
Copy link
Collaborator

@juan-fernandez juan-fernandez commented Jul 10, 2024

Improvements

Features

Bug fixes

uurien and others added 30 commits July 10, 2024 11:46

---------

Co-authored-by: Carles Capell <[email protected]>
Co-authored-by: simon-id <[email protected]>
* Fix cassandra tests

* Use cassandra 2.2.4

* Use cassandra 3
* Stack trace collection configuration

* Collect and report stack trace for appsec events

* Handle generate_stack waf action

* Fix linting in config.spec.js

* Add assertion for stack trace tag in meta_struct for express test

* Refactor reportStackTrace and some additional test

* Fix lint

* Additional assert in reportStackTrace test

* Update config

* Rework on stack trace collection

* Callsite line and column as numbers

* Update packages/dd-trace/src/appsec/stack_trace.js

Co-authored-by: Ugaitz Urien <[email protected]>

* Update packages/dd-trace/src/appsec/stack_trace.js

Co-authored-by: Ugaitz Urien <[email protected]>

* Reorder test structure

* Fix linting

* No exploit stack limit when max is set to 0 or below

* Fix filtered and capped frames case

* Fix lint

---------

Co-authored-by: Ugaitz Urien <[email protected]>
* Add JS Hapi macrobenchmark

* Specify dd-trace-js version via DDTRACE_INSTALL_VERSION

* Fix branch name

* Tweak RPS

* Tweak benchmark duration

* Repeatability testing

* Add retries on Gitlab internal system failures, tweak RPS

* Keep only 2 variants for a moment

---------

Co-authored-by: Dmytro Yurchenko <[email protected]>
* DD_APM_TRACING_ENABLED and span _dd.apm.enabled tag

* clean up

* Use MANUAL_KEEP const

* Add _dd.p.appsec tag on standalone ASM events

* Include apmTracingEnabled checks

* Appsec Reporter tests

* Appsec sdk track_event test

* Use numeric value for _dd.p.appsec

* Include appsec standalone config in .ts files

* Clean up null and undefined values

* Remove not needed config properties

* standalone module

* Clean up

* standalone proxy test

* Update packages/dd-trace/test/appsec/iast/vulnerability-reporter.spec.js

Co-authored-by: Ugaitz Urien <[email protected]>

* appsec reporter test

* Use standalone singletone in vulnerability-reporter

* continue applying ratelimiter on appsec standalone events

* Update packages/dd-trace/src/appsec/reporter.js

Co-authored-by: simon-id <[email protected]>

* Add _dd.apm.enabled:0 in root spans with remote parent

* Use a method to add the tag

* Remove apmTracingEnabled config property

* Add _dd.p.appsec tag in trace tags

* Some tests

* Set _dd.apm.enabled in root span

* configure standalone if _tracingInitialized

* Use dd-trace:span:start channel

* Clean up

* use a meta tag

* hasSubscribers check

* test description

* Check span context has tags before using them and check if config has changed

* clean up

* Clean up

* Clean up

* clean up

* Update packages/dd-trace/test/appsec/sdk/track_event.spec.js

Co-authored-by: Ugaitz Urien <[email protected]>

* Update packages/dd-trace/test/appsec/standalone.spec.js

Co-authored-by: Ugaitz Urien <[email protected]>

* protect sample method

* Use assert instead expect

* unsubscribe after test

* suggestions

---------

Co-authored-by: Ugaitz Urien <[email protected]>
Co-authored-by: simon-id <[email protected]>
* Fix null filename on frame filtering

* Use startsWith instead of includes on callSite filename check

* Rework stack trace reporting when callistelist is undefined

* Avoid checking for max stack trace depth twice

* Use Array(n).fill() instead of [...Array(n).keys()]

* Fix linting
* increase timeout for aws-sdk and next tests

* increase timeout for profiling integration tests

* increase timeout for appsec tests

* increase timeout for next test setup
* remove get-port usage from http tests and test agent

* move test tracer init after port allocation
* ensure datadog attributes are received by sqs and set DSM extraction context in request complete if no callback is used
* remove most usage of get-port for plugins

* remove get-port from instrumentation tests

* fix new test
* fix

* change typo

* add tiktoken as dev dependency for testing

* change tests to check tiktoken usage

* test in-house estimator separately

* add tiktoken license to third party
* Add guardrails for SSI

* PR feedback

* test on a swath of versions, in CI only
@pr-commenter
Copy link

pr-commenter bot commented Jul 10, 2024

Benchmarks

Benchmark execution time: 2024-07-10 15:39:00

Comparing candidate commit 5e2767c in PR branch v5.18.0-proposal with baseline commit c465dbf in branch v5.x.

Found 19 performance improvements and 0 performance regressions! Performance is the same for 242 metrics, 5 unstable metrics.

scenario:exporting-pipeline-0.4-18

  • 🟩 cpu_user_time [-22.007ms; -16.166ms] or [-8.151%; -5.988%]
  • 🟩 execution_time [-25.747ms; -18.548ms] or [-8.251%; -5.944%]
  • 🟩 instructions [-55.9M instructions; -55.4M instructions] or [-7.116%; -7.061%]

scenario:exporting-pipeline-0.4_with_stats-18

  • 🟩 cpu_user_time [-20.105ms; -14.617ms] or [-7.437%; -5.407%]
  • 🟩 execution_time [-23.674ms; -16.505ms] or [-7.584%; -5.287%]
  • 🟩 instructions [-55.7M instructions; -55.3M instructions] or [-7.075%; -7.023%]

scenario:exporting-pipeline-0.5-18

  • 🟩 cpu_user_time [-22.088ms; -17.519ms] or [-9.852%; -7.814%]
  • 🟩 execution_time [-22.706ms; -15.842ms] or [-8.675%; -6.053%]
  • 🟩 instructions [-56.5M instructions; -55.0M instructions] or [-9.794%; -9.524%]

scenario:exporting-pipeline-0.5_with_stats-18

  • 🟩 cpu_user_time [-20.437ms; -15.555ms] or [-9.083%; -6.913%]
  • 🟩 execution_time [-23.463ms; -16.002ms] or [-8.890%; -6.063%]
  • 🟩 instructions [-55.5M instructions; -53.4M instructions] or [-9.589%; -9.224%]

scenario:scope-manager-async_hooks-18

  • 🟩 cpu_user_time [-28.850ms; -20.703ms] or [-29.982%; -21.516%]
  • 🟩 instructions [-63.4M instructions; -57.5M instructions] or [-20.006%; -18.155%]

scenario:scope-manager-async_local_storage-18

  • 🟩 instructions [-63.2M instructions; -57.5M instructions] or [-19.973%; -18.187%]

scenario:scope-manager-async_resource-18

  • 🟩 cpu_user_time [-32.030ms; -22.988ms] or [-33.805%; -24.262%]
  • 🟩 instructions [-63.5M instructions; -57.7M instructions] or [-20.051%; -18.205%]

scenario:scope-manager-base-18

  • 🟩 cpu_user_time [-31.399ms; -22.031ms] or [-32.610%; -22.880%]
  • 🟩 instructions [-63.5M instructions; -57.7M instructions] or [-20.038%; -18.232%]

Copy link

codecov bot commented Jul 10, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Please upload report for BASE (v5.x@c465dbf). Learn more about missing BASE report.

Additional details and impacted files
@@           Coverage Diff           @@
##             v5.x    #4496   +/-   ##
=======================================
  Coverage        ?   95.77%           
=======================================
  Files           ?      101           
  Lines           ?     3267           
  Branches        ?       33           
=======================================
  Hits            ?     3129           
  Misses          ?      138           
  Partials        ?        0           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@juan-fernandez juan-fernandez marked this pull request as ready for review July 10, 2024 12:36
@juan-fernandez juan-fernandez requested a review from a team as a code owner July 10, 2024 12:36
@juan-fernandez juan-fernandez merged commit 01464c7 into v5.x Jul 11, 2024
169 checks passed
@juan-fernandez juan-fernandez deleted the v5.18.0-proposal branch July 11, 2024 07:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.