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

Enable 128 bit trace id log injection by default #5021

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

khanayan123
Copy link
Collaborator

@khanayan123 khanayan123 commented Dec 16, 2024

What does this PR do?

Enables 128 bit trace id log injection by default

Motivation

Standardizing configuration across SDKs to a unified and consistent definition

Copy link

github-actions bot commented Dec 16, 2024

Overall package size

Self size: 8.4 MB
Deduped: 94.74 MB
No deduping: 95.26 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.3.0 | 29.43 MB | 29.43 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 16, 2024

Benchmarks

Benchmark execution time: 2025-01-15 04:32:24

Comparing candidate commit 09bd9a4 in PR branch khanayan123/implement-consistent-config with baseline commit af641d6 in branch master.

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

Copy link

codecov bot commented Dec 17, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 79.87%. Comparing base (823cfd4) to head (69e25f3).
Report is 48 commits behind head on master.

Additional details and impacted files
@@             Coverage Diff             @@
##           master    #5021       +/-   ##
===========================================
+ Coverage   65.05%   79.87%   +14.81%     
===========================================
  Files         304       10      -294     
  Lines       13950      621    -13329     
===========================================
- Hits         9075      496     -8579     
+ Misses       4875      125     -4750     

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

@khanayan123 khanayan123 changed the title enable 128 bit trace id log injection by default Enable 128 bit trace id log injection by default Dec 17, 2024
@khanayan123 khanayan123 marked this pull request as ready for review December 17, 2024 19:08
@khanayan123 khanayan123 requested review from a team as code owners December 17, 2024 19:08
@rochdev
Copy link
Member

rochdev commented Dec 18, 2024

@bantonsson I remember this being a breaking change for log injection, do you know if there have been any new developments on that front that would make this non-breaking?

@rochdev rochdev requested a review from bantonsson December 18, 2024 17:19
Copy link

@bantonsson bantonsson left a comment

Choose a reason for hiding this comment

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

@rochdev So the breaking part that going to 128 bits can have is the observed behavior from the customer perspective. If the customer is shipping logs somewhere else than Datadog, and the format of the TraceID changes then there could be breakage. The Datadog log ingestion and correlation handles both 64 and 128 bit ids as far as I know.

@khanayan123
Copy link
Collaborator Author

@rochdev So the breaking part that going to 128 bits can have is the observed behavior from the customer perspective. If the customer is shipping logs somewhere else than Datadog, and the format of the TraceID changes then there could be breakage. The Datadog log ingestion and correlation handles both 64 and 128 bit ids as far as I know.

@mabdinur should we classify this as a breaking change on the jira card?

@mabdinur
Copy link
Contributor

mabdinur commented Jan 3, 2025

@rochdev So the breaking part that going to 128 bits can have is the observed behavior from the customer perspective. If the customer is shipping logs somewhere else than Datadog, and the format of the TraceID changes then there could be breakage. The Datadog log ingestion and correlation handles both 64 and 128 bit ids as far as I know.

@mabdinur should we classify this as a breaking change on the jira card?

Officially, Datadog supports log correlation only within its own ecosystem. As long as this proposed change does not disrupt any existing Datadog functionality, it should not be considered a breaking change. Datadog does not officially support customers manually extracting trace data from logs or performing custom correlations. This functionality technically falls outside the scope of our versioning policy.

Including a clear note about this change in the release documentation should sufficiently address any potential concerns. Enforcing this modification to be part of a major release could unnecessarily delay the rollout of this important enhancement, ultimately impacting the value it delivers to Datadog users.

@khanayan123 khanayan123 force-pushed the khanayan123/implement-consistent-config branch from eeeb2a1 to 5619725 Compare January 14, 2025 02:26
@khanayan123 khanayan123 marked this pull request as draft January 14, 2025 03:49
@khanayan123 khanayan123 force-pushed the khanayan123/implement-consistent-config branch from 5619725 to 09bd9a4 Compare January 15, 2025 04:18
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