このリポジトリには、Dynatrace Digital Experience Management (DEM)ワークショップのハンズオンが含まれています。
このラボでは、以下のサンプルアプリケーションを使用します。
この演習では、OneAgentをLinuxインスタンスにデプロイし、OneAgentにそのインスタンスで実行されているものを検出させます。
実験を円滑に進めるために、LinuxインスタンスにWebブラウザを介したターミナルでアクセスします。
メールに記載されているURLを使って、SSHターミナルにアクセスします。URLが Public IP Address/wetty
のようになっていることを確認してください。
メールに記載されているログイン名とパスワードを使用してください。
ブラウザを開き、DynatraceのURLにアクセスします。
以下の手順に従ってください。
Dynatrace OneAgent for Linuxのページ内で、以下の手順を行います。
例:
$ 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]
sudo
command to make the script executable before you can run it.sudo
コマンドを付加して、スクリプトを実行可能な状態にしてから実行してください。$ 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.
$
Show deployment status**をクリックすると、接続されているホストの状態が確認できます。
下の画像のように、接続されたホストが表示されているはずです。
Easy Travelを再起動するには、以下のコマンドを実行してください。
/restart_easyTravel.sh
$ ./restart_easyTravel.sh
Restarting easyTravel ....
Stopping easyTravel ....
OKeasyTravel scenario stopped
Please wait...
Starting easyTravel ....
OKeasyTravel scenario started
Done.
Dynatrace内で、以下の手順でEasytravelのURLを取得します。
:8080
を 追加 します。Easy Travelが起動するのを待っている間、Dynatraceを探索し、Smartscapeを使って、DynatraceがEasy Travelアプリケーションを構成するプロセスと依存関係を自動的に発見することができます。
4 things Dynatraceの魅力をご紹介します。
このラボでは、Real User Monitoring の設定の基本を説明します。これらは、自動注入であれ手動注入であれ、DynatraceのJavaScriptエージェントが展開されるたびに従うべきベストプラクティスの一部です。
上記のいくつかは、APIを介して自動化され、お客様の環境に設定されています。
以下の手順でアプリケーションを定義します。
これで内部ドメインのマッピングが完了したので、外部ドメインについても同様の作業を行います。
新しく作成したアプリケーションの名前を変更するには
Javascriptのフレームワークを選択するには
次は、ページのメタデータに基づいてユーザーをタグ付けする方法です。このユーザータグ付けのアプローチは、アプリケーションのページソースで利用可能なデータを取り込むことで機能します。ユーザー名は、DOM要素のテキスト、metaタグ、JavaScript変数、あるいはcookie属性に含まれているかもしれません。例えば、DynatraceのデモアプリケーションであるeasyTravelでは、ホームページの右上にあるウェルカムメッセージにユーザー名が含まれています(下の画像参照)。ほとんどのブラウザに搭載されている開発ツールを使って、この特定の要素のために固有のCSSセレクタを生成することができます。
ページソースのどこにユーザー名があるかを確認したら、そのユーザー名に基づいてユーザータグを作成することができます。これを行うには、Dynatraceに戻り、以下の手順を実行します。
#loginForm\:j_idt39
。Hello ([^!]*+)
を使用します。この演習では、Dynatraceで単一のURLの合成テストを作成することを取り上げます。 Dynatraceには、3種類の合成モニタリングがあります。
これで3つのブラウザクリックパス合成モニターを作成しました。
以下の手順に従ってください。
以下の手順に従ってください。
この演習では、Dynatraceのセッションリプレイの設定を取り上げます。
以下の手順でセッションリプレイを有効にしてください。
数分後、Dynatraceの左ナビゲーションバーにあるUser Sessionsの下で、自分のセッションを見つけることができます。
Dynatraceは、ユーザーが監視対象のアプリケーションにアクセスするたびに、詳細なユーザーセッションデータを取得します。このデータには、すべてのユーザーアクションとハイレベルなパフォーマンスデータが含まれます。Dynatrace APIまたはDynatrace User Sessions Query Language (USQL)を使用すると、キャプチャしたデータに対して強力なクエリ、セグメンテーション、アグリゲーションを簡単に実行できます。 User Sessions Query LanguageはDynatrace専用のクエリ言語ですが、いくつかのSQLの概念に基づいており、構文も似ているため、簡単に使い始めることができます。
USQLを使用する典型的なユースケースは、ビジネス指標を視覚化するダッシュボードを構築することです。
以下の手順でご確認ください。
サンプルクエリ
ユーザージャーニーのためのファネルの作成
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
特定の場所からのページパフォーマンスの把握
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')
どのユーザーにエラーが発生しているかを把握する
SELECT userId, SUM(totalErrorCount) FROM usersession
WHERE totalErrorCount IS NOT NULL
GROUP BY userId ORDER BY SUM(totalErrorCount) DESC
統計・分析の収集
SELECT COUNT(*) FROM usersession WHERE useraction.name = "loading of page /orange.jsf"
このラボを楽しんでいただき、お役に立てれば幸いです。ご意見、ご感想をお待ちしております。