Skip to content

lazy load telemetry entrypoint only when needed#5258

Merged
rochdev merged 2 commits into
masterfrom
lazy-telemetry-root
Feb 24, 2025
Merged

lazy load telemetry entrypoint only when needed#5258
rochdev merged 2 commits into
masterfrom
lazy-telemetry-root

Conversation

@rochdev

@rochdev rochdev commented Feb 12, 2025

Copy link
Copy Markdown
Member

What does this PR do?

Lazy load telemetry entrypoint only when needed.

Motivation

Right now when telemetry is disabled, the code is still loaded which impacts startup time.

Additional Notes

For now I only handled the entrypoint, but there are also modules using the internals directly which will be addressed in another PR.

@github-actions

github-actions Bot commented Feb 12, 2025

Copy link
Copy Markdown
Contributor

Overall package size

Self size: 8.77 MB
Deduped: 94.97 MB
No deduping: 95.49 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.3.0 | 13.77 MB | 13.78 MB | | @datadog/pprof | 5.5.1 | 9.79 MB | 10.17 MB | | protobufjs | 7.2.5 | 2.77 MB | 5.16 MB | | @datadog/native-iast-rewriter | 2.8.0 | 2.6 MB | 2.74 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 | 835.4 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 | | lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB | | ignore | 5.3.2 | 53.63 kB | 53.63 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 | | 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 | | 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

@codecov

codecov Bot commented Feb 12, 2025

Copy link
Copy Markdown

Codecov Report

Attention: Patch coverage is 93.06358% with 12 lines in your changes missing coverage. Please review.

Project coverage is 80.95%. Comparing base (c894085) to head (c902c9a).
Report is 6 commits behind head on master.

Files with missing lines Patch % Lines
packages/dd-trace/src/telemetry/telemetry.js 92.77% 12 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##           master    #5258   +/-   ##
=======================================
  Coverage   80.94%   80.95%           
=======================================
  Files         488      489    +1     
  Lines       21849    21858    +9     
=======================================
+ Hits        17686    17695    +9     
  Misses       4163     4163           

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

@datadog-datadog-prod-us1

datadog-datadog-prod-us1 Bot commented Feb 12, 2025

Copy link
Copy Markdown

Datadog Report

Branch report: lazy-telemetry-root
Commit report: 8c7c551
Test service: dd-trace-js-integration-tests

✅ 0 Failed, 668 Passed, 0 Skipped, 13m 26.51s Total Time

@pr-commenter

pr-commenter Bot commented Feb 12, 2025

Copy link
Copy Markdown

Benchmarks

Benchmark execution time: 2025-02-24 20:51:18

Comparing candidate commit c902c9a in PR branch lazy-telemetry-root with baseline commit c894085 in branch master.

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

@rochdev
rochdev marked this pull request as ready for review February 12, 2025 23:31
@rochdev
rochdev requested review from a team as code owners February 12, 2025 23:31
Comment thread packages/dd-trace/src/telemetry/index.js Outdated
@rochdev
rochdev force-pushed the lazy-telemetry-root branch from ed889cc to 7cf2992 Compare February 13, 2025 22:11
simon-id
simon-id previously approved these changes Feb 17, 2025
BridgeAR
BridgeAR previously approved these changes Feb 24, 2025

@BridgeAR BridgeAR left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM % comments

Comment thread packages/dd-trace/src/telemetry/index.js Outdated
Comment thread packages/dd-trace/test/telemetry/index.spec.js Outdated
@rochdev
rochdev dismissed stale reviews from BridgeAR and simon-id via 2b8b7d4 February 24, 2025 18:34
BridgeAR
BridgeAR previously approved these changes Feb 24, 2025

@BridgeAR BridgeAR left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM

@rochdev
rochdev merged commit e6a9d8d into master Feb 24, 2025
@rochdev
rochdev deleted the lazy-telemetry-root branch February 24, 2025 23:10
@watson watson mentioned this pull request Feb 27, 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