getsentry / sentry

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

Unable to filter by transaction when creating dashboards for measurements.inp #77893

Open InterstellarStella opened 1 month ago

InterstellarStella commented 1 month ago

Environment

SaaS (https://sentry.io/)

Steps to Reproduce

  1. Ensure you have inp measurements for several transactions and choose one you want to show data for, ie. https://www.example.com/abc/.
  2. Go to dashboards and create a widget to see measurements.inp data. For example, a big number vizualization from the errors and transactions dataset with plot p75(...) measurements.inp
  3. Filter your results by http.url:*abc*

Expected Result

You get the expected number.

Actual Result

The dashboard shows "(no value)" when it should have been showing a number. Taking the filter off or switching to another measurement shows another number normally.

Example in the shadow ticket.

Product Area

Dashboards

Link

No response

DSN

No response

Version

No response

┆Issue is synchronized with this Jira Improvement by Unito

getsantry[bot] commented 1 month ago

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

getsantry[bot] commented 1 month ago

Assigning to @getsentry/support for routing ⏲️

gggritso commented 1 month ago

@InterstellarStella thanks for raising this!

The INP measurement only supports these tags:

This is a technical limitation that might change in the future.

Can the user in question filter their events using the transaction tag? In the meantime we'll need to update the search bar to point out that the url tag (and most other tags, actually) are not supported for the INP measurement

matt-pawley commented 1 month ago

Hi @gggritso / @InterstellarStella - Thanks for confirming this. Filtering by transaction resolves part of the problem for us, but having the ability to filter by more tags would be beneficial. The main use case is to segment INP data between mobile and desktop devices as per the Web Vital recommendations:

To ensure you're hitting the recommended target for these metrics for most of your users, a good threshold to measure is the 75th percentile of page loads, segmented across mobile and desktop devices.

gggritso commented 1 month ago

@matt-pawley yes, that makes sense! For your main use case, you can do browser segmentation by using the browser.name: tag. e.g., browser.name:*Mobile should filter for browsers like "Chrome Mobile". This is not foolproof though, and it'd be even more robust to do something like browser.name:["Chrome Mobile","Safari Mobile"... depending on which browsers you see in your app.

Though overall I agree that being able to filter on more tags would be helpful here