New Relic's mobile monitoring for iOS gives you a comprehensive view of your app's performance. It works for iOS apps written using Objective-C, Swift, or both languages. For a general overview of mobile monitoring functionality, see Introduction to mobile monitoring.
Before you install the iOS agent, review the compatibility and requirements.
As part of the installation process, New Relic automatically generates an application token. This is a 40-character hexadecimal string for authenticating each mobile app that you monitor.
There are two ways you can install the iOS agent:
- We recommend you install and configure the iOS agent using the CocoaPods installation method.
- You can also manually install and configure the iOS agent by adding the New Relic framework to your app.
After you install the agent, you can extend the agent's default instrumentation with various types of custom data:
In the mobile UI:
In New Relic dashboards:
Create and record custom events, interaction traces, and attributes to add details to your existing data and traces.
You can also query the custom events that you created in New Relic dashboards and NRQL.
Enable the MobileRequest event feature so you can perform a full network analysis.
To further investigate network request error rates and response times, query MobileRequest and MobileRequestError events.
Review detailed information using groups and filters to analyze trends that lead to crashes.
To view more information about crashes, create NRQL queries to review Insights charts related to crash data.
iOS SDK API
Use the iOS SDK API to instrument parts of your code that are not instrumented by default.
Then, view those custom events and attributes in New Relic Insights.
Report exceptions so you can identify factors creating a poor mobile app experience.
To further improve performance, review MobileHandledException event records in New Relic Insights.
Then, query MobileBreadcrumbs events to see all breadcrumbs or just breadcrumbs related to crashes.
If the agent isn't reporting data, try these troubleshooting suggestions.