モニターする必要がないページから(XMLHttpRequest または Fetch API を使用した)多数の XHR コールがある場合は、エージェントが指定されたコールの正規表現リストのみをモニターするように、XHR フィルタを使用できます。
XHR コールがモニターされると、XHR コールの絶対パスが JavaScript エージェントに提供されます。コントローラ UI では、これらのモニター対象の XHR コールは、命名規則によって構成されたとおりに表示されます。命名規則がない場合は、XHR コールの絶対パスが表示されます。
XHR フィルタ
次の XHR フィルタを使用して、XHR コールを含めるか、または除外できます。フィルタは、XHR フィルタオブジェクトまたは XHR フィルタオブジェクトの配列の形式で指定できます。
フィルタオブジェクトの構造
XHR フィルタオブジェクトには、2 つのプロパティ urls
と method
があります。urls
プロパティは、URL を照合する正規表現を指定する pattern
プロパティを含むオブジェクトの配列です。method
プロパティは、HTTP メソッドを指定する文字列です。プロパティのいずれかまたは両方を使用できます。urls
配列のみを使用する場合は、一致した URL がすべての HTTP メソッドについて包含されるか、除外されます。method
のみを指定すると、指定した HTTP メソッドを使用するすべてのコールが包含されるか、除外されます。
次に、フィルタオブジェクトの一般的な構造を示します。
{
urls:
[
{
pattern: ".*foo.*"
},
{
pattern: ".*bar.*"
}
],
method: 'GET'
}
JS
XHR フィルタの例
XHR フィルタを使用するには、adrum.js
スクリプトを挿入する前に、XHR フィルタを xhr.include
と xhr.exclude
に割り当てる必要があります。除外パターンは包含パターンをオーバーライドすることに注意してください。そのため、包含パターンと除外パターンの両方に一致する URL は、最終的に除外されます。
たとえば、次のコードスニペットでは、包含パターンは http://somedomain/app_status/user-profile.jsp
へのすべての HTTP リクエストと一致しますが、除外パターンはその URL への POST コールを除外します。
<head>
<script type="text/javascript" charset="UTF-8">
(function(config){
(function(xhr) {
xhr.include = {
urls: [
{
pattern: ".*ajax_info.txt"
},
{
pattern: ".*app_status.*"
}
]
};
xhr.exclude = {
urls = [
{
pattern: ".*user-profile.*"
}
],
method: "POST"
};
})(config.xhr || (config.xhr = {}));
})(window["adrum-config"] || (window["adrum-config"] = {}));
</script>
<script src="//cdn.appdynamics.com/adrum/adrum-latest.js" type="text/javascript" charset="UTF-8"/>
...
</head>
JS