構文
newrelic.interaction().onEnd(function $callback)
インタラクションを保存する前に、SPA インタラクションに関連付けられた値を変更します。
要件
ブラウザ Pro+SPA エージェント (v963 以降)
npm を使用してブラウザ エージェントをインストールしている場合は、
BrowserAgent
クラスをインスタンス化するときにspa
機能を有効にする必要があります。features
配列に以下を追加します。import { Spa } from '@newrelic/browser-agent/features/spa';const options = {info: { ... },loader_config: { ... },init: { ... },features: [Spa]}詳細については、 npm ブラウザのインストールに関するドキュメントを参照してください。
説明
この呼び出しは、 getContext()
と同じオブジェクトを提供します。これが呼び出されると、インタラクションを記録する前に最終的な調整を行うことができます。たとえば、コンテキスト値に基づいて追加の属性を追加できます。
他にも、相互作用を修正する方法があります。
パラメーター
パラメータ | 説明 |
---|---|
機能 | 必要です。この関数は、インタラクションの終了時に呼び出されます。この関数は、1つのパラメータ(インタラクションコンテキスト)を指定して呼び出されます。 |
戻り値
このメソッドは、 interaction()
によって作成されたものと同じAPIオブジェクトを返します。
例
// router.jsrouter.addRoute('/dashboard', () => { const interaction = newrelic.interaction().onEnd(ctx => { interaction.setAttribute( 'averageChartLoadTime', ctx.totalChartLoadTime / ctx.chartLoadCount ); }); getCharts().forEach(loadChart);});
// chart-loader.jsfunction loadChart(chart) { const start = Date.now(); chart.load().then(() => { const loadTime = Date.now() - start; interaction.getContext(ctx => { ctx.totalChartLoadTime = (ctx.totalChartLoadTime || 0) + loadTime; ctx.chartLoadCount += (ctx.chartLoadCount || 0) + 1; }); })}