El fragmento de JavaScript de introduce un impacto casi invisible en el rendimiento del sitio web y en la percepción del usuario sobre el tiempo que tarda una página en cargarse. El JavaScript está incluido en un paquete de datos de una página web que se envía de todos modos. Además, inmediatamente comienza a monitorear errores y eventos mientras se ejecuta el resto de la página web. La insignificante cantidad de gastos generales necesarios para cargar JavaScript da como resultado un retorno significativo de datos accionables.
Impacto general
La sobrecarga de JavaScript tiene en cuenta tanto el impacto en el usuario como el impacto en el rendimiento de sus sistemas:
User perception:
Normalmente, el usuario no puede detectar degradaciones de rendimiento en un sitio web de menos de 200 ms. El JavaScript del browser agrega menos de 15 ms en tiempo agregado por carga de página. Esto se divide a lo largo del tiempo, por lo que en ningún momento un usuario podrá percibir ningún impacto en el rendimiento debido a JavaScript.
Webserver and systems:
El monitoreo de la aplicación browser ocurre en el browser del usuario, no en el servidor. El tiempo de procesamiento no tiene un impacto en el consumo de CPU.
Además, tomamos medidas adicionales para minimizar cualquier impacto potencial en las aplicaciones y páginas web que se monitorean. Por ejemplo, el script "cargador" se carga sincrónicamente en <HEAD>
para garantizar que el monitoreo esté habilitado durante todo el ciclo de vida de la página. Este script se incluye en línea, lo que elimina la necesidad de realizar otra solicitud de red de ida y vuelta a una red de entrega de contenido (CDN). El "cargador" viene con la carga inicial de la página.
Más adelante en el ciclo de vida de la página, New Relic carga un script de monitoreo adicional de forma asíncrona. Estos scripts no deberían tener ningún efecto perceptible para el usuario y están incluidos en la sobrecarga general de menos de 15 ms por página.
Impacto de la red
El monitoreo del navegador también minimiza el tráfico de red para el usuario final al agregar datos localmente (en el cliente) y enviarlos de regreso a New Relic a intervalos periódicos y en los eventos del ciclo de vida de la página load
, unload
, pageshow
y pagehide
. (Durante los períodos de inactividad de la sesión browser , es posible que no se requieran transmisiones).
script del agente del navegador
El agente consta de múltiples scripts para reducir el tamaño inicial del "cargador" y soportar la carga sólo del JavaScript necesario para soportar las características del agente que están habilitadas. El primer script, el "cargador", se inserta en línea en el documento HTML. El script restante se descarga de la red de entrega de contenido (js-agente.newrelic.com) cuando ocurre el evento del ciclo de vida de la página load
. La cantidad de scripts cargados depende del tipo de agente que se esté utilizando. Obtenga más información sobre los tipos de agente del navegador aquí.
script | Lite | Pro | Profesional + SPA |
---|---|---|---|
Tamaño del script en línea | 10,2 kB | 15,5 kB | 17,5 kB |
Tamaño del script descargado | 15,3 kB | 21KB | 25,4 kB |
Los tamaños se basan en secuencias de comandos minimizadas mediante compresión gzip.
Cosechas agente del navegador
Tipo de datos | Lite | Pro | Profesional + SPA | Frecuencia de cosecha |
---|---|---|---|---|
Evento de visualización de página | Sí | Sí | Sí |
|
Evento PageViewTiming | Sí | Sí | Sí |
|
JavaScriptError métrica | No | Sí | Sí |
|
Ajax métrica | No | Sí | Sí | Enviado junto con JavaScriptError métrica como datos de intervalo de tiempo. |
Evento AjaxRequest | No | Sí | Sí |
|
Rastreo de sesión | No | Sí | Sí | Los datos del rastreo de sesión se recopilan después del evento del ciclo de vida de la página |
Session Replay | No | Sí | Sí | Los eventos Session Replay se recopilan cuando ocurre una de las siguientes situaciones:
|
Evento de acción de página | No | Sí | Sí |
|
Evento de interacción del navegador | No | No | Sí |
|