Transaction Summary

Every transaction has a summary view that gives you a better understanding of its overall health. With this view, you'll find graphs, instances of these events, stats, facet maps, related errors, and more.

Example of Transaction Summary

What Is a Transaction?

A transaction represents a single instance of an activity you want to measure or track, like a page load, page navigation, or an asynchronous task. Having transaction information lets you monitor the overall performance of your application beyond when it crashes or generates an error. Without transactions, you can only know when things in your application have actually gone wrong, which is important, but not the whole picture.

Transactions on the Performance page are grouped by the transaction names, such as endpoint paths for backend request transactions (like /store/checkout/ or api/v2/users/<user_id>/) or URLs/routes for page load transactions (like https://docs.sentry.io/performance-monitoring/). When you click a transaction on the Performance page, it takes you to the Transaction Summary, where you can see a list of transaction events: that is, the individual instances of that specific transaction.

For a more in-depth explanation of what’s in a transaction as it relates to traces, check out our full tracing documentation.

Overview

While you can use the search field to narrow down your events, you can also filter by http, db, browser, and resource by toggling between operations in the "Filter" menu. This filtering is reflected in the rest of the page, which provides you with more targeted drill-downs.

Graphs

  • Duration Breakdown: By graphing P50, P75, P95, P99, and P100 durations distinctly, you can utilize this display to see their transaction performance over time. Toggle the display of each segment by clicking on the legend (including Releases). Also, zoom in on specific slices to investigate spikes or possible performance regressions from a release.

  • Latency Histogram: Visualize the frequency of transactions that occur within each response time segment. This histogram view can help you understand the shape of transaction response times and quickly see outliers. Click on specific segments to drill down for more granularity.

  • Duration Percentiles: This graph shows the average transaction duration across distinct percentiles. For example, see how different the P50 and P99 response time durations are for a given transaction and understand the rate of increase between segments.

  • Trends: This graph uses a modified version of ASAP smoothing. The Trends graph shows the unsmoothed data of the Display data, along with a smoothed version of that data.

  • Web Vitals: This graph displays the P75 threshold of First Paint, First Contentful Paint, Largest Contentful Paint, and First Input Delay over time. This view helps you understand how the web vitals associated with the transaction are performing over time.

Transaction Table

On initial load, the table displays slow occurrences of the transaction along with the Event ID, User, Operations Breakdown, Total Transaction Duration, and Timestamp of the event. Click on the Event ID to open the event detail or the Trace ID to view the full trace. Other sets of transactions you can browse through are below.

  • Fastest Transactions
  • Slow Transactions (p95)
  • Outlier Transactions (p100)
  • Recent Transactions

The table also updates dynamically if you change any of the selections in the global header or when you drill in on a latency segment (applicable when viewing the Latency Histogram).

When viewing transactions, you may want to create more curated views. Click "Open in Discover" above the table to create a custom query to investigate further. For more details, see the full documentation for the Discover Query Builder.

Suspect Spans

The transaction summary includes a list of suspect spans that correspond to where most of the time in a transaction is spent. By default, we sort spans by the total exclusive time. When you click the "Example Transaction" event, it takes you directly to the span in question.

Suspect Tags

The transaction summary includes a list of suspect tags that often correspond to slower transactions. By default, we sort tags by the total time lost. The list includes additional information:

  • Tag Key: The tag category (for example, device, geo)
  • Tag Value: The specific tag value (for example, Android, South America)
  • Avg (Tag) Duration: Provides the average duration for a transaction with this tag
  • Comparison to Avg: Indicates how much slower or faster this tag is than the average duration of this transaction
  • Total Time Lost: Calculates how much total time you've lost in the selected time range when comparing the average tag duration to the average transaction duration

To investigate why these tags are affecting performance, click on the tag value to filter the transaction summary further.

This table will show you all related issues. In other words, any errors that are associated with this transaction. Click "Open in Issues" to see the full list.

The sidebar contains helpful supplementary information about this transaction's User Misery, Apdex, Throughput, Latency, and more. You'll also find a Tag Summary (facet map) for a list of common tags related to this transaction.

Web Vitals

Frontend transactions will have a "Web Vitals" tab. Clicking on the tab will take you to the Web Vitals page, where you can see a detailed view of the web vitals associated with this transaction.

Tags

The Tags tab displays a list of suspect tag keys that often correspond to slower transactions. Toggle through them to have the corresponding tag values reflected in the heat map. Similar to a histogram, events are distributed by duration. Click on any purple box to view a list of events or continue to filter down the events by adding values to the filter in the table below the heat map.

Example of Tags Tab

All Events

The table in All Events tab offers a full list of transactions broken down similar to the abbreviated table in the overview. Filters are carried across from other views. You can also narrow the events down by percentile.

Spans

The "Spans" tab displays a list of suspect spans that correspond to where most of the time in a transaction is being spent, and it can help you find spans where performance problems lie.

Choose from one of several metrics to sort spans and identify different types of problems. Filter spans to only see the span operation type you're interested in.

Clicking on a span will give you more details about the specific span group. You can see the performance of the span over time and see a list of transaction events that contain the span.

Exclusive Time

Suspect spans are determined using a span's exclusive time rather than its duration. To calculate a span's exclusive time, take the interval of the span and subtract the intervals of any child spans. The duration of the remaining interval is the span's exclusive time.

In the example below, the exclusive time of each span is highlighted by the darker areas. For example, the http.server has an exclusive time of 10ms + 15ms = 25ms.

Span Exclusive Time

Metrics

  • Total Exclusive Time: The sum of the exclusive time for a span. This metric is useful to identify the span where the majority of the time is being spent.
  • Average Count: The average number of times a span appears in a transaction. This metric is useful to identify redundant work being done within a transaction. It is often indicative of an n + 1 problem.
  • Total Count: The total number of times a span appears across all transactions. This metric is useful to identify spans that appear most frequently.
  • p50 Exclusive Time: The 50th percentile of the exclusive time for a span. This metric is useful to identify spans that take a long time individually.
  • p75 Exclusive Time: The 75th percentile of the exclusive time for a span. This metric is useful to identify spans that take a long time individually.
  • p95 Exclusive Time: The 95th percentile of the exclusive time for a span. This metric is useful to identify spans that take a long time individually.
  • p99 Exclusive Time: The 99th percentile of the exclusive time for a span. This metric is useful to identify spans that take a long time individually.

Grouping

Spans with the same operation and description are grouped together into a single span group. Some processing is done to group similar spans together. If you find that the span grouping is not ideal, you can change this by making sure the spans you want grouped together have the same operation and description.

Additional Actions

Starring Key Transactions

If you find an important transaction you want to return to, click "Star for Team" in the upper right corner and mark it as a key transaction for any of your teams. This will be saved so you can view this from your Performance Homepage. The key transactions you mark will be shared with members of the same team and each team can have up to 100 key transactions.

Creating Alerts

To create a metric alert rule for this transaction, click Create Alert at the top of the page.

Help improve this content
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) to suggesting an update ("yeah, this would be better").