Custom metrics for EUM Analytics are not supported in on-premise environments.

AppDynamics End User Monitoring (EUM) gives you visibility on the performance of your application from the viewpoint of the end user. 

While Application Performance Monitoring (APM) measures user interaction starting at the web server or application server entry point, EUM extends that visibility all the way to the web browser, mobile, or IoT application. As a result, EUM reveals the impact the network and browser rendering time have on the user experience of your application.

The diagram below provides an overview of the different components, deployment models (SaaS/on-premise), and the Controller UI as seen by AppDynamics end users. The SaaS deployment employs services (Controller Service, Events Service, EUM Service, EUM Synthetic Monitoring Service) to collect, store, and process data, whereas, the on-premise deployment requires customers to install discrete components such as the Controller and servers (Events Server, EUM Server) that run processes to collect, store, and process data.

Annotations are provided for each label below the diagram.

End User Monitoring Diagram

StepDescriptionComponent(s)
Step One

The Browser, Mobile, and IoT Agents run in web/mobile/IoT applications, collect metrics, and then transmit that data to either a SaaS or an on-premise deployment of AppDynamics.

  • Browser/Mobile/IoT Apps
  • EUM Agents
Step Two
The AppDynamics SaaS Cloud, consisting of the components listed to the right, stores, processes, and analyzes data, and then delivers RUM metrics to the Controller UI.
(A)
Controller Service - stores data and metadata, makes calls to the EUM Server for raw data and the Events Service for analytic data.
(B)
Events Service - stores short-term RUM data (such as sessions, network requests, snapshots) for heavier analysis.
(C)
EUM Service - verifies, aggregates, and packages raw browser/mobile app metrics.
(D)
EUM Synthetic Monitoring Service - schedules and executes Browser Synthetic jobs and returns session data to the Controller.
Step Three

The on-premise deployment of AppDynamics has most of the same components and data as the SaaS model. In this model, DevOps install and administer their own Controller, Events Service, and EUM Server. The EUM Synthetic Monitoring Service and sessions data, however, are not available in the on-premise deployment.

  • Controller
  • Events Server
  • EUM Server

See the descriptions for each component above in step 2. The EUM Server performs the same functions as the EUM Service.

Step Four

AppDynamics users can go to the AppDynamics Controller UI to view and analyze RUM metrics as snapshots, pages, Ajax requests, sessions, network requests, or in the form of charts and graphs.

Controller UI

See the description for the Controller UI in step 2.

Understand End User Activity

Using EUM, you can determine: 

  • Where geographically your heaviest application load is originated.
  • Where geographically your slowest End User response times occur.
  • How performance varies by
    • location.
    • client type, device, browser and browser version, and network connection for web requests.
    • application and application version, operating system version, device, and carrier for mobile requests.
  • What your slowest web/Ajax requests are, and where the problem may lie.
  • What your slowest mobile and IoT network requests are, and where the problem may lie.
  • How application server performance impacts the performance of your web and mobile traffic.
  • Whether your mobile or IoT applications are experiencing errors or crashes and the root cause of the issues. For example, for mobile applications, EUM provides stack traces and event trails for the crash or error, helping you troubleshoot and optimize mobile applications.

View EUM Data

The performance information generated by EUM is distinct from the application monitoring data generated by app server agents.

EUM data appears in various locations in the Controller UI, including in the User Experience dashboard, Metric Browser, and AppDynamics Analytics pages.

When linked to application business transactions, EUM data gives you a complete view of your end users' experience from the client request, through the application environment, and back to the client as the user response. 

You can view EUM performance data in the Controller UI in the User Experience tab. From there, you can access information specific to browser applications, mobile applications, or connected devices (IoT applications). 

On-Premise EUM Deployments

By default, EUM is configured to use an AppDynamics-hosted component called the EUM Cloud. For a fully on-premise installation, the EUM Server provides the functionality of the EUM Cloud. For information, see EUM Server Deployment.

Some functionality for EUM depends on the AppDynamics Platform Events Service. In a SaaS environment, this is managed by AppDynamics, but it is also possible to use this functionality in an on-premise form. 

To host the Events Service on premises, see:

If you are adding EUM to an existing on-premise Controller installation, you should evaluate your current configuration's ability to handle the additional load imposed by EUM. For more information, see Controller Sizing.

Access the SaaS EUM Server

 The SaaS EUM Server consists of the components listed below. Each component may have different endpoints depending on the region of your Controller. 

  • EUM Services - The Mobile Agents, JavaScript Agent, and IoT SDKs send data to the EUM Services. The Controller fetches data from the EUM Server.
  • Events Service - The EUM Server sends analytics data to the Events Service. The Controller also queries the Events Service.
  • Synthetic Services - The Synthetic Private Agent and Synthetic Hosted Agent send data to the Synthetic Services.

If your SaaS or on-premise deployment requires access to any of these components on the Internet, make sure the URLs given in SaaS Domains and IP Ranges are accessible from your network. 

For on-premise deployments, however, the EUM Server can either be located on the Internet or hosted inside your own data center/network. On-premise access points are configured at installation or through the UI. See EUM Server Deployment for more information.

How EUM Works with other AppDynamics Products

This section describes how other App iQ Platform products work with EUM to provide complete, full visibility on application health and user experience.

EUM and Application Performance Monitoring

Using APM with EUM provides you with greater insight into how the performance of your business application affects the end-user experience. To integrate APM with EUM, you correlate business transactions with browser snapshots. This enables you to trace bad user experiences to issues with your backends such as an unresponsive web service, bad database query or slow server response. To learn how to integrate APM with EUM, see Correlate Business Transactions for Browser RUM.

You can also use the app server agents running on business applications that serve your browser applications to inject JavaScript agent into the code that runs on the browser. This obviates the need to manually inject the JavaScript agent. For more information, see Automatic Injection and Assisted Injection.  

You must assign unique names to EUM applications and business applications. For example, if you created the business application "E-Commerce", you cannot create a browser, mobile, or IoT application with that same name or vice versa.

EUM and Application Analytics

AppDynamics Application Analytics enables you to use the powerful AppDynamics Query Language (ADQL) to analyze different types of EUM data through complex queries. The Analytics components are based on the Events Service, which is also the source of data for Browser Analyze, Crash AnalyzeNetwork Requests Analyze, and all IoT data. Analytics requires a license separate from the EUM licenses except for IoT Monitoring. 

Learn More

For more information on the type of user monitoring you interested in, see: