Repository navigation
Simplify TID header parsing error handling - #12927
Conversation
Revert the non-throwing id parsing from #12739: DD64bTraceId.fromOrNull and the LongStringUtils sentinel parser added public API, duplicated the decimal parser, and diverged from DD128bTraceId and DDSpanId. Keep the goal of keeping malformed headers out of telemetry by catching NumberFormatException during Datadog context extraction and logging it with EXCLUDE_TELEMETRY, without the stack trace.
1aa107c to
86e545d
Compare
This comment has been minimized.
This comment has been minimized.
🟢 Java Benchmark SLOs — All performance SLOs passed
PR vs. master results
Commit: Load and DaCapo benchmarks can be triggered manually in the GitLab pipeline. Results will appear in the Benchmarking Platform UI after completion. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 86e545dd2b
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
Some out-of-range 20-digit trace and parent IDs are now accepted as wrapped 64-bit values, bypassing malformed-context rejection.
🤖 Bits Code Review · Commit 86e545d
mcculls
left a comment
There was a problem hiding this comment.
This simplification makes sense to me
|
Applied feedback and relabeled as bug fix due to the agentic review increasing the scope of the PR |
d80c261 to
adc8208
Compare
4854ea1
into
master
What Does This Do
This PR simplifies #12739 (not yet released) while keeping its goal: malformed
x-datadog-trace-id/x-datadog-parent-idheaders no longer produce telemetry log events.Motivation
#12739 cut the telemetry events (and Error Tracking volume) caused by malformed Datadog id headers, but it did so by:
DD64bTraceIdthat nothing stops users from calling, and thatDD128bTraceIdandDDSpanIddon't have;frommethods.The telemetry cost comes from logging the exception, not from throwing it. Handling
NumberFormatExceptionseparately in the existing catch block is enough to remove it.Additional Notes
x-datadog-sampling-priority(Integer.parseInt). That is caller input too, so it is also kept out of telemetry.Contributor Checklist
type:and (comp:orinst:) labels in addition to any other useful labelsclose,fix, or any linking keywords when referencing an issueUse
solvesinstead, and assign the PR milestone to the issue🤖 Generated with Claude Code