• EnglishEspañol日本語한국어Português
  • Inicia sesiónComenzar ahora

Te ofrecemos esta traducción automática para facilitar la lectura.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Crea una propuesta

Instrumentado múltiples aplicaciones con npm y NerdGraph

Puede utilizar nuestra API NerdGraph para crear una nueva aplicación browser y recuperar los valores de configuración. Esto se puede combinar con el paquete npm agente del navegador para incorporar la configuración del agente del navegador como parte del proceso de creación de su aplicación o separar la configuración del agente de la implementación del agente dentro de su aplicación.

Si nunca ha utilizado NerdGraph para crear o configurar una aplicación de navegador, primero lea este tutorial de NerdGraph.

Configurar el agente

Abra su IDE y una terminal en la raíz de su proyecto o donde se administran sus dependencias frontend. Esta es la ubicación donde ejecutará npm install --save @newrelic/browser-agent para instalar el paquete npm. Una vez instalado, localice el archivo de punto de entrada principal de su sitio web. Puede ser <project_root>/src/index.js o <project_root>/src/index.ts , pero podría ser diferente en su aplicación. Si tiene varios puntos de entrada, seleccione el que se carga más rápido en el browser y, preferiblemente, no utiliza el atributo del elemento script async o defer.

Una vez que haya localizado dónde desea agregar el agente del navegador, agregue este fragmento de código en ese archivo.

import { BrowserAgent } from '@newrelic/browser-agent/loaders/browser-agent'
// Remaining import statements
// Populate using values from NerdGraph
const options = {
init: { ... },
info: { ... },
loader_config: { ...}
}
// The agent loader code executes immediately on instantiation.
new BrowserAgent(options)
// Remaining code

La declaración import para el agente del navegador debe ser lo primero en su archivo fuente. Después de las declaraciones import restantes, inmediatamente cree una instancia y configure el agente del navegador. Asegúrese de hacer esto antes de cualquier otro código para que el agente del navegador tenga la oportunidad de cargar y capturar datos lo antes posible.

Recuperar la configuración

El objeto options en el fragmento anterior debe completarse con información de configuración sobre la aplicación del browser de New Relic. Para los propósitos de este tutorial, usaremos la UI de New Relic con una aplicación browser existente y NerdGraph Explorer para completar la API de llamada.

Obtener el GUID de la entidad de la aplicación browser

Para utilizar la API NerdGraph, necesitará obtener el GUID de entidad para la aplicación browser que está instrumentando.

Recuperar la configuración de la aplicación browser

Abra NerdGraph Explorer en api.newrelic.com/graphiql y utilice la siguiente consulta para recuperar los valores de configuración de la aplicación del browser . Si su cuenta New Relic utiliza un centro de datos de la UE, vaya a api.eu.newrelic.com/graphiql.

query {
actor {
entity(guid: '<guid>') {
... on BrowserApplicationEntity {
guid
name
browserProperties {
jsConfigScript
}
}
}
}
}

Reemplace la parte <guid> de la consulta con el GUID de entidad que recuperó anteriormente. Ejecute la consulta y debería recibir un resultado como el que se muestra aquí:

{
"data": {
"actor": {
"entity": {
"browserProperties": {
"jsConfig": {
"info": {
"applicationID": 1234567,
"beacon": "bam.nr-data.net",
"errorBeacon": "bam.nr-data.net",
"licenseKey": 123456789,
"sa": 1
},
"init": {
"ajax": {
"deny_list": [
"bam-cell.nr-data.net"
]
},
"distributed_tracing": {
"allowed_origins": [],
"cors_enabled": false,
"cors_use_newrelic_header": false,
"cors_use_tracecontext_headers": false,
"enabled": true,
"exclude_newrelic_header": false
},
"privacy": {
"cookies_enabled": true
}
},
"loader_config": {
"accountID": <redacted>,
"agentID": <redacted>,
"applicationID": <redacted>,
"licenseKey": "<redacted>",
"trustKey": 1672072
}
}
}
}
}
}
}

Sugerencia

¿Necesita más información sobre el uso de NerdGraph? Consulte Introducción a NerdGraph.

Instalar la configuración

Copie el contenido de la propiedad jsConfig y reemplace el contenido del objeto options en su archivo fuente.

Desplegar usando el paquete npm

Con el paquete npm instalado y configurado correctamente, ahora puede crear y desplegar su aplicación browser . Cargue su sitio web en un browser y verifique que se realicen llamadas de red al URI beacon desde la configuración.

Inyectar la configuración de la aplicación browser en HTML

Como alternativa a colocar la configuración de la aplicación browser en su código fuente, es posible que desee inyectar la configuración en el HTML de su sitio web. Esto es especialmente útil cuando su código fuente se reutiliza en varios sitios web.

Modificar fragmento de código fuente

Modifique el primer fragmento de su código fuente a import y cree una instancia de la clase BrowserAgent sin parámetro.

import { BrowserAgent } from '@newrelic/browser-agent/loaders/browser-agent'
// Remaining import statements
// The agent loader code executes immediately on instantiation.
new BrowserAgent()
// Remaining code

Modificar consulta NerdGraph

Modifique la consulta NerdGraph para recuperar la configuración de la aplicación browser como una cadena de script codificada en JSON. Ejecute la nueva consulta y recuerde reemplazar <guid> con el GUID de la entidad de la aplicación browser recuperado anteriormente.

query {
actor {
entity(guid: '<guid>') {
... on BrowserApplicationEntity {
guid
name
browserProperties {
jsConfigScript
}
}
}
}
}

Esto devolverá un resultado como:

{
"data": {
"actor": {
"entity": {
"browserProperties": {
"jsConfigScript": "<script type=\"text/javascript\">\n;window.NREUM||(NREUM={});NREUM.init={distributed_tracing:{enabled:true},privacy:{cookies_enabled:true},ajax:{deny_list:[\"bam-cell.nr-data.net\"]}};\n\n;NREUM.loader_config={accountID:\"<redacted>\",trustKey:\"<redacted>\",agentID:\"<redacted>\",licenseKey:\"<redacted>\",applicationID:\"<redacted>\"};\n;NREUM.info={beacon:\"bam.nr-data.net\",errorBeacon:\"bam.nr-data.net\",licenseKey:\"<redacted>\",applicationID:\"<redacted>\",sa:1};\n</script>\n"
}
}
}
}
}

Instalar la configuración

Copie el contenido de la propiedad jsConfigScript . Deberá ejecutar los resultados a través de un analizador JSON o reemplazar los valores de \" con ". El resultado será una cadena que contiene un elemento <script> con toda la información de configuración de la aplicación browser . Coloque el elemento <script> en la parte superior del elemento <head> , pero debajo de los elementos <meta> , del HTML de su sitio web.

Próximos pasos

Este tutorial solo muestra la superficie de cómo puede usar nuestra API NerdGraph y el paquete npm del agente del navegador. Algunas ideas para los próximos pasos:

  • Integre el agente del navegador en su aplicación de creación de sitios web y use NerdGraph para recuperar la configuración de la aplicación browser para cada uno de sus clientes cuando habiliten el monitoreo de New Relic dentro de su dashboard de administración.
  • Cree un componente de agente del navegador compartido en la biblioteca de componentes de su organización e inyecta automáticamente la configuración en el HTML utilizando una función de borde CDN que llama a NerdGraph.
  • Modifique su canal de CI/CD para completar el código fuente con una configuración de aplicación browser diferente de NerdGraph según el entorno en el que se esté implementando.
Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.