getsentry / sentry

Developer-first error tracking and performance monitoring
https://sentry.io
Other
38.61k stars 4.13k forks source link

[User Feedback] - Issue Trace Timeline #68481

Open bruno-garcia opened 5 months ago

bruno-garcia commented 5 months ago

tl;dr: Add the new trace timeline to User Feedback details

A new component was built for the Issue Details page called Issue Trace Timeline. Previously known as Trace Navigator

image

With the JS SDK v8, each new page load or navigation will create a new trace. That means that if a user submits a User Feedback through the widget, that feedback will be using the same trace-id as other relevant data during that last page load. Including client side errors, as well as calls to the backend that might have be the culprit of that error.

With the JS SDK v7 though, there is a global trace id that wasn't used during page load requests that resulted in HTTP calls to the backend. This means that User Feedbacks from the widget are not likely to be connected to any other telemetry.

Additionally, feedback received from the legacy API (that only takes name/email/comments) doesn't have a trace id. They are connected to an error though (through event_id) so we potentially leverage that trace-id. We can do so by coping the trace_id from the event linked in the shim code.

To verify the data, we can use ?dataset=issuePlatform on Discover. For example this query. Once v8 is installed in Sentry we'll be able to confirm what data would be visible in the component.

Also note the component might need to be adjusted to show User Feedback. It was designed for Issue Details so it shows other error events only (no spans).

Additional context ## Spans on trace navigator image ## Trace-id behavior in JS SDK v7 vs v8 image image image
getsantry[bot] commented 5 months ago

Routing to @getsentry/product-owners-user-feedback for triage ⏲️

bruno-garcia commented 5 months ago

Depends on TwP working properly:

aliu39 commented 1 month ago

@bruno-garcia

To verify the data, we can use ?dataset=issuePlatform on Discover. For example this query. Once v8 is installed in Sentry we'll be able to confirm what data would be visible in the component.

Can you clarify what is meant by "verify the data" here? Also, do you know when v8 will be installed?

jas-kas commented 1 month ago

@aliu39 the v8 SDK has been installed for Sentry :)

by verify the data, i think bruno means to click into the trace IDs associated with the feedback events and confirm if the same issues in those traces, show up in the issue trace timeline

Image

aliu39 commented 1 month ago

Also note the component might need to be adjusted to show User Feedback. It was designed for Issue Details so it shows other error events only (no spans).

I need to find an example, but looking over the code, I believe the component already shows user feedback. UF is an Issue Platform event and this query for timeline events doesn't filter by category. So as long as a UF has a trace id, it'll show up

aliu39 commented 2 weeks ago

Closed by https://github.com/getsentry/sentry/pull/76858

aliu39 commented 3 days ago

Still need to GA this