Skip to content

Commit 648cb6b

Browse files
committed
chore(insights): Update docs for upcoming mobile screens GA
1 parent 2004f78 commit 648cb6b

20 files changed

+86
-85
lines changed
149 KB
Loading
-295 KB
Binary file not shown.
-192 KB
Binary file not shown.
-291 KB
Binary file not shown.
-179 KB
Binary file not shown.

docs/product/insights/mobile/index.mdx

Lines changed: 2 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -10,66 +10,6 @@ The [**Mobile Performance**](https://sentry.io/orgredirect/organizations/:orgslu
1010

1111
![Mobile performance overview page.](../img/mobile-performance-overview.png)
1212

13-
## App Start
13+
## Learn More
1414

15-
App start metrics track how long your mobile application takes to launch. For this, Sentry measures _cold starts_ and _warm starts_.
16-
17-
The definitions of cold start and warm start change slightly depending on the operating system. On iOS, Apple recommends your app take at most 400ms to render the first frame. On Android, the [Google Play console](https://developer.android.com/topic/performance/vitals/launch-time#av) warns you when a cold start takes longer than five seconds or a warm start longer than two seconds. For definitions by operating system, check out the corresponding SDK docs:
18-
19-
- [Android](/platforms/android/tracing/instrumentation/automatic-instrumentation/#app-start-instrumentation)
20-
- [Flutter](/platforms/flutter/tracing/instrumentation/automatic-instrumentation/#app-start-instrumentation)
21-
- [iOS](/platforms/apple/guides/ios/tracing/instrumentation/automatic-instrumentation/#app-start-tracking)
22-
- [React Native](/platforms/react-native/tracing/instrumentation/automatic-instrumentation/#app-start-instrumentation)
23-
24-
In the example below, the detail view of a transaction displays the warm start measurement in the right sidebar.
25-
26-
![The event detail of a transaction with a warm start measurement.](./img/app-start-transaction.png)
27-
28-
While the SDKs differentiate between a cold and a warm start, they don't track hot starts or resumes. To get more insight into your cold and warm start metrics, you can use the [App Starts](/product/insights/mobile-vitals/app-starts/) feature.
29-
30-
## Slow and Frozen Frames
31-
32-
To track the responsiveness of the user interface, Sentry measures _slow frames_ and _frozen frames_. Typically, a phone or tablet renders 60 frames per second (fps). At 60 fps, every frame has 16 or 16.67 ms to render.
33-
34-
- **Slow Frames**: Using 60 fps, slow frames are frames that take more than 16 ms (Android) or 16.67 ms (iOS) to render.
35-
- **Frozen Frames**: Frozen frames are frames that take longer than 700 ms to render.
36-
37-
For Apple, the frame rate can be higher, especially as 120 fps displays are becoming more popular. For these apps, Sentry detects the frame rate and adjusts the slow frame calculation accordingly.
38-
39-
In the example below, the detail view of the transaction displays the slow, frozen, and total frames in an iOS application:
40-
41-
![The event detail of a transaction with slow and frozen frames measurements.](./img/slow-frozen-frames.png)
42-
43-
You can track slow and frozen frames for:
44-
45-
- [Android](/platforms/android/tracing/instrumentation/automatic-instrumentation/#slow-and-frozen-frames)
46-
- [Flutter](/platforms/flutter/tracing/instrumentation/automatic-instrumentation/#slow-and-frozen-frames)
47-
- [iOS](/platforms/apple/guides/ios/tracing/instrumentation/automatic-instrumentation/#slow-and-frozen-frames)
48-
- [React Native](/platforms/react-native/tracing/instrumentation/automatic-instrumentation/#slow-and-frozen-frames)
49-
50-
## Time to Initial Display and Time to Full Display
51-
52-
To track how long it takes your application to produce its first frame and then how long it takes to produce its first frame with all the content, Sentry measures time to initial display and time to full display, respectively.
53-
54-
- **Time to initial display**: tracks how long it takes for your mobile application to produce its first frame. This includes app start time on the first screen loaded. It doesn’t include any content loaded lazily after the first frame is drawn. Time to initial display is automatic and enabled by default.
55-
- **Time to full display**: tracks how long it takes for your mobile application to produce its first frame with full content. This includes content loaded asynchronously after the first frame, for example, after loading content from the network. Time to full display is opt-in and requires you to manually call the API to report that the screen has loaded all of its content and is fully displayed.
56-
57-
In the example below, the detail view of the transaction displays the time-to-initial-display span in an Android application:
58-
59-
![The event detail of a transaction with time to initial display and time to full display spans.](./img/time-to-initial-full-display.png)
60-
61-
You can track time to initial display for:
62-
63-
- [Android](/platforms/android/tracing/instrumentation/automatic-instrumentation/#time-to-initial-display)
64-
- [Apple](/platforms/apple/tracing/instrumentation/automatic-instrumentation/#time-to-initial-display)
65-
- [Flutter](/platforms/flutter/integrations/routing-instrumentation/#time-to-initial-display)
66-
- [React Native](/platforms/react-native/performance/instrumentation/time-to-display/#automatic-time-to-initial-display-for-react-navigation)
67-
68-
You can track time to full display for:
69-
70-
- [Android](/platforms/android/tracing/instrumentation/automatic-instrumentation/#time-to-full-display)
71-
- [Apple](/platforms/apple/tracing/instrumentation/automatic-instrumentation/#time-to-full-display)
72-
- [Flutter](/platforms/flutter/integrations/routing-instrumentation/#time-to-full-display)
73-
- [React Native](/platforms/react-native/performance/instrumentation/time-to-display/#time-to-full-display)
74-
75-
To get more insight into the performance of your time to initial display and time to full display metrics, use the [Screen Loads](/product/insights/mobile-vitals/screen-loads/) feature.
15+
<PageGrid />

docs/product/insights/mobile/app-starts.mdx renamed to docs/product/insights/mobile/mobile-screens/app-starts.mdx

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ The **App Starts** page shows an overview of the amount of time it takes for you
1515
**For Android:**
1616

1717
- `>=7.4.0` for automatic instrumentation of app start spans and app start profiling
18-
- [Performance-V2](/platforms/android/performance/instrumentation/perf-v2) feature flag and [App Start Profiling](/platforms/android/profiling/#app-start-profiling) must also be enabled in the SDK, e.g.:
18+
- [Performance-V2](/platforms/android/performance/instrumentation/perf-v2) feature flag (`<8.0.0`) and [App Start Profiling](/platforms/android/profiling/#app-start-profiling) must also be enabled in the SDK, e.g.:
1919

2020
```java {filename:MyApplication.java}
2121
import io.sentry.android.core.SentryAndroid;
@@ -59,23 +59,15 @@ The charts display the following metrics (using cold starts as an example):
5959

6060
- Average Cold Start
6161
- The overall time it takes your application to start, compared by release.
62-
- Top Screen Cold Start
63-
- The time it takes for individual screens to start, compared by release. This chart syncs with the sort order in the table below it.
64-
- Count
65-
- The number of starts occurring in the selected time range for the releases. This gives you an idea of how statistically significant the aggregated data is.
62+
- Cold Start Device Distribution
63+
- The average cold start time grouped by [device class](/concepts/search/searchable-properties/#device-classification) (high, medium, low, or unknown).
6664

6765
**Reasons Why You Might Not Be Seeing Any Data:**
6866

6967
- You don’t have any transactions with op `ui.load`
7068
- Your SDKs don’t meet the minimum SDK requirements
7169

72-
## Screen Summary Page
73-
74-
![Example of Screen Summary](./img/app-starts-screen-summary.png)
75-
76-
To get additional information about any of your application’s screens, click on them to get to the **Screen Summary** page. Here, you’ll see your average start duration broken down by release and [device class](/concepts/search/searchable-properties/#device-classification) (high, medium, low, or unknown). This will help you understand how users with different device performance levels are being affected.
77-
78-
The table below the chart shows spans that have changed from one release to the next and allows you to filter for specific span operations and device classes. Being able to narrow down to specific event samples helps debug slow starts.
70+
The table at the bottom shows spans that have changed from one release to the next and allows you to filter for specific span operations and device classes. Being able to narrow down to specific event samples helps debug slow starts.
7971

8072
Clicking the "By Event" toggle in the top right corner of this table will show you events split by release and you'll be able to see overall changes in start times between the two releases you've selected.
8173

0 commit comments

Comments
 (0)