dynatrace-apac.github.io

id: dem summary: Automatic Real User monitoring with Dynatrace categories: dem, digital-experience tags: dem, Beginner status: Published authors: Brandon Neo Feedback Link: mailto:APAC-SE-Central@dynatrace.com Analytics Account: UA-175467274-1

Digital Experience Management with Dynatrace

Introduction

Duration: 1

This repository contains the hands on for the Dynatrace Digital Experience Management (DEM) Workshop.

Prerequisites

Lab Setup

The following steps are used for this lab:

Negative
For Self-paced training, follow the Prerequisite Actions to create Easytravel application that will be used throughout this workshop. Note that you’ll need access to Dynatrace and AWS.

What You’ll Learn

Basic Setup

Duration: 15

In this exercise, we will deploy the OneAgent to a Linux instance and let the OneAgent discover what is running in that instance.

Using Terminal via Web Browser

To faciliate the labs, we will access the Linux instance via terminal through a web browser.

Use the URL was provided in your email to access the SSH terminal. Make sure the URL looks like Public IP Address/wetty

Use the login name and password as provided in your email.

Deploy

Download the OneAgent

Open your browser and access the Dynatrace URL.

Follow these steps below:

Deploy

Within the Dynatrace OneAgent for Linux page, follow these steps below:

Deploy

Example:

$  wget  -O Dynatrace-OneAgent-Linux-1.171.252.sh <follow screen shot above>
--2019-08-07 10:17:45--  https://<URL>
Resolving <URL>... <IP>
Connecting to <URL> | <IP>|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 139134801 (133M) [application/octet-stream]
Saving to: ‘Dynatrace-OneAgent-Linux-1.171.252.sh’

100%[======================================>] 139,134,801 84.3MB/s   in 1.6s

2019-08-07 10:17:47 (84.3 MB/s) - ‘Dynatrace-OneAgent-Linux-1.171.252.sh’ saved [139134801/139134801]

Execute the installation script

Negative
Verify signature (step 2) is an optional step. To run that, make sure your system is up to date, especially SSL and related certificate libraries.

Deploy

Example:

$ sudo /bin/sh Dynatrace-OneAgent-Linux-1.171.252.sh
10:21:42 Checking root privileges...
10:21:42 OK
10:21:42 Installation started ...
...
10:22:14 Starting agents...
10:22:14 oneagent service started
10:22:14 Checking if agent is connected to the server...
10:22:16 Dynatrace OneAgent has successfully connected to Dynatrace Cluster Node. After completing Dynatrace OneAgent installation on this machine, please return to your browser to complete the remainder of the installation.
$

Validate the installation in Deployment status

Click on Show deployment status to check the status of the connected host.

Deploy

You should be able to see a connected host as per the image below.

Deploy

Positive
Dynatrace Documentation is referenced here

Restart Easytravel application

To restart Easy Travel execute the following command:

/restart_easyTravel.sh

$ ./restart_easyTravel.sh
Restarting easyTravel ....
Stopping easyTravel ....
OKeasyTravel scenario stopped
Please wait...
Starting easyTravel ....
OKeasyTravel scenario started
Done.

Explore the Easytravel Application

Within Dynatrace, follow the steps below to get Easytravel URL:

Deploy

Explore the Smartscape

While waiting for Easy Travel to start, you can explore Dynatrace and using the Smartscape, Dynatrace will automatically discover the processes and dependencies that comprises the Easy Travel application!

4 things that you will love about Dynatrace!

Smartscape

Configure Real User Monitoring

Duration: 15

In this lab, we will cover the basics of configuring Real User Monitoring. These are some of the best practices that should be followed every time the Dynatrace JavaScript agent is deployed, be it an automated or manual injection.

Positive
Dynatrace Documentation is referenced here

What You’ll Learn

Other DEM Setup

Some of the above have been automated via API and configured into your environments.

Task 1: Defining an application

Follow the steps below to define your application:

Define App

Now that the internal domain is mapped, do the same for the external domain.

Define App

To rename the newly created application:

Naming App

Positive
Dynatrace Documentation is referenced here

Task 2: Selecting the appropriate JavaScript frameworks

To select Javascript frameworks:

Enable-framework

Positive
Dynatrace Documentation is referenced here

Task 3. Tagging a user session

Next, we will be tagging users based on page metadata. This approach to user tagging works by capturing available data in your application’s page source. Usernames may be included in the text of a DOM element, a meta tag, a JavaScript variable, or even a cookie attribute. For example, easyTravel, the Dynatrace demo application, includes the user name in a welcome message in the upper-right corner of the home page (see image below). Using the development tools that are built into most browsers, you can generate a unique CSS selector for this particular element.

User tagging based on page metadata

Once you’ve identified where usernames are located in your page source, you can create user tags based on the usernames. To do this, return to Dynatrace and execute the following steps:

Enable-framework

Positive
Dynatrace Documentation is referenced here

Configure Synthetic Test

Duration: 15

In this exercise, we will cover creating a single URL synthetic test in Dynatrace. Dynatrace offers three types of synthetic monitoring:

Positive
Dynatrace Documentation is referenced here

1. Use One-click creation of browser monitors for Easytravel

That’s it! You have created 3 browser clickpaths Synthetic monitors

OneClick-Synthetic

2. Create a browser clickpath synthetic monitor for Easytravel

Following the instructions below:

OneClick-Synthetic

Negative
First-time users are asked to install the Chrome plugin. Click Install Dynatrace Synthetic Recorder at the bottom of the page.
Positive
Dynatrace Documentation is referenced here

3. HTTP Monitor

Following the instructions below:

OneClick-Synthetic

Positive
Dynatrace Documentation is referenced here

Configure Session Replay

Duration: 15

In this exercise, we will cover configuring Session Replay in Dynatrace.

Enable Session Replay

Follow the steps below to enable session Replay:

Enable-Session-Replay

Positive
Dynatrace Documentation is referenced here

Simulate load for capturing Session Replay

Positive
With Session Replay enabled, revert to your Easytravel app on your web browser and simulate load. You can follow the same user journey as the Synthetic clickpath.

Verify Session Replay

After a couple minutes, you can find your session under User Sessions on Dynatrace’s left navigation bar.

SR

SR

SR

Additional configuration for for personal data protection

SR

Positive
Dynatrace Documentation is referenced here

Introduction to USQL

Duration: 15

Dynatrace captures detailed user session data each time a user interacts with your monitored application. This data includes all user actions and high level performance data. Using either the Dynatrace API or Dynatrace User Sessions Query Language (USQL), you can easily run powerful queries, segmentations, and aggregations on this captured data. User Sessions Query Language is a Dynatrace-specific query language, though it does rely on some SQL concepts and the syntax is similar, which makes it easy to get started.

A typical use case for using USQL is to build dashboards to visualize business metrics.

USQL

Positive
Dynatrace Documentation is referenced here

1. Exploring USQL

Follow the steps below:

USQL

Sample queries

Create a funnel for user journey

SELECT FUNNEL(useraction.name="loading of page /special-offers.jsp" AS "Special Offers landing page", useraction.name = "loading of page /orange-booking-review.jsf" AS "Review package", useraction.name = "loading of page /orange-booking-payment.jsf" AS "Payment") FROM usersession

Understand page performance from a specific location

SELECT DATETIME(starttime, 'MM/dd/yyyy hh:mm', '30m'),AVG(useraction.visuallyCompleteTime)
FROM usersession
WHERE country IS "United States" GROUP BY DATETIME(starttime, 'MM/dd/yyyy hh:mm', '30m')

Understand which users are experiecing errors

SELECT userId, SUM(totalErrorCount) FROM usersession
WHERE totalErrorCount IS NOT NULL
GROUP BY userId ORDER BY SUM(totalErrorCount) DESC

Gather statistics/analaysis

SELECT COUNT(*) FROM usersession WHERE useraction.name = "loading of page /orange.jsf"

Feedback

Duration: 3

We hope you enjoyed this lab and found it useful. We would love your feedback!

How was your overall experience with this lab?
What did you benefit most from this lab?
How likely are you to recommend this lab to a friend or colleague?
Positive
💡 For other ideas and suggestions, please reach out via email.