Necesitas usar el rum agent que está asociado con la plataforma de observabilidad en la que vas a ingerir datos. Sin embargo, mantén los ojos abiertos en el grupo de instrumentación del cliente para open telemetry. Si quieres unirte al SIG, los detalles están allí en su sitio también. Y ese es realmente el grupo que está buscando tratar de tener un estándar más abierto que no esté tan bloqueado por el proveedor. Pero para el vamos a usar el de Elastic.
Así que hay dos maneras de instrumentarlos. Y esto tiende a ser patrones similares en diferentes agentes. Así que puedes usar una etiqueta de script. Generalmente, no recomiendo esto en una aplicación HTML o en una aplicación React que quizás sea antigua que ya no estás tocando y solo quieres incluir alguna telemetría básica. Así que simplemente incluyes la etiqueta de script. Pero generalmente, el patrón que recomendaría es que instales la extensión APM rum, lo siento, la extensión elastic APM rum usando MPM y luego uses los inits y agregues las opciones apropiadas.
Así que las cosas que necesitas decirle al agente que va a enviar que básicamente van a categorizar las señales que tu aplicación va a enviar es el nombre del servicio. Si estás trabajando en muchas aplicaciones diferentes, que ciertamente fue mi experiencia, necesitas saber a qué aplicación corresponden las señales. Y también, si es el front end de React, o esos servicios de back end, cuando llegamos al trazado de frente a atrás. Luego tienes orígenes de trazado distribuido, esto es necesario porque por defecto, el rum agent opera en la política de mismo origen. Así que necesitas asegurarte de que pueda agregar el encabezado de trace parent a esas solicitudes HTTP que van de regreso a los servicios de back end, para que puedas ver realmente la traza completa, que veremos más adelante. Luego tienes la URL del servidor, este es el despliegue L al que vas a enviar. Y luego tienes atributos opcionales de versión del servicio y entorno, que aunque no son necesarios, puedes usarlos para asegurarte de que tal vez quieras comparar errores, ver cuántas versiones del servicio retrocede para tratar de identificar la fuente del problema. O incluso si estás haciendo comparaciones ambientales, estos atributos pueden ser útiles para agregar.
Pero también necesitamos pensar en el elemento React porque diferentes frameworks SPA se comportan de manera diferente. Y a veces puede que necesitemos agregar integraciones de framework personalizadas particulares junto con, para asegurarnos de que obtenemos la telemetría apropiada para nuestra aplicación. Y en este ejemplo particular, usas la extensión APM run react, que es otra instalación de MPM. Y usas eso para acceder al componente de rutas APM que luego se envuelve junto con tu ruta react y tus rutas DOM. Esto es a partir de la versión seis. Así que si estás usando versiones anteriores, asegúrate de que estás usando el patrón correcto. Todo está cubierto en la documentación.
Ahora, solo una advertencia, necesitamos pensar en los tipos de agentes que estamos agregando a nuestras aplicaciones. Porque si no tenemos cuidado, y no estamos usando las optimizaciones apropiadas, van a inflar la construcción, no hay manera de evitarlo, no importa si estamos usando un rum agent, Google Analytics, Hotjar, o algo más, estas cosas realmente pueden aumentar el tamaño del bundle. Así que asegúrate de que también estás siguiendo las instrucciones apropiadas para el empaquetador que estás usando para asegurarte de optimizar la versión de producción también. Pero volviendo a lo que estas cosas nos dan, nos dan todo tipo de métricas diferentes que se capturan.
Comments