重要
この API は、どのブラウザー エディション (Browser Lite、Pro、または Pro+SPA) でも機能します。
構文
newrelic.setCustomAttribute(name: string, value: string|number|null[, persist: boolean])
ユーザー定義の属性名と値を、ページ上の後続のイベントに追加します。
要件
エージェントバージョンnr-593以降。
persist
パラメータまたは null
値のサポートには、エージェント バージョン 1.230.0 以降が必要です。
説明
属性が PageView
イベントに含まれるようにするには、ウィンドウ ロード イベントが発生する前 (そのデータが送信されるとき) にこの呼び出しを行います。属性が設定されると、New Relic プラットフォームは、ページがリロードされるか属性が手動で設定解除されるまで、すべてのイベントとともにそれを記録します。
互換性のあるエージェント バージョンで SPA 監視を 使用している場合、この呼び出しで設定された属性も newrelic.interaction
イベントに含まれます。ただし、SPA API を使用して設定された属性は、これらの属性よりも優先されます。
カスタム属性のエラーは、 JSエラーページのイベントに含まれます。 APIを介してカスタム属性のエラーを表示またはログに記録するには、ブラウザAPIのnoticeError
呼び出しを使用します。
persist
フラグを使用すると、属性をブラウザに保存することもできます。これにより、 セッション スパン内の 同じ オリジンの後続のページ アクセスがイベントで保持されます。この機能は、エンドユーザーのブラウザーのプライバシー設定によって変動する可能性があることに注意してください。この関数が value = null
で呼び出された場合、 persist
フラグに 関係なく 、現在のページのイベントとストレージの 両方 から属性が削除されます。
重要
永続化された属性は、同じ名前の info.jsAttributes
キーよりも優先されることに注意してください!たとえば、 somedomain.com/pageA
に設定された永続属性 someName
、 somedomain.com/pageB
の情報ブロックに静的に設定された someName
をオーバーライドします。これらは同じ (セッション) ストレージを共有すると仮定します。
パラメーター
パラメータ | 説明 |
---|---|
ストリング | 必須。属性の名前。 予約済みのNRQLワード を属性/値の名前をつけるときに使わないようにしましょう。 |
文字列 OR 整数 OR null | 必須。属性の値。
予約済みのNRQLワード を属性/値の名前をつけるときに使わないようにしましょう。 |
ブール値 | オプション。 デフォルトは |
例
HTML要素のJavaScript/jQueryの取得
この例では、JavaScript/jQueryを使用して、Drupalで生成されたページの以下のHTML要素の値を取得します。
<link rel="shortlink" href="/node/1111" />
<h1>Using NRQL</h1>
New Relic はそれらをカスタム属性として報告します。これは、 PageView
およびPageAction
イベントのクエリに役立ちます。
var node_id = jQuery("link[rel='shortlink']").attr("href");var node_title = jQuery('h1').text();
if (typeof newrelic == 'object') { newrelic.setCustomAttribute('nodeId', node_id); newrelic.setCustomAttribute('title', node_title);}