カスタム仮想ページ名の設定
Related pages:
このページでは、カスタム仮想ページ名を作成する方法について説明します。以下の API 呼び出しを使用して、URL の一部ではなく、任意の文字列を使用して仮想ページに名前を付けるように JavaScript エージェントを設定できます。
要件
- SPA2 モニタリングを有効にする必要があります。「SPA2 モニタリングの設定」を参照してください。SPA1 モニタリングを使用している場合、仮想ページの名前を設定するために呼び出されるメソッドは無視されます。
- 仮想ページ名は、760 文字以下の英数字で構成する必要があります。文字列の長さが 760 文字を超えると、ページ名は設定されません。
既存の仮想ページにカスタム名を設定する
既存の仮想ページにカスタム名を設定するには、API 呼び出し ADRUM.setVirtualPageName("myCustomVPName") を使用する必要があります。この API は、ブラウザ API の history.pushState / history.replaceState やハッシュ履歴の変更など JavaScript エージェントが追跡できる手段を使用して、仮想ページを作成した直後に呼び出す必要があります。
例:
head>
<script charset='UTF-8' type='text/javascript'>
window['adrum-start-time'] = new Date().getTime();
(function(config){
config.appKey = '<EUM_APP_KEY>';
...
})(window['adrum-config'] || (window['adrum-config'] = {}));
</script>
<script charset='UTF-8' src='//cdn.appdynamics.com/adrum/adrum-latest.js' type='text/javascript' ></script>
<script type='text/javascript' charset='UTF-8'>
...
<!--- Browser API call triggering VP detection -->
window.history.pushState({}, '', "#myUrlHere");
<!--- Marking the previous virtual page with a custom name -->
ADRUM.setVirtualPageName("myCustomVPName");
</script>
</head>
新しい仮想ページにカスタム名を設定する
新しい仮想ページにカスタム名を設定するには、setVirtualPageName メソッドを ADRUM.command とともに使用します。ADRUM オブジェクトは、JavaScript エージェント(adrum-latest.js)をロードした後にグローバルにアクセスできます。
例:
<head>
<script charset='UTF-8' type='text/javascript'>
window['adrum-start-time'] = new Date().getTime();
(function(config){
config.appKey = '<EUM_APP_KEY>';
...
})(window['adrum-config'] || (window['adrum-config'] = {}));
</script>
<script charset='UTF-8' src='//cdn.appdynamics.com/adrum/adrum-latest.js' type='text/javascript' ></script>
<script type='text/javascript' charset='UTF-8'>
...
ADRUM.command("setVirtualPageName", "myCustomVPName");
</script>
</head>
setVirtualPageName を使用して仮想ページに名前を付けると、カスタム名が markVirtualPageBegin を使用して手動でマークを付けた次の仮想ページに適用されます。そのため、現在モニターされている仮想ページでは、カスタム名は取得されません。
次のコード例は、仮想ページの開始と終了を手動でマークし、モニター対象の次の仮想ページに対して名前を付けるために setVirtualPageName を実行するメソッドを呼び出す方法を示しています。この JavaScript API を使用して仮想ページの開始と終了を手動でマークする方法については、「仮想ページのレポート」を参照してください。
.controller('VPNaming', ['$scope', '$http', function ($scope, $http) {
$scope.startVirtualPageWithCustomUrl = function () {
console.log("Marking the beginning of the virtual page and waiting for the end to be manually marked.");
ADRUM.markVirtualPageBegin("homepage", true);
}
$scope.startVirtualPageNotWaitingForMarkVirtualPageEnd = function () {
console.log("Marking the beginning of the virtual page and allowing the JS Agent to mark the end of the virtual page.");
ADRUM.markVirtualPageBegin("homepage", false);
}
$scope.endVirtualPage = function () {
console.log("Manually marking the end of the virtual page.");
ADRUM.markVirtualPageEnd();
}
$scope.setVirtualPageName = function () {
console.log("Setting a custom name for the next virtual page to be monitored: have it's beginning and end marked.");
ADRUM.command("setVirtualPageName", "myCustomVPName");
}
}
]
);