Skip to content

remove ability to propagate baggage on its own to avoid app crashes#5209

Merged
rochdev merged 7 commits intomasterfrom
ida613/restore-spancontext-guarantee
Feb 7, 2025
Merged

remove ability to propagate baggage on its own to avoid app crashes#5209
rochdev merged 7 commits intomasterfrom
ida613/restore-spancontext-guarantee

Conversation

@ida613
Copy link
Collaborator

@ida613 ida613 commented Feb 5, 2025

What does this PR do?

Fixes this issue at the expense of not allowing customers to propagate baggage on its own.
This is a quick fix for now to avoid crashing customer applications, we will add a more involved solution to provide customers with the full functionality of baggage in a later PR.

Motivation

Plugin Checklist

Additional Notes

@ida613 ida613 requested a review from a team as a code owner February 5, 2025 19:50
@github-actions
Copy link
Contributor

github-actions bot commented Feb 5, 2025

Overall package size

Self size: 8.63 MB
Deduped: 95.03 MB
No deduping: 95.55 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.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 | 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 | | 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

@ida613 ida613 requested review from bm1549 and rochdev February 5, 2025 19:51
@ida613 ida613 changed the title remove ability to propagate baggage on its own to bandage app crash remove ability to propagate baggage on its own to avoid app crashes Feb 5, 2025
@codecov
Copy link

codecov bot commented Feb 5, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 81.16%. Comparing base (3b782cd) to head (213913f).
Report is 6 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #5209   +/-   ##
=======================================
  Coverage   81.16%   81.16%           
=======================================
  Files         482      482           
  Lines       21522    21527    +5     
=======================================
+ Hits        17468    17473    +5     
  Misses       4054     4054           

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

@datadog-datadog-prod-us1
Copy link

datadog-datadog-prod-us1 bot commented Feb 5, 2025

Datadog Report

Branch report: ida613/restore-spancontext-guarantee
Commit report: fd47365
Test service: dd-trace-js-integration-tests

✅ 0 Failed, 628 Passed, 0 Skipped, 13m 35.21s Total Time

@pr-commenter
Copy link

pr-commenter bot commented Feb 5, 2025

Benchmarks

Benchmark execution time: 2025-02-06 18:48:04

Comparing candidate commit 213913f in PR branch ida613/restore-spancontext-guarantee with baseline commit 3b782cd in branch master.

Found 2 performance improvements and 0 performance regressions! Performance is the same for 908 metrics, 23 unstable metrics.

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

  • 🟩 max_rss_usage [-121.120MB; -74.744MB] or [-18.819%; -11.613%]

scenario:plugin-graphql-with-depth-and-collapse-on-18

  • 🟩 max_rss_usage [-85.743MB; -72.805MB] or [-9.086%; -7.715%]

bm1549
bm1549 previously approved these changes Feb 5, 2025
@rochdev rochdev merged commit ff4072e into master Feb 7, 2025
354 checks passed
@rochdev rochdev deleted the ida613/restore-spancontext-guarantee branch February 7, 2025 20:13
@rochdev rochdev mentioned this pull request Feb 7, 2025
rochdev pushed a commit that referenced this pull request Feb 7, 2025
…5209)

* remove ability to propagate baggage on its own to bandage app crash

* modify unit test

* tidy up code

* add clarifying comment

* code fix

* code clean up season 2

* attempted code fix
rochdev pushed a commit that referenced this pull request Feb 10, 2025
…5209)

* remove ability to propagate baggage on its own to bandage app crash

* modify unit test

* tidy up code

* add clarifying comment

* code fix

* code clean up season 2

* attempted code fix
tlhunter added a commit that referenced this pull request Jan 9, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 12, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 13, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 13, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 13, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 13, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 16, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 20, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 20, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 21, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 21, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 26, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 27, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Jan 28, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Feb 2, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Feb 2, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Feb 3, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Feb 4, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
tlhunter added a commit that referenced this pull request Feb 4, 2026
Add propagation hash support to Data Streams Monitoring (DSM) and Database
Monitoring (DBM) to enable correlation between traces, database operations,
and data stream pathways using process and container metadata.

The propagation hash is an FNV-1a 64-bit hash combining process tags
(entrypoint info, package.json name) with container tags received from the
Datadog agent. This hash is included in DSM pathway computations and DBM
SQL comments to enable enhanced observability and trace correlation.

Key changes:
- Create propagation-hash module for FNV-1a hash computation with caching
- Update DSM pathway hash computation to include propagation hash
- Add ProcessTags field to DSM payloads sent to agent
- Add ddsh parameter to DBM SQL comments containing propagation hash
- Capture container tags from agent response headers
- Feature is opt-in via DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED

This aligns with similar implementations in dd-trace-py (#15356),
dd-trace-java (#9282), and dd-trace-rb (#5208, #5209).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
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