Skip to content

Conversation

@rochdev
Copy link
Member

@rochdev rochdev commented Sep 16, 2025

What does this PR do?

Add include configuration to iitm loader hook.

Motivation

This avoids patching every single module and instead only patches modules we instrument. Since iitm is not compatible with every module, this is needed to avoid issues with unsupported modules.

@github-actions
Copy link

github-actions bot commented Sep 16, 2025

Overall package size

Self size: 12.89 MB
Deduped: 115.6 MB
No deduping: 117.81 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.7.0 | 35.02 MB | 35.02 MB | | @datadog/native-appsec | 10.3.0 | 20.73 MB | 20.74 MB | | @datadog/native-iast-taint-tracking | 4.0.0 | 11.72 MB | 11.73 MB | | @datadog/pprof | 5.11.1 | 9.96 MB | 10.34 MB | | @opentelemetry/core | 1.30.1 | 908.66 kB | 7.16 MB | | protobufjs | 7.5.4 | 2.95 MB | 5.73 MB | | @datadog/wasm-js-rewriter | 4.0.1 | 2.85 MB | 3.58 MB | | @opentelemetry/resources | 1.9.1 | 306.54 kB | 1.74 MB | | @datadog/native-metrics | 3.1.1 | 1.02 MB | 1.43 MB | | @opentelemetry/api-logs | 0.206.0 | 201.39 kB | 1.42 MB | | @opentelemetry/api | 1.9.0 | 1.22 MB | 1.22 MB | | jsonpath-plus | 10.3.0 | 617.18 kB | 1.08 MB | | import-in-the-middle | 1.15.0 | 127.66 kB | 856.24 kB | | lru-cache | 10.4.3 | 804.3 kB | 804.3 kB | | @datadog/openfeature-node-server | 0.1.0-preview.12 | 95.11 kB | 401.68 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | source-map | 0.7.6 | 185.63 kB | 185.63 kB | | pprof-format | 2.2.1 | 163.06 kB | 163.06 kB | | @datadog/sketches-js | 2.1.1 | 109.9 kB | 109.9 kB | | lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB | | ignore | 7.0.5 | 63.38 kB | 63.38 kB | | istanbul-lib-coverage | 3.2.2 | 34.37 kB | 34.37 kB | | rfdc | 1.4.1 | 27.15 kB | 27.15 kB | | dc-polyfill | 0.1.10 | 26.73 kB | 26.73 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | shell-quote | 1.8.3 | 23.74 kB | 23.74 kB | | limiter | 1.1.5 | 23.17 kB | 23.17 kB | | retry | 0.13.1 | 18.85 kB | 18.85 kB | | semifies | 1.0.0 | 15.84 kB | 15.84 kB | | jest-docblock | 29.7.0 | 8.99 kB | 12.76 kB | | crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB | | ttl-set | 1.0.0 | 4.61 kB | 9.69 kB | | mutexify | 1.4.0 | 5.71 kB | 8.74 kB | | path-to-regexp | 0.1.12 | 6.6 kB | 6.6 kB | | module-details-from-path | 1.0.4 | 3.96 kB | 3.96 kB | | escape-string-regexp | 5.0.0 | 3.66 kB | 3.66 kB |

🤖 This report was automatically generated by heaviest-objects-in-the-universe

@codecov
Copy link

codecov bot commented Sep 16, 2025

Codecov Report

❌ Patch coverage is 66.66667% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 84.13%. Comparing base (77d7e65) to head (59f171d).
⚠️ Report is 36 commits behind head on master.

Files with missing lines Patch % Lines
packages/dd-trace/src/config.js 66.66% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #6455      +/-   ##
==========================================
- Coverage   84.13%   84.13%   -0.01%     
==========================================
  Files         505      505              
  Lines       21038    21040       +2     
==========================================
+ Hits        17701    17702       +1     
- Misses       3337     3338       +1     

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@datadog-datadog-prod-us1
Copy link

datadog-datadog-prod-us1 bot commented Sep 16, 2025

⚠️ Tests

⚠️ Warnings

🧪 1 Test failed

esm with @azure/functions >=4 (4.0.0) "before all" hook for "propagates eventdata through an event hub with a cardinality of one" from with @azure/functions >=4 (4.0.0) (Datadog)
Timeout of 60000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (/home/runner/work/dd-trace-js/dd-trace-js/packages/datadog-plugin-azure-functions/test/integration-test/eventhubs-test/eventhubs.spec.js)

Error: Timeout of 60000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (/home/runner/work/dd-trace-js/dd-trace-js/packages/datadog-plugin-azure-functions/test/integration-test/eventhubs-test/eventhubs.spec.js)

ℹ️ Info

❄️ No new flaky tests detected

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 59f171d | Docs | Was this helpful? Give us feedback!

@pr-commenter
Copy link

pr-commenter bot commented Sep 16, 2025

Benchmarks

Benchmark execution time: 2025-10-24 03:26:01

Comparing candidate commit 59f171d in PR branch iitm-include with baseline commit 77d7e65 in branch master.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 1604 metrics, 66 unstable metrics.

@rochdev rochdev marked this pull request as ready for review September 16, 2025 20:38
@rochdev rochdev requested a review from a team as a code owner September 16, 2025 20:38
@BridgeAR
Copy link
Collaborator

I am marking this as draft until we find a solution for the appsec code

@BridgeAR BridgeAR marked this pull request as draft September 17, 2025 21:20
@rochdev rochdev force-pushed the iitm-include branch 2 times, most recently from fe0bc9a to e3d82c5 Compare September 30, 2025 23:41
@rochdev rochdev marked this pull request as ready for review September 30, 2025 23:50
@rochdev rochdev requested a review from a team as a code owner September 30, 2025 23:50
@rochdev rochdev requested review from khanayan123 and removed request for a team September 30, 2025 23:50
@rochdev rochdev marked this pull request as draft September 30, 2025 23:51
@rochdev rochdev marked this pull request as ready for review October 3, 2025 00:54
@rochdev rochdev added this to the 6.0.0 milestone Oct 5, 2025
Copy link
Collaborator

@BridgeAR BridgeAR left a comment

Choose a reason for hiding this comment

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

This generally looks good to me, while I would appreciate if e.g., @uurien or @simon-id could have a look at the escaping: it is tricky to determine if the user should escape the path or not and we should probably clearly document that. Otherwise it would seemingly work while effectively not matching the anticipated paths.

@rochdev rochdev force-pushed the iitm-include branch 2 times, most recently from 9d8fe90 to 8bde3b8 Compare October 7, 2025 19:28
@rochdev
Copy link
Member Author

rochdev commented Oct 7, 2025

it is tricky to determine if the user should escape the path or not and we should probably clearly document that

Customers should never escape anything as they are not passing a pattern but a list of local files. This should therefore not be documented as it's not a supported use case for the environment variable. This is also why I don't think escaping should ever be a problem.

@rochdev
Copy link
Member Author

rochdev commented Oct 7, 2025

I had to revert unrelated changes to the lockfile that were failing, but should be good now.

BridgeAR
BridgeAR previously approved these changes Oct 9, 2025
@rochdev
Copy link
Member Author

rochdev commented Oct 10, 2025

Had to rebase because of a conflict.

@rochdev
Copy link
Member Author

rochdev commented Oct 20, 2025

@BridgeAR Had to rebase again, please re-review when you get the chance.

@BridgeAR BridgeAR merged commit 6b2d9fe into master Oct 30, 2025
789 of 791 checks passed
@BridgeAR BridgeAR deleted the iitm-include branch October 30, 2025 10:57
@dd-octo-sts dd-octo-sts bot mentioned this pull request Oct 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants