This past year, Embrace embarked on an exciting project: integrating OpenTelemetry into our product for mobile developers. Our objective was to enhance the observability of mobile apps and gain detailed insights into their performance and behavior in real-time while following global conventions.
For context, Embrace provides native (Android and iOS) and hosted (React Native, Flutter, and Unity) SDKs to integrate into mobile applications. These SDKs allow developers to capture key telemetry about app sessions, which can be used to recreate user journeys and understand the app’s common patterns to improve the experience and performance.
We previously announced our fully open source, OpenTelemetry-compliant SDKs for Android and iOS, and we wanted to keep the ball rolling.
Our next milestone is granting the same capabilities to our hosted SDKs. As a member of the Embrace React Native SDK team, I’d like to share how we developed the idea to extend OpenTelemetry capabilities to React Native, and the journey we took to achieve our goal. I’ll outline the key steps and challenges we encountered along the way. Finally, I will walk you through how to use the proposed OpenTelemetry-compliant instrumentation we’ve created!