Skip to content

Add a fake agent for all profiler integration tests #5667

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

Merged
merged 1 commit into from
May 8, 2025

Conversation

szegedi
Copy link
Contributor

@szegedi szegedi commented May 6, 2025

What does this PR do?

Ensures FakeAgent instance exists and is used by all profiler integration tests that fork.

Motivation

Few tests run by yarn test:integration:profiler used to work fine without a FakeAgent, but remote config will now prevent forked test programs from terminating before timeout as it's doing futile attempts to connect to an agent. This fortunately seems to not be a problem in CI for whatever reason, but it definitely became a problem on this developer's laptop.

Jira: PROF-11765

Otherwise remote config's futile attempts to connect to agent time out tests.
Copy link

github-actions bot commented May 6, 2025

Overall package size

Self size: 9.3 MB
Deduped: 102.55 MB
No deduping: 103.07 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.5.1 | 29.73 MB | 29.73 MB | | @datadog/native-appsec | 8.5.2 | 19.33 MB | 19.34 MB | | @datadog/native-iast-taint-tracking | 3.3.1 | 13.99 MB | 13.99 MB | | @datadog/pprof | 5.7.1 | 9.51 MB | 9.88 MB | | @opentelemetry/core | 1.30.1 | 908.66 kB | 7.16 MB | | protobufjs | 7.4.0 | 2.77 MB | 5.42 MB | | @datadog/wasm-js-rewriter | 4.0.1 | 2.85 MB | 3.58 MB | | @datadog/native-metrics | 3.1.1 | 1.02 MB | 1.43 MB | | @opentelemetry/api | 1.8.0 | 1.21 MB | 1.21 MB | | import-in-the-middle | 1.13.1 | 117.64 kB | 839.26 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.1 | 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 | | istanbul-lib-coverage | 3.2.0 | 29.34 kB | 29.34 kB | | rfdc | 1.4.1 | 27.15 kB | 27.15 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | dc-polyfill | 0.1.8 | 25.08 kB | 25.08 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | shell-quote | 1.8.2 | 23.54 kB | 23.54 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 | | 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

Copy link

codecov bot commented May 6, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 79.06%. Comparing base (108c0b4) to head (105d5de).
Report is 12 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #5667      +/-   ##
==========================================
- Coverage   79.12%   79.06%   -0.07%     
==========================================
  Files         513      512       -1     
  Lines       23497    23425      -72     
==========================================
- Hits        18593    18521      -72     
  Misses       4904     4904              

☔ 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 Report

Branch report: szegedi/fake-agent-for-all-profiler-tests
Commit report: e19a50b
Test service: dd-trace-js-integration-tests

✅ 0 Failed, 933 Passed, 0 Skipped, 12m 23.88s Total Time

@pr-commenter
Copy link

pr-commenter bot commented May 6, 2025

Benchmarks

Benchmark execution time: 2025-05-06 13:27:06

Comparing candidate commit 105d5de in PR branch szegedi/fake-agent-for-all-profiler-tests with baseline commit 108c0b4 in branch master.

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

@szegedi szegedi requested a review from nsavoire May 6, 2025 13:49
const procStart = BigInt(Date.now() * 1000000)
const proc = fork(path.join(cwd, scriptFilePath), args, {
cwd,
env: {
DD_PROFILING_EXPORTERS: 'file',
DD_PROFILING_ENABLED: 1,
DD_INTERNAL_PROFILING_TIMELINE_SAMPLING_ENABLED: 0 // capture all events
DD_INTERNAL_PROFILING_TIMELINE_SAMPLING_ENABLED: 0, // capture all events
Copy link
Collaborator

Choose a reason for hiding this comment

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

You could also disable remote config with DD_REMOTE_CONFIGURATION_ENABLED: 0

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I did, and that alone didn't help. Something else (maybe trace result posting) is still keeping the process alive for about 25-30 seconds.

@szegedi szegedi merged commit 56b04d0 into master May 8, 2025
443 checks passed
@szegedi szegedi deleted the szegedi/fake-agent-for-all-profiler-tests branch May 8, 2025 13:38
dd-trace-js bot pushed a commit that referenced this pull request May 8, 2025
Otherwise remote config's futile attempts to connect to agent time out tests.
@dd-trace-js dd-trace-js bot mentioned this pull request May 8, 2025
bengl pushed a commit that referenced this pull request May 13, 2025
Otherwise remote config's futile attempts to connect to agent time out tests.
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.

3 participants