All About the Apps

HP Real User Monitoring (RUM) for Native Mobile Applications

HP Real User Monitoring (RUM) for Native Mobile Applications


Many mobile applications communicate over the network with back-end servers in order to pull data or update information. Response times of these actions play a significant role in the overall user experience with the application, so it is very important that they are correctly measured.


Motivation: Why and what to measure on mobile applications?


Importance of Network Performance

Applications are often required to exchange information with back-end servers. For example, to get the status of a user’s bank account, receive updates from friends, or post a new picture to a blog. In all cases, the response time of such network communication has a direct effect on the overall user experience and satisfaction from the application. Various parameters can affect these response times, from the network load of the mobile carrier to hardware problems on back-end servers. Identifying slow response times and pinpointing the problematic area is the first step in improving performance.


Measuring on Device

With mobile applications, network operations must be measured on the device in order to account for mobile network latency, which cannot be measured correctly from the server side. In order to get even better results, you can combine the Network for Mobile Apps and Sniffing solutions to achieve a breakdown of total response time by mobile network, WAN, and server response time components.


Device and Application Parameters

HP RUM collects various metrics for mobile networks, such as device type, operating system, mobile carrier, and installed application version. In many cases, only certain user groups experience slow response times and with mobile applications, these parameters may be the common factor. The collected information can help you to estimate the number of affected users and calculate the impact when a performance problem is detected, and may even be able to suggest a recommended solution.


Functionality of the native mobile monitor


Post-build Infusion

With the Network for Mobile Apps solution, RUM monitors native applications installed by end users on their devices, usually from the iTunes/Google Play stores. This means that the application must be shipped with embedded RUM monitoring capabilities. For Android applications, we developed a post-build solution for embedding RUM monitors in an application. The main advantage of such an approach is that no code changes are required and the development process is not affected. Refer to the Post-build infusion section below for detailed instructions.


Data examples

The following snapshot of the Session Details report shows the parameters that are collected for each user session:


You can use the Session Summary report to view aggregated statistics over all user sessions.


The following snapshot shows the Tier Summary report, when the same requests are monitored by the Network for Mobile Apps solution on the device and also by a RUM Sniffer on the back-end server. In this example you can see that most of the time was spent on the server.


Mobile resources utilization

As mentioned above, RUM monitored data is collected and reported by a background process, without affecting the user experience. There are a number of types of mobile device resources used by RUM data collection, of which you should be aware.

1. Memory. The information about the network activity of the application is aggregated and is sent in chunks to the RUM Browser Probe. The maximum memory footprint is 2 MB.
2. Network bandwidth. The maximum network bandwidth to be used by the data transfer process, averaged over internals of 30 seconds, is 500 Kbps (Kilobits per second), and is configurable.
3. Battery. The main parameter that affects the battery usage by RUM monitoring is the frequency of HTTP communications to the RUM Browser Probe. When the application is active, additional HTTP requests made by the RUM background process in the device are unlikely to significantly affect the overall battery usage of the application. Also you can configure the frequency of data reporting.


Benefits of the native mobile monitor


There are a number of benefits of mobile application monitoring by RUM from availability, performance and end user data collection perspective which you should be aware.


  • Passively monitor application performance—All users, All locations, All the time. No other sensible way to have this coverage
  • Replay user sessions to help triage and solve problems faster on mobile application services
  • Generate testing scripts based on real end user session data
  • Trace transactions across automatically discovered application, network and infrastructure tiers to speed resolution

For more information please visit:

  • Application Performance mgnt
0 Kudos
About the Author


//Add this to "OnDomLoad" event