An AppDynamics Session is a collection of chronological pageviews, for a specific user, or as defined for a user synthetically, during a specified timespan. A pageview is an instance of a web page being loaded into a web browser, including base pages, iframes, AJAX requests, and 3rd party content. A session begins at the first navigation start in the sequence and continues until the last page is fully downloaded. For example, a session may include all the pages a user visited when purchasing electronics from an e-commerce website, from the time the user logged in, selected and paid for products, until the user logged out.
What is a session
You can think of sessions as page visits in a time-based context to analyze user experience as the user interacts with an application. By examining sessions, you can understand how your applications are performing and how users are interacting with them. This enables you to better manage and improve your application by reducing the signal to noise ratio and focusing improvements on the most traversed or poorly performing areas of the site.
Why sessions are important
Sessions provide a breakdown of how much of the total end-user time is spent on each of the pages visited and which areas of the site can cause longer delays.. In addition, for mobile apps it provides crash snapshots that include stack traces of the application at the time of the crash and in the context of the session. Sessions can be used to analyze single user or a user group behaviors. AppDynamics Sessions give you visibility into client usage on a global basis, showing you how your applications are performing and how users and interacting with the. This enables you to better manage and improve your application by reducing the signal to noise ratio and focusing improvements on the most traversed or poor performing areas of the site. . Using End User Monitoring Sessions you can query the data provided by the AppDynamics agent using a wide array of criteria such as the type of browser, type of device, location, landing page, IP address, and more. You can also compare synthetic and real user load by page and region to get a deeper understanding of what is impacting any, particularly outlier, performance issues. In addition, you can use the browser synthetic data projected by AppDynamics to test for SLA compliance, ensuring the best possible experience for your users. Sessions can be used to analyze single user or user group behaviors. AppDynamics End User Experience Sessions give you visibility into client usage on a global basis, allowing you to: Analyze the user experience of specific users on your website Troubleshoot the root cause of any performance issues that are impacting user visits whether they existing in client code, network requests, application server, or 3rd party content
How do sessions work
To enable End-User Monitoring (EUM), which is comprised of the Sessions UI, along with other tools to analyze Ajax script and overall page performance, you add a small piece of very efficient code, the AppDynamics agent, to the source of your web pages to capture session information. To capture a session, the agent generates a unique user ID, determines the start and end of a session, and records the time and the order of events. The list of pageviews is updated when a new pageview occurs in that session. As your end-users interact with your application, the agent collects metrics and any error information of the application performance, which when transmitted and processed are made available in a series of dashboards and charts in the AppDynamics Controller UI. If the server-side application with which your mobile app interacts is also instrumented, you can get correlated metric information for the entire round-trip request life-cycle. Server-side correlation is supported when using all AppDynamics application performance management agents except the Apache Agent.
Sessions can be used in a number of use cases to analyze user or group behavior. You can analyze user behavior based on the user's unique ID across multiple sessions in what is called sniping. In addition, you can query for a segment of users with similar behavior, such as visiting a specific page or using a certain device. This technique of grouping users with similar behavior is called bucketing. Browser RUM Sessions allow you to query user data on a wide array of criteria, such as the type of browser, device, location, landing page, and IP address.
Troubleshooting with Sessions
Sessions allow you to gain understanding of how your users interact with your app, providing insight into how your applications are performing so you can manage them and improve their performance. Using the Visualization tab, you can see where potential problems exist at a glance, choosing the graphical widgets to display only the information of interest to you. Using the Data tab, you can filter session data using a wide variety of criteria, including custom fields, to enable you to see information that is the most pertinent to the issue at hand, such as how many sessions resulted in purchases or had health rule violations. You can dig down into a snapshot of a specific session to analyze the performance of each page visited during that session and discover where performance problems and error conditions exist.