How to Monitor iOS and Android Mobile Apps with the MAITI API
Sluggish applications kill business. APM helps you fight back. But what about APM for mobile applications? With the BYOD movement in full swing, mobile-app performance is quickly becoming a top IT priority. Unfortunately, gathering mobile application and transaction data can be tricky, to say the least — until now.
Meet the MAITI API (pronounced Mai Tai, like the drink, and stands for mobile-application instrumentation telemetry interface), which enables you to easily track performance and usage data for both Android and iOS applications.
Today, there are two main types of mobile apps: The first is accessed through a web browser. The second is downloaded from the app store and lives on your mobile device.
At its core, MAITI is APM for mobile applications. An open-sourced API, MAITI (which is built into application code by developers) enables the instrumentation of mobile applications for both performance and usage tracking. That means you can capture transaction information using transaction bracketing; contextual information such as username, app version, and app name; and key platform information like OS version, connection type, and total and free RAM.
MAITI will even send error information tying front-end transactions to back-end executions for speedy troubleshooting.
With transaction bracketing, you can detect the start and end of user transactions and record all relevant performance metrics in between. Developers decide which transactions to follow. For example, a transaction could begin with the user selecting something and end with the resulting display of information. What’s more, you can capture response times for an unlimited number of transactions.
Apart from response times, MAITI also lets developers apply free-form tags in each performance record. These tags can be used to indicate contextual information about the user and the app. You can even capture key pieces of information about the device and mobile platform itself.
To use MAITI you need two pieces:
- The code that gets inserted into the application
- The receiver that collects data sent from the mobile device
Because MAITI is open-sourced, developers can adjust the API and even write their own receivers, which eliminates the fear of vendor lock-in. It also lets developers play around with the MAITI code and personalize their instrumentation freely.
SteelCentral Web Analyzer is a great MAITI receiver and is available as a standalone product or as part of the Riverbed AppInternals Xpert™ package.
Check out MAITI on GitHub or the Riverbed Programmability and Developer Tools page for more information. Also see 4 Ways to Do Real-User Monitoring (RUM) for Better App Performance Management.