We’re excited to announce that auto-instrumentation is now available for UI traces with Embrace. This feature will streamline mobile app performance monitoring, provide developers with better insights into end user experiences, and save much of the time required for manual instrumentation.
Currently, auto-instrumentation is supported for imperative UI frameworks only, and is available for UIKit on iOS and Android Views. Check back for more updates as we roll out auto-instrumentation for declarative frameworks, as well as for additional mobile user flows, like application startup.
View and Activity tracking
As part of this new feature, Embrace’s SDK will now automatically track the success and duration of key UI processes, including how long it takes an app to begin visual rendering, as well as how long it takes it to become interactive to users. For iOS apps, this is done by tracking Views, the building blocks of an iOS app’s user interface. Similarly, Embrace will track Activities for Android, the components that provide an Android app’s user interface.
The Embrace SDK will measure the following key rendering operations:
Time to First Render (TTFR – iOS) / Time to Initial Display (TTID – Android): Tracks how long it takes for your mobile application to display the first frame of the app’s UI, helping engineers identify slow initial UI loads. This is enabled by default for both iOS and Android.
Time to Interactive (TTI): Tracks how long it takes for an app to become interactive for the user, and is particularly useful for identifying sluggish screens that load UI but delay interaction readiness. This is an opt-in feature that requires engineers to manually call an API to report when the screen has fully loaded.
UI View Loading: Tracks the time between the end of Time to First Render / Time to Initial Display (TTFR / TTID) and the end of Time to Interactive (TTI). It is only applicable when TTI tracking is enabled.
Additional details
As is the case with manually instrumented spans, engineers can also add custom attributes to spans that are automatically instrumented. Additionally, engineers can add custom child spans to the auto-instrumented UI spans.
Embrace’s SDKs are built on Open telemetry. This means that all data collected, including auto-instrumented UI spans, can be exported to any OTel collector. Because of this, engineers can enjoy seamless integration with existing tools, including those that are open source.
Currently, Embrace’s auto instrumentation of UI spans is available for imperative UI frameworks only. Keep an eye out for later announcements when we make auto-instrumentation available for SwiftUI and Android’s Jetpack Compose.
Benefits to customers
Embrace’s tracing products give engineers a significant amount of flexibility and customization to track the user flows that matter for their application. Auto-instrumentation builds upon all of these existing benefits, while providing the added boost of saving time that would otherwise be spent manually inserting spans to track operations that are consistent and standard across an operating system.
Real-time Visibility: Utilizing spans and traces provides real-time visibility into your app’s performance, enabling you to identify and address issues promptly.
Bottleneck Identification: You can easily identify bottlenecks in view loading and interactivity, allowing for targeted optimization efforts based on which specific operations are leading to slow or unresponsive screens.
Reduced Manual Effort: By automating the creation of spans, auto-instrumentation significantly reduces the manual effort required for developers, saving valuable time and resources.
Elevated user experience: Ultimately, UI tracing is a critical tool in your observability arsenal for understanding how and where user-impacting issues are happening. It gives you the insight you need to pinpoint and debug UI performance issues, so you can ensure a smooth user experience and increased overall user satisfaction of your product.
Learn more
To learn more about Embrace’s tracing capabilities, check out our docs. If you’re not currently an Embrace customer, you can get started for free here.
Get started today with 1 million free user sessions.
Get started free