Sintaxis
newrelic.interaction([JSON object $options])
Devuelve un nuevo objeto de controlador que está vinculado a la interacción SPA actual, o una nueva interacción si no existe ninguna.
Requisitos
Browser Pro+SPA agente (v963 o superior)
El parámetro
$options
requiere v1.285.0+Si está utilizando npm para instalar el agente del navegador, debe habilitar la característica
spa
al crear una instancia de la claseBrowserAgent
. En la matrizfeatures
, agregue lo siguiente:import { Spa } from '@newrelic/browser-agent/features/spa';const options = {info: { ... },loader_config: { ... },init: { ... },features: [Spa]}Para obtener más información, consulte la documentación de instalación del navegador npm.
Descripción
La llamada de monitoreo SPA interaction()
devuelve un nuevo identificador vinculado a la interacción actual.
New interaction: Si se llama a esta función y no hay ninguna interacción abierta o en curso, se crea una nueva interacción personalizada.
- Una interacción personalizada seguirá la heurística predeterminada y se cerrará automáticamente en la próxima navegación suave completa, a menos que se especifique
waitForEnd
.
- Una interacción personalizada seguirá la heurística predeterminada y se cerrará automáticamente en la próxima navegación suave completa, a menos que se especifique
New object: Si se llama a esta función mientras hay una interacción en curso, se crea un nuevo identificador que hace referencia a la interacción actual.
- Es posible que varios identificadores apunten a la misma interacción. Cada llamada
.interaction
crea un nuevo identificador. - El identificador apuntará a la interacción abierta, ya sea que comenzó desde un evento de usuario como un
click
o desde una llamada.interaction
activada por API anterior. - Esta función no puede reemplazar su propio efecto ni el de un evento de usuario. Es decir, no puede sobreescribir ninguna interacción abierta existente con una nueva interacción impulsada por API.
- Es posible que varios identificadores apunten a la misma interacción. Cada llamada
Parámetros
Parámetro | Descripción |
---|---|
Objeto JSON | Opcional: especifica opciones que afectan el comportamiento de la interacción.
|
Valores de retorno
Este método devuelve un objeto JS nativo que apunta a un posible eventoBrowserInteraction
. Cada vez que se llama a este método para el mismo BrowserInteraction
mientras aún no finalizó, se crea un nuevo objeto, pero aún hace referencia a la misma interacción.
Ejemplos
Los métodos de API de SPA deben emplear en newrelic.interaction()
. Puede asignar el valor o identificador devuelto a otra variable para su uso posterior. Por ejemplo:
let myInteraction = newrelic.interaction();...myInteraction.save();
Si bien el identificador nombrado se puede almacenar y usar desde fuera de una interacción, tenga en cuenta que los métodos SPA no tendrán efecto una vez finalizada la interacción.
La duración de la interacción también se puede personalizar mediante el siguiente método:
// Say an interaction is already open from a user click.const userInteraction = newrelic.interaction({ waitForEnd: true }); // grabs the current interaction in-progress & keep it open// URL changes & DOM is modified. Because of those condition being met, interaction will be saved but is kept open.fetch('myurl.com/endpoint').then(() => userInteraction.end()) // associate this request to the interaction before completing this BrowserInteraction
const myCustomIxn = newrelic.interaction({ waitForEnd: true }) // create a new api-triggered interaction// This interaction will be kept open indefinitely until `.end` is called, and no new interaction will start, custom or otherwise. AjaxRequest will continue to buffer under this interaction until it is closed.