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

add express-session instrumentation #5060

Draft
wants to merge 9 commits into
base: automatic_userid_blocking
Choose a base branch
from

Conversation

simon-id
Copy link
Member

What does this PR do?

Motivation

Plugin Checklist

Additional Notes

Copy link

github-actions bot commented Dec 27, 2024

Overall package size

Self size: 8.49 MB
Deduped: 94.84 MB
No deduping: 95.35 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.4.0 | 29.44 MB | 29.44 MB | | @datadog/native-appsec | 8.4.0 | 19.25 MB | 19.26 MB | | @datadog/native-iast-taint-tracking | 3.2.0 | 13.9 MB | 13.91 MB | | @datadog/pprof | 5.4.1 | 9.76 MB | 10.13 MB | | protobufjs | 7.2.5 | 2.77 MB | 5.16 MB | | @datadog/native-iast-rewriter | 2.6.1 | 2.59 MB | 2.73 MB | | @opentelemetry/core | 1.14.0 | 872.87 kB | 1.47 MB | | @datadog/native-metrics | 3.1.0 | 1.06 MB | 1.46 MB | | @opentelemetry/api | 1.8.0 | 1.21 MB | 1.21 MB | | import-in-the-middle | 1.11.2 | 112.74 kB | 826.22 kB | | source-map | 0.7.4 | 226 kB | 226 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | lru-cache | 7.18.3 | 133.92 kB | 133.92 kB | | pprof-format | 2.1.0 | 111.69 kB | 111.69 kB | | @datadog/sketches-js | 2.1.0 | 109.9 kB | 109.9 kB | | semver | 7.6.3 | 95.82 kB | 95.82 kB | | lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB | | ignore | 5.3.1 | 51.46 kB | 51.46 kB | | shell-quote | 1.8.1 | 44.96 kB | 44.96 kB | | istanbul-lib-coverage | 3.2.0 | 29.34 kB | 29.34 kB | | rfdc | 1.3.1 | 25.21 kB | 25.21 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | limiter | 1.1.5 | 23.17 kB | 23.17 kB | | dc-polyfill | 0.1.4 | 23.1 kB | 23.1 kB | | retry | 0.13.1 | 18.85 kB | 18.85 kB | | jest-docblock | 29.7.0 | 8.99 kB | 12.76 kB | | crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB | | path-to-regexp | 0.1.12 | 6.6 kB | 6.6 kB | | koalas | 1.0.2 | 6.47 kB | 6.47 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

@pr-commenter
Copy link

pr-commenter bot commented Dec 27, 2024

Benchmarks

Benchmark execution time: 2025-01-18 15:02:57

Comparing candidate commit 2e652bb in PR branch appsec_session_id with baseline commit 4d6a8e3 in branch master.

Found 1 performance improvements and 1 performance regressions! Performance is the same for 779 metrics, 17 unstable metrics.

scenario:log-without-log-20

  • 🟥 cpu_user_time [+17.317ms; +21.628ms] or [+5.027%; +6.278%]

scenario:plugin-graphql-with-async-hooks-22

  • 🟩 max_rss_usage [-117.990MB; -102.342MB] or [-18.142%; -15.736%]

if (sessionMiddlewareFinishCh.hasSubscribers) {
const abortController = new AbortController()

sessionMiddlewareFinishCh.publish({ req, res, sessionId: req.sessionID, abortController })
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
sessionMiddlewareFinishCh.publish({ req, res, sessionId: req.sessionID, abortController })
// what if session IDs are using rolling sessions or always changing or something idk ?
sessionMiddlewareFinishCh.publish({ req, res, sessionId: req.sessionID, abortController })

@simon-id simon-id self-assigned this Dec 30, 2024
Copy link

codecov bot commented Jan 18, 2025

Codecov Report

Attention: Patch coverage is 20.00000% with 8 lines in your changes missing coverage. Please review.

Project coverage is 70.79%. Comparing base (4d6a8e3) to head (2e652bb).
Report is 46 commits behind head on master.

Files with missing lines Patch % Lines
packages/dd-trace/src/appsec/index.js 25.00% 6 Missing ⚠️
packages/dd-trace/src/appsec/sdk/set_user.js 0.00% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #5060      +/-   ##
==========================================
- Coverage   76.22%   70.79%   -5.44%     
==========================================
  Files         291      154     -137     
  Lines       13607     5632    -7975     
==========================================
- Hits        10372     3987    -6385     
+ Misses       3235     1645    -1590     

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

@simon-id simon-id changed the base branch from master to automatic_userid_blocking January 18, 2025 17:37
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.

1 participant