During our open beta of Real User Monitoring (RUM) for mobile, we’ve received great feedback and suggestions that allowed us to refine and enhance Real User Monitoring for mobile. The insights you gain from RUM for mobile will cut down the time spent wondering what to improve and will take you straight to the real problems your end users face.

**See how to get started with Real User Monitoring for web or **Real User Monitoring for mobile.

What we’ve added since our RUM for mobile beta launch:

New automatic network logging for Android

Expanded iOS automatic network logging coverage

Added filtering for view and network information

Updated RUM for mobile dashboards

Automatic network performance logging for Android

Firstly, let’s look at Android. Raygun4Android will now automatically report the time it took to make a successful network request using _java.net._HttpURLConnection and javax.net.ssl.HttpsURLConnection classes.

The duration of the network request will be tracked and reported in the performance tab of your application under network calls:

networklogging in Real User Monitoring for mobile applications

Expanded automatic network performance logging for iOS

We have expanded our coverage of automatic network logging to include NSURLSession methods that make use of NSURLSessionDelegate callbacks. The full list of methods that Raygun automatically logs on iOS is below:

[NSURLSession dataTaskWithURL:]
[NSURLSession dataTaskWithURL:completionHandler:]
[NSURLSession dataTaskWithRequest:]
[NSURLSession dataTaskWithRequest:completionHandler:]
[NSURLSession downloadTaskWithURL:]
[NSURLSession downloadTaskWithURL:completionHandler:]
[NSURLSession downloadTaskWithRequest:]
[NSURLSession downloadTaskWithRequest:completionHandler:]
[NSURLSession uploadTaskWithRequest:fromData:]
[NSURLSession uploadTaskWithRequest:fromData:completionHandler:]
[NSURLSession uploadTaskWithRequest:fromFile:]
[NSURLSession uploadTaskWithRequest:fromFile:completionHandler:]
[NSURLConnection sendAsynchronousRequest:queue:completionHandler]
[NSURLConnection sendSynchronousRequest:returningResponse:error:]

Filtering view and network information

We have also made updates to the mobile providers to allow a more customizable RUM experience. Not all information Real User Monitoring for mobile reports share the same importance, so we make it easy to filter out that information before it’s sent to us:

You can filter out the reporting of view information by view name. For iOS, this will be the name of the controller class and on Android, it is the activity’s name.

Raygun4iOS:

[[Raygun sharedReporter] ignoreViews:[[NSArray alloc]initWithObjects:@"RootViewController", nil]];

Raygun4Android:

RaygunClient.ignoreViews(new String[]{ "MainActivity" });

If you don’t wish to log the performance of certain network requests, you can filter them out by URL.

Raygun4iOS:

[[Raygun sharedReporter] ignoreURLs:[[NSArray alloc]initWithObjects:@"raygun.com", nil]];

Raygun4Android:

RaygunClient.ignoreURLs(new String[]{ "raygun.com" });

We also provide the option to disable network performance logging entirely when attaching RUM.

Raygun4iOS:

[[Raygun sharedReporter] attachPulseWithNetworkLogging:false];

Raygun4Android:

boolean withNetworkLogging = false;
RaygunClient.attachPulse(this, withNetworkLogging);

#user experiences

Announcing Real User Monitoring  for mobile: Improve user experiences on any platform
1.25 GEEK