Dynatrace Associate vILT – Day 2
Agenda
• UI Fundamentals
• RUM – Overview
• RUM – User Sessions
• User Sessions
• Session Replay
• RUM – Applications
• Web Applications
• Mobile Applications
• Synthetic Monitoring
• Overview
• Architecture
• Availability Script
• ClickPath Script
Confidential 2
UI Fundamentals
UI Fundamentals
Confidential 4
UI Fundamentals – Basic Navigation
• The UI consists of a side menu, a top menu, and the main body
• The body initially displays the “Home Dashboard”
• The body will display other views/dashboards based on menu selections or drill-downs
• The Time frame selector enables you to select a specific analysis time frame for each dashboard
• Out of the box dashboards can be accessed using the side menu or by drilling down through the
Home Dashboard
Confidential 5
User Interface Home Dashboard
Home Dashboard
Top Menu
Side Menu –
Dashboards
Side Menu – Analyze
Side Menu – Monitor
Side Menu - Manage
Confidential 6
User Interface Top Menu
Home Dashboard
Top Menu
Side Menu –
Dashboards
Side Menu – Analyze
Side Menu – Monitor
Side Menu - Manage
Confidential 7
User Interface Side Menu – Dashboards
Home Dashboard
Top Menu
Side Menu –
Dashboards
Side Menu – Analyze
Side Menu – Monitor
Side Menu - Manage
Confidential 8
User Interface Side Menu – Analyze
Home Dashboard
Top Menu
Side Menu –
Dashboards
Side Menu – Analyze
Side Menu – Monitor
Side Menu - Manage
Confidential 9
User Interface Side Menu – Monitor
Home Dashboard
Top Menu
Side Menu –
Dashboards
Side Menu – Analyze
Side Menu – Monitor
Side Menu - Manage
Confidential 10
User Interface Side Menu - Manage
Home Dashboard
Top Menu
Side Menu –
Dashboards
Side Menu – Analyze
Side Menu – Monitor
Side Menu - Manage
Confidential 11
Questions?
Confidential 12
RUM Overview
Confidential 13
RUM Overview
• Dynatrace real user monitoring (RUM) collects metrics from your customers' web browsers and
correlates the browser data with server-side information obtained from Dynatrace OneAgent
• Web browser data is collected by a JavaScript tag that is placed inside the HTML of your applications'
web pages
• There are two ways to inject the JavaScript tag
• Automatic or “Full Stack”
• Manual or “Agentless”
Confidential 14
Architecture
• Parts needed for Real User Monitoring
• (modern) Browser rendering HTML (at least one – Single Page Apps)
• Dynatrace JavaScript code
• Data channel to send back from the browser to Dynatrace – beacon or
monitor signal
Confidential 15
Automatic Agent Injection
• Automatic or “Full Stack”
• HTML is delivered via a OneAgent
monitored server
• JS tag is auto injected by the OneAgent
• Correlation of server side web requests
• Application rules and injection rules can
be applied
• Use whenever possible
Confidential 16
Automatic injection of the Dynatrace JavaScript tag
• turned on by default (see default application)
• works for Java containers based on the servlet specification, Apache, IIS, nginx and nodeJS
• can be turned off per technology on process group level – by user in the UI
• can be turned off per application – by user in the UI
• is controlled via injection rules in the advanced application settings
• The best injection point for the JS snippet is determined by the agent; though the injection point can be
overridden by these advanced settings
• Injection rules and application detection rules are defined on URL
• Except the “domain matches”, which is just looking at the http header
• The URL must be the same as seen in the browser
Confidential 17
Applications
• Default application – “My web application”
• “catch all application” for all user sessions and all user actions not matching to an existing application rule
• can’t be deleted
• turning off RUM for the default application deactivates the injection for all html pages not belonging to
other applications
• Application rules and detection
• application rules work only for auto injected (agent based) web applications. Manual injected (agentless)
web applications are controlled with the inserted tag and mobile applications with the mobile agent
instrumentation. RUM-only applications do not apply to any given detection rules.
• agent uses application rules for choosing the correct application configuration: injection on/off, js tag
settings, injection rules for this application
• assignment of a user action to an application is done based on the URL of a user action
• application rules are applied in a given order and the first match is taken
Confidential 18
Agentless Injection
• Manual or “Agentless”
• Customer adds JS tag on their own – no
OneAgent needed
• Correlation of server side web requests is not
possible
• JS tag (code) defines the application
• JS tag (JS snippet) + JS library (JS agent)
• Inline Dynatrace JS code
• Use if
• No root access
• No supported technology
• Hosted web application
Confidential 19
Agentless Architecture
• JS-Tag options
• CDN (if agentless)
• SaaS – Dynatrace CDN
• Managed – Customer CDN
• JS-File is loaded from the Dynatrace CDN
(Cloudfront)
• On the server (if agentless)
• OneAgent writes the JS-Script to a file on the
filesystem (full agent only parts are injected)
• Inline (if desired)
• No JS-File loaded (to avoid negative impact on
Google PageSpeed results)
Confidential 20
Questions?
Confidential 21
User Sessions
Confidential 22
User Sessions
• What is a user session?
• New users
• Identify specific users
• Visit origin
• Device type
Confidential 23
Cross application behavior analysis
Confidential 24
Advanced Filtering
Confidential 25
Analyze user sessions
Confidential 26
Analyze user sessions
• Anonymous session
correlation
• “Think“ / “Read“ time
Confidential 27
User Actions
• What are user actions?
• User action types -
• Initial Page Load
• Web 2.0 actions and XHR calls
• Key User Actions
• Custom user actions
Confidential 28
Analyze user sessions
Session
Details
Complete user
action timeline
and breakdown
Confidential 29
Session Replay
• Record and replay sessions in a movie-like experience
• Identify and analyze errors and areas of struggle for customers:
• Malformed pages
• Infinite spinners
• High priority errors
• See what your customers saw
• Customer support/helpdesk
• Users can forget their clickpath
• Enable in applicatino settings
Confidential 30
Protecting personal data with Session Replay
• As every user action is recorded protecting sensitive data is high priority
• All user input values are masked by default
• Additional settings are available for masking specific content and user-
identifying attributes
• Content that can be masked:
• Form fields
• Password fields
• Content collected from masked input fields on previous pages
• Hidden attributes
Confidential 31
Mobile User Sessions
• Full user sessions for Mobile applications
Confidential 32
User Sessions Live User Sessions
Live User Sessions
Session Analysis
Filtering Sessions
Charting Sessions
Session Replay
Confidential 33
User Sessions Session Analysis
Live User Sessions
Session Analysis
Filtering Sessions
Charting Sessions
Session Replay
Confidential 34
User Sessions Filtering Sessions
Live User Sessions
Session Analysis
Filtering Sessions
Charting Sessions
Session Replay
Confidential 35
User Sessions Charting Sessions
Live User Sessions
Session Analysis
Filtering Sessions
Charting Sessions
Session Replay
Confidential 36
User Sessions Session Replay
Live User Sessions
Session Analysis
Filtering Sessions
Charting Sessions
Session Replay
Confidential 37
Questions?
Confidential 38
RUM – Applications
Confidential 39
How do I analyze Applications?
Main menu
OR
As a dashboard tile
Confidential 40
Web
Applications Views and Filters
Views and Filters
Application Overview
Performance Analysis
Key User Actions
User Behavior
3rd Party SaaS Vendors
Confidential 41
Web
Applications Application Overview
Views and Filters
Application Overview
Performance Analysis
Key User Actions
User Behavior
3rd Party SaaS Vendors
Confidential 42
Web
Applications Performance Analysis
Views and Filters
Application Overview
Performance Analysis
Key User Actions
User Behavior
3rd Party SaaS Vendors
Confidential 43
Top Browser
Confidential 44
Top User Type
Confidential 45
Geographic Breakdown
Confidential 46
Actions
Confidential 47
What is Apdex Rating?
• Apdex is a universal standard that is used to
measure user satisfaction with application
performance.
• Default threshold for all apps is 3 seconds
• Define your own thresholds for user satisfaction for
individual actions
• How it works –
• Value = 1 Perfect!
• Value < 0.5 Poor
• Benchmarking and comparison
Confidential 48
JavaScript errors
• Analyze JavaScript errors across multiple
dimensions
• When does the error occur?
• What browser?
• What user actions?
• What line of code?
• What is the stack trace?
• What other information does the browser
provide me?
Confidential 49
Resource Contribution
• Understand resource
contribution breakdown
• 1st & 3rd party contribution
• CDNs
Confidential 50
Called Services
Confidential 51
Performance Analysis
Confidential 52
Availability
• Web check correlation
• Outage detection
Confidential 53
Top User Actions
Confidential 54
All the requests: What to do with the data?
• The graph shows the number of user actions
and how long the action took (median)
• Application wide
• Use for finding usage trends
• The tabular view below the graph gives you high
level information about the top 100 or key
requests
• Time consumed in relation to other
requests
• Duration
• Number of actions
• JavaScript errors
• Click on a particular request to view the detailed
response time information.
Confidential 55
Performance Analysis Overview
• Action duration vs load
• Contributor breakdown &waterfall
analysis
• Problem correlation & filtering
• Segmentation analysis
• Resources
• Top web request contributors
• JavaScript impact & analysis
• Mark as a Key Request
Confidential 56
Contributors breakdown
• Network Time
• Latency
• Increases with the number of requests on a
page
• CDNs and Third parties also contribute to
Network time
• Server Time
• This time you have the most control over
• Front End Time
• Browser time
• Affected by user installed browser plugins,
available browser resources, CDNs, third
parties, and most of all page coding
Confidential 57
Individual resource breakdown
• W3C Timings
• Response time breakdown
Confidential 58
Top web request contributors
Confidential 59
JavaScript errors
• Why is this relevant/ why did we build it:
• How can you really know the impact of JS errors on your application? Do you have access to an
infinite number of browsers, operating systems, and the devices they run on? No one does,
which is why we have to rely on real user monitoring to provide that information straight from
the clients browser.
• When would I look at this?
• To validate releases. To see if js errors relate to new distributions of websites, browsers or OS
updates. DT will alert you of sudden increases, but vigilance is a healthy practice
• What should I look for and what does it mean?
• JS errors are shown by rate of occurrence, in descending order. For every error, look for levels
of isolation to see if patterns occur. Then reproduce in that environment, and address root
cause in the script
Confidential 60
Analyzing individual JS errors answers the following…
• What is the stack trace? • When does the error occur?
• What other information does the browser provide me? • What browser?
• Geo location info? • What user actions?
• What line of code?
Confidential 61
Web
Applications Key User Actions
Views and Filters
Application Overview
Performance Analysis
Key User Actions
User Behavior
3rd Party SaaS Vendors
Confidential 62
Key User Actions
• Not every user action has the same importance to the success of your digital business. For example,
visits to critical landing pages and shopping cart views can be particularly vital to your business
operations and your customers’ experience with your application.
• To give such critical user actions the attention they deserve, Dynatrace enables you to flag certain user
actions as key user actions. You can define your own Apdex thresholds and key performance metrics
for key user actions, access long-term monitoring data, and pin key user actions to your dashboards in
the form of dedicated tiles.
• Custom anomaly detection for key user actions. (Discussed later)
Confidential 63
Configure a User Action as Key
• From the performance analysis
screen select 'top user actions'
• In the list of actions select the
action you'd like to make 'key'
and filter on it.
• When analyzing a single user
action, you can select the button
'mark as key user action'
Confidential 64
Web
Applications User Behavior
Views and Filters
Application Overview
Performance Analysis
Key User Actions
User Behavior
3rd Party SaaS Vendors
Confidential 65
User Behavior
Confidential 66
Top Users
• New vs Returning Users
Confidential 67
Top User Types
• Real vs Synthetic vs Robot users
Confidential 68
Geographic Breakdown
• Breakdown by Location
Confidential 69
Active Sessions
• Active session & user engagement analysis
• Monitor and track peak activity intervals
• Compare against previous time frames
Confidential 70
Bounce Rate
• Sessions that contain only one user action
Confidential 71
Bounces
Bounce rate
Bounced sessions
Confidential 72
Entry Actions
• First action in a user’s session
Confidential 73
Exit Actions
• Last action in a user’s session
Confidential 74
Other Actions
• Every action between the first and last
Confidential 75
Entry & Exit Actions
Confidential 76
Entry & Exit Actions
Filtering
Trend analysis
Confidential 77
Conversion goals
Confidential 78
Conversion comparisons and trends
Conversion rate trending and
comparison features
Problem correlation
Confidential 79
Conversion goal Top 5 goal
rates completions
Users reaching at
least one goal
Confidential 80
Web
Applications 3rd Party SaaS Vendors
Views and Filters
Application Overview
Performance Analysis
Key User Actions
User Behavior
3rd Party SaaS Vendors
Confidential 81
3rd Party SaaS Vendor
• Companies are increasingly looking for ways to ensure the customer experience and performance of
the SaaS applications that their employees and customers rely on
• Unfortunately, it’s usually not possible to install Dynatrace OneAgent on the web servers that SaaS
vendors use to serve their applications
• This is why Dynatrace now offers a browser extension that enables you to gain user experience
insights into the performance of SaaS applications without access to the underlying web servers
• The new Dynatrace Real User Monitoring (RUM) browser extension allows you to capture all the
application performance and user behavior data that you need
• Once configured, the RUM browser extension delivers complete Dynatrace real user monitoring
capabilities
Confidential 82
How To Configure
Confidential 83
How To Configure
• Login to your Dynatrace environment and select Deploy Dynatrace from the navigation menu
• Click the Monitor via browser extension button
• Install the browser extension locally to test and refine your configuration
• Configure the applications you want to monitor using the browser extension
• Deploy the RUM browser extension company-wide
Confidential 84
Deploy the RUM browser extension company-wide
• The easiest way to roll out the extension—pre-configured and ready to go—is via two Google
Chrome policies that are best deployed via windows group policies
• Options for Linux & MacOS are also available
• All deployed extensions automatically receive all configuration changes you make
• for example, updated URL injection patterns or even completely new applications to be monitored
• Also, any application-specific settings changes you make via the Dynatrace UI will be automatically
picked up by the RUM browser extension
Confidential 85
3rd Party SaaS Vendor
Confidential 86
Mobile Applications
Confidential 87
Overview
• Seamlessly monitor iOS and Android apps
• Evaluate active users, sessions and app version adoption
• Track all crashes
• Monitor the performance of your HTTP web request performance and error rates
Confidential 88
Monitor mobile app version usage and adoption
• Follow your users app version adoption after a release in real time
• Measure the actual app version distribution
• Review past app version adoption cycles
Confidential 89
Count the number of active and new app users
• Monitor the number of active users and
sessions for a given period of time
• Check how many new users were acquired
during that period of time
Confidential 90
Evaluate crash reports
• Evaluate the details of specific crashes
• How many unique users were affected
• What was the most crashed device type, OS
version, resolution?
• Download the stack trace
• Filter all crashes by
• App version
• Platform
• OS
• Screen resolution
• Device type
Confidential 91
Monitor HTTP request performance
• Monitor your apps 3rd party HTTP requests
• Compare HTTP performance with previous timeframes
• Monitor HTTP request payload sizes and request times
Confidential 92
Monitor 1st party service call performance
• Automatically monitor service request calls into your
own backend infrastructure
• Automatically map the dependencies of your mobile
apps
• Monitor service request performance and error rates
• See a real time topology of your mobile apps within
Smartscape
Confidential 93
Analysis – Live Demo
Confidential 94
Questions?
Confidential 95
Synthetic Monitoring
Confidential 96
Synthetic
Monitoring Architecture
Architecture • VU Controller
• 40+ production locations
Browser Monitor • Script caching
• Node monitored by Dynatrace
• KPI - 20 or more concurrent browser executions
Analysis
• VU Player
• Chrome based
Reports
• JS agent management – replace RUM tag, inject more in-depth synthetic tag
• “Login-Sense” like capability to traverse the login by locating form fields and
Settings auto-filling
• Screen Capture
HTTP Monitor
Confidential 97
Summary of Test Execution
SaaS Managed
Synthetic
Control
Cluster
Cluster
Push result Poll test
Embedded
AG Cluster AG
HAProxy
Location: Paris BF
BF
Chrome
Chrome
VUC Chrome
Chrome
Chrome Send beacon signals
VUC Chrome
Prepare Chrome
Execute Script,
adjust JS-Tag if found
Confidential 98
Determine endpoint for Synthetic Beacon-Signal
• SaaS
• https://*.live.dynatrace.com/bf
• Managed
• Cluster is using the Domain/IP of the configured Cluster AG
• https://myclusterag.gateway.org.com:9999/bf
• Both approaches end up in the Beacon-Forwarder of an AG
• Special component simply proxying beacon signals to the cluster
Confidential 99
Execution in real browser
• Chrome browser used
• Constantly updated to current version
• Empty browser caches on execution
Confidential 10
0
Synthetic Recorder - Plugin
SaaS
Cluster Synthetic
Control
Record clickpath Managed
Update clickpath locally
Mission
verify by playback Control
Script Cluster
Insert/Update script through cluster and using
Synthetic API
Confidential 10
1
Synthetic
Monitoring Creating a Synthetic Test
Architecture
Browser Monitor
Analysis
Reports
Settings
HTTP Monitor
Confidential 10
2
Synthetic
Monitoring Analysis
Architecture
Browser Monitor
Analysis
Reports
Settings
HTTP Monitor
Confidential 10
3
Synthetic
Monitoring Reports
Architecture
Browser Monitor
Analysis
Reports
Settings
HTTP Monitor
Confidential 10
4
Synthetic
Monitoring Settings
Architecture
Browser Monitor
Analysis
Reports
Settings
HTTP Monitor
Confidential 10
5
Edit test as clickpath or as JSON script
Confidential 10
6
Custom JavaScript events
Confidential 10
7
Custom request headers
Confidential 10
8
Synthetic
Monitoring HTTP Monitors
Architecture
Browser Monitor
Analysis
Reports
Settings
HTTP Monitor
Confidential 10
9
HTTP Monitors
• Synthetic offering has been extended to include monitoring of internal applications
• An HTTP monitor uses a simple HTTP request to monitor the availability of a given URL
• Requires Linux Environment ActiveGate
Confidential 11
0
Create an HTTP Monitor
• The request is executed with a set of
parameters:
• HTTP headers
• HTTP method
• User agent
• Also available are:
• Response validation
• Basic authentication
• Monitoring of POST data
• Redirect follows
• SSL certificate acceptance
• Assignment to specific applications
Confidential 11
1
Additional configurations
• Performance threshold that will be
displayed along with response time
analysis
• Max response size configuration
available
• Frequency and internal locations
selector
Confidential 11
2
Confidential 11
3
Questions?
Confidential 11
4
dynatrace.com
Confidential 11
5