Skip to content

Conversation

@lizokm
Copy link
Contributor

@lizokm lizokm commented Oct 17, 2024

No description provided.

@vercel
Copy link

vercel bot commented Oct 17, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
changelog ✅ Ready (Inspect) Visit Preview 💬 Add feedback Oct 30, 2024 0:13am
sentry-docs ✅ Ready (Inspect) Visit Preview 💬 Add feedback Oct 30, 2024 0:13am
1 Skipped Deployment
Name Status Preview Comments Updated (UTC)
develop-docs ⬜️ Ignored (Inspect) Visit Preview Oct 30, 2024 0:13am

Each trace has a string of globally unique characters called a trace ID, that's shared by both frontend and backend services they help connect all the actions that take place to make an event such as a button click or a page scroll. Each trace is composed of multiple spans.

### What's a Span?
A span is a named, timed operation that represents a part of the application workflow. It provides granular insights into specific tasks, like API requests or database queries. Multiple spans are pieced together to create a trace. providing a comprehensive view of its path, timing, and interactions for troubleshooting and performance analysis.
Copy link
Member

Choose a reason for hiding this comment

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

Looks like there's a typo here "trace. providing a comprehensive..." (should be a comma?)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

good catch!


## How to Use Tracing in Sentry

To get the most out of tracing in Sentry, you'll need to instrument both the frontend and backend of your application with Sentry's SDK. Once this is done, there are several places where you can view and interact with tracing data:
Copy link
Member

Choose a reason for hiding this comment

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

We're currently moving towards emphasizing the usefulness of partial traces as well. In other words, even if it's only your frontend or backend that's instrumented and not the entire distributed system, the partial trace still provides useful context for debugging issues within that app or service. I think you can still say that the best experience is by instrumenting both the frontend and the backend together, but maybe make it sound like less of a requirement in case a customer wants to get started by instrumenting only one part of their stack.


You can view all the traces in your organization by going to the [Traces](https://sentry.io/orgredirect/organizations/:orgslug/traces/) page in Sentry. You'll see a chart and a list of traces and be able to see at-a-glance how long each trace took to complete and the number of spans it contains.

If you want more information, click on any trace ID. This will take you to the [Trace View](https://sentry.io/orgredirect/organizations/:orgslug/traces/traceid/) page, which provides a more detailed view of the trace and its spans. Here, you'll see a waterfall view of the spans in the trace, which will show you how long each service and process took to complete and may give you an indicator of where a problem may be coming from. Learn more about the Sentry [Trace View](/concepts/key-terms/tracing/trace-view/).
Copy link
Member

Choose a reason for hiding this comment

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

"which will show you how long each service and process took"

maybe "which will show you how much time was spent in each service and operation"


If you want more information, click on any trace ID. This will take you to the [Trace View](https://sentry.io/orgredirect/organizations/:orgslug/traces/traceid/) page, which provides a more detailed view of the trace and its spans. Here, you'll see a waterfall view of the spans in the trace, which will show you how long each service and process took to complete and may give you an indicator of where a problem may be coming from. Learn more about the Sentry [Trace View](/concepts/key-terms/tracing/trace-view/).

Alternatively, you can use the search bar to look for traces by name, project, or other criteria. You can also use the tags section to filter traces by specific tags. Learn more about the Sentry [Trace Explorer](/product/explore/traces/).
Copy link
Member

Choose a reason for hiding this comment

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

It doesn't search for traces directly, you search for spans and then it surfaces spans & traces matching that criteria


### Performance to Trace View

If you're interested in a high-level view of your application's performance, you can start from the [Performance](https://sentry.io/orgredirect/organizations/:orgslug/performance/) page in Sentry where you'll see a list of transactions. Clicking on the transaction ID will take you to the Trace View page for that transaction. Learn more about using Sentry's [Performance Monitoring](/product/performance/).
Copy link
Member

Choose a reason for hiding this comment

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

Should we mention Insights here? That's also high level and takes you to the trace view, and that's a newer workflow that we would want to highlight over the Performance landing page. The Performance landing page is still good for seeing a list of pages/endpoints however.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The "traces to trace view" section is insights :) unless I'm misunderstanding and you're thinking of a different workflow?


With distributed tracing, you can identify performance bottlenecks that are affecting your application no matter where in your application's workflow they occur. You can then use Sentry tools such as the [Trace Explorer](/product/explore/traces/) or [Trace View](/concepts/key-terms/tracing/trace-view/) page to dig deeper and find the root cause of the problem. Distributed tracing is particularly helpful for identifying problems in production that you can't debug using console logs, such as race conditions, [N+1](/product/issues/issue-details/performance-issues/n-one-queries/), and [caching issues](/product/insights/caches/).

### What's a Trace?
Copy link
Contributor

Choose a reason for hiding this comment

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

I feel like this section does a good job of defining a 'trace ID' but not a 'trace'. Maybe start with a sentence that's a higher level overview; like, 'A trace is a unique record of a set of related actions happening in your application.'

Copy link
Contributor Author

Choose a reason for hiding this comment

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

good point!


![A view of the Sentry Traces page showing traces and spans](./img/Traces-page.png)

If you want more information, click on any trace ID. This will take you to the [Trace View](https://sentry.io/orgredirect/organizations/:orgslug/traces/traceid/) page, which provides a more detailed view of the trace and its spans. Here, you'll see a waterfall view of the spans in the trace, which will show you how much time each service and operation took to complete, and may give you an indicator of where a problem may be coming from. Learn more about the Sentry [Trace View](/concepts/key-terms/tracing/trace-view/).
Copy link
Contributor

Choose a reason for hiding this comment

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

Trace View

This link doesn't work for me, it takes me to a page that says The organization you were looking for was not found.

Copy link
Contributor

@coolguyzone coolguyzone left a comment

Choose a reason for hiding this comment

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

This is great! Added a few suggestions/questions, nothing blocking. 🏄‍♂️

Co-authored-by: Alex Krawiec <alex.krawiec@sentry.io>
Co-authored-by: Alex Krawiec <alex.krawiec@sentry.io>

With distributed tracing, you can identify performance bottlenecks that are affecting your application no matter where in your application's workflow they occur. You can then use Sentry tools such as the [Trace Explorer](/product/explore/traces/) or [Trace View](/concepts/key-terms/tracing/trace-view/) page to dig deeper and find the root cause of the problem. Distributed tracing is particularly helpful for identifying problems in production that you can't debug using console logs, such as race conditions, [N+1](/product/issues/issue-details/performance-issues/n-one-queries/), and [caching issues](/product/insights/caches/).

### What's a Trace?
Copy link
Contributor Author

Choose a reason for hiding this comment

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

good point!

@lizokm lizokm merged commit fe05be6 into master Oct 30, 2024
11 checks passed
@lizokm lizokm deleted the my-feature-branch branch October 30, 2024 00:20
@github-actions github-actions bot locked and limited conversation to collaborators Nov 14, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants