-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
feat(spans): Document trace attachments #15705
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
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
|
|
||
| | Property | Type | Required | Description | | ||
| |----------|------|----------|-------------| | ||
| | `trace_id` | string | Yes | The trace ID. Determines which `trace` the attachment belongs to. 32-character hexadecimal string. | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So to send a span attachment one needs to set both the span_id in the header and the trace_id in the meta?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes.
Co-authored-by: Tobias Wilfert <[email protected]>
| ```json | ||
| { | ||
| "type": "attachment", | ||
| "content_type": "application/vnd.sentry.attachment.v2", | ||
| "length": 212341234, | ||
| "meta_length": 123 | ||
| } | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: The envelope-items.mdx documentation for trace attachment item headers is incomplete, omitting span_id.
Severity: HIGH | Confidence: High
🔍 Detailed Analysis
The envelope-items.mdx documentation for trace attachment item headers is incomplete. It omits span_id from the example (lines 128-135) and does not mention it as an optional field. This contradicts span-protocol.mdx, which specifies span_id as an additional item header for span attachments. This inconsistency could lead SDK developers to implement trace attachments without span_id support, breaking span attachment functionality.
💡 Suggested Fix
Update envelope-items.mdx to either include span_id in the item header example (lines 128-135) and mark it as optional, or add a note explicitly stating span_id is an optional field.
🤖 Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.
Location: develop-docs/sdk/data-model/envelope-items.mdx#L128-L135
Potential issue: The `envelope-items.mdx` documentation for trace attachment item
headers is incomplete. It omits `span_id` from the example (lines 128-135) and does not
mention it as an optional field. This contradicts `span-protocol.mdx`, which specifies
`span_id` as an additional item header for span attachments. This inconsistency could
lead SDK developers to implement trace attachments without `span_id` support, breaking
span attachment functionality.
Did we get this right? 👍 / 👎 to inform future reviews.
Reference ID: 5130085
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I deliberately did not document the header here to avoid confusion.
DESCRIBE YOUR PR
We will allow ingesting trace attachments that are not owned by spans. This PR splits the span attachment dev docs into a generic part for the attachment item, and a specific part for span attachments.
See https://linear.app/getsentry/issue/INGEST-654/.
IS YOUR CHANGE URGENT?
Help us prioritize incoming PRs by letting us know when the change needs to go live.
SLA
Thanks in advance for your help!
PRE-MERGE CHECKLIST
Make sure you've checked the following before merging your changes:
LEGAL BOILERPLATE
Look, I get it. The entity doing business as "Sentry" was incorporated in the State of Delaware in 2015 as Functional Software, Inc. and is gonna need some rights from me in order to utilize my contributions in this here PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Sentry can use, modify, copy, and redistribute my contributions, under Sentry's choice of terms.
EXTRA RESOURCES