-
-
Notifications
You must be signed in to change notification settings - Fork 341
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix end time of app start #3461
Comments
Is this example reporting that TTID == TTFD? It's a bit confusing because I expect TTFD to always come after TTID, even if they're equal, but that's not what the frontend is showing here. |
No TTFD is shortly after TTID. You should call |
Definitely seems like there's a bug in the frontend since in your screenshot it shows TTFD and then TTID. That should never happen IIUC. |
Ah you are talking about this ? Yes, that seems like a bug. I created an issue for this #3471. |
We could also implement this for the |
I'm still a bit unclear as to what we expect to see in the screenshot. It seems like TTFD should be at the end of This might be breaking in the sense that the aggregates are going to be weird once a customer goes live with this update, but they will even out after some time. I'm not sure that's really a breaking change w.r.t. the SDK, this is a bugfix because we weren't correctly reporting the timestamps, IIUC. If it really is the case that we are currently misreporting times, I don't think we should gate the change behind what is effectively a feature flag, and force the customer to consider the tradeoff of possibly continuing with bad data. That makes configuration more complicated for customers, and code maintenance and customer support more complicated for us. Existing customers are going to have to reckon with the data inconsistency regardless at some point, and new customers will have a higher barrier to entry with this. We should note the issue in the changelog, and explain how to use dashboard filters to avoid mixed results, like filtering by their app version, and that they can't compare between app versions before and after taking this update, but rather will need two releases with this update before seeing differences in TTFD. |
@armcknight, I agree. We will fix the TTID/TTFD spans and measurements in a non-breaking change without a feature flag in #3471. I'm still unsure if the app start duration change is breaking. In our weekly sync, we (@brustolin, @kahest, and me) agreed that it is. The plan for this issue is to prolong the initial frame render span until the next frame is drawn after |
Description
Currently, the end of the app start is when the OS posts
UIWindowDidBecomeVisibleNotification
, which doesn't mean that some proper content is rendered for the user. When looking at an app start transaction, we can see that the initial frame render ends before the initial display span even starts.Instead, the end of the initial frame render span and the app start should be the same as of the end of TTID. The SDK reports TTID when the app draws the next frame after
loadView
of the UIViewController is called, which correctly reflects when the user sees the first frame of proper content.Strictly speaking, this should be handled as a breaking change, as this fix will prolong app start times.
The text was updated successfully, but these errors were encountered: