• ログイン無料アカウント

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

addPageAction(ブラウザエージェントAPI)

構文

newrelic.addPageAction(string $name[, JSON object $attributes])

ブラウザのPageActionイベントを、名前やオプションの属性とともにNew Relic Oneに報告します。

要件

エージェントのバージョン nr-593 以上。

説明

このAPIコールは、ブラウザ PageAction イベント を、ユーザー定義の名前とオプションの属性を付けて、 ダッシュボード に、 いくつかのデフォルト属性 と共に送信します。これは、 Subscribe ボタンのクリックやチュートリアルへのアクセスなど、ブラウザエージェントによって自動的に追跡されていないイベントを追跡するのに便利です。

  • PageActionイベントは、30秒ごとにNew Relic Oneに送信され、30秒の収穫サイクルあたり、ブラウザごとに最大120イベントが送信されます。
  • 120イベントの制限に達した後は、そのハーベストサイクルでは追加のイベントは捕捉されません。

パラメータ

パラメーター

説明

$name

文字列

必須項目です。アクションの名前またはカテゴリー。New Relic One には、 actionName 属性として報告されます。

予約したNRQLの単語 を属性や値の名前に使うのは避けましょう。

$attributes

JSONオブジェクト

オプションです。1つまたは複数のキー/値のペアを持つJSONオブジェクト。例: {key:"value"}。 。このキーは、指定された値を持つ独自の PageAction 属性として New Relic One に報告されます。

予約済みのNRQLワード を属性/値の名前をつけるときに使わないようにしましょう。

この例では、ユーザーが Try Me のリンクを選択すると、PageAction イベントを記録します。このイベントは、 actionNameclickedTryMe で記録されます。

< a href="/demo" id="try-me" >Try Me!< /a>
<script>
document.getElementById('try-me').addEventListener('click',function (e) {
newrelic.addPageAction('clickedTryMe');
})
</script>

そして、次のNRQLクエリで、 Try Me ボタンがクリックされた回数を照会することができます。

SELECT count(*) FROM PageAction WHERE actionName='clickedTryMe' SINCE 1 hour ago

この例では、ユーザーがクラス copy-text の要素をクリックしたときに、PageAction イベントを送信しています。 actionNamecopy-text-button で、その値は Result という別の属性として報告され、その結果を処理する successerror というメソッドに対応しています。

$('.copy-text').click(function (){
var clipboard = new Clipboard ('.copy-text');
clipboard.on('success', function(event) {
// Do stuff
// Report data to New Relic One
if (typeof newrelic == 'object') {
newrelic.addPageAction('copy-text-button', {result: 'success'});
}
});
clipboard.on('error', function(event) {
// Do stuff
// Report data to New Relic One
if (typeof newrelic == 'object') {
newrelic.addPageAction('copy-text-button', {result: 'error'});
}
});
});

そして、クエリビルダで円グラフを作成し、過去30日間のボタンクリックの成功数とエラー数の内訳を確認することができます。

SELECT count(*) AS 'Clicks' FROM PageAction WHERE actionName = 'copy-text-button' FACET result SINCE 30 days ago

あるいは、過去30日間にどのページでコピーボタンのクリック数が多かったかを確認するためのクエリを作成することもできます。

SELECT count(*) AS 'Clicks' FROM PageAction WHERE actionName = 'copy-text-button' FACET currentUrl SINCE 30 days ago

フォーム入力のキャプチャ

この例では、 Signup というフォームからユーザーの入力(メールアドレス)をキャプチャしています。このイベントは、 actionNameuserSignup で記録されます。

<form action="/signup" id="myform">
<input id="email" name="email">
<input type="submit" value="Signup">
</form>
<script type="text/javascript">
document.getElementById('myform').addEventListener('submit', function (e) {
var email = e.target.elements['email'].value;
newrelic.addPageAction('userSignup', {email: email});
})
</script>

そして、以下のNRQLクエリで集めたメールを見ることができます。

SELECT uniques(email) FROM PageAction WHERE actionName='userSignup' SINCE 1 hour ago
Copyright © 2022 New Relic Inc.