• 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

Instrumentación personalizada de Node.js

New Relic para Node.js instrumentó automáticamente la mayoría de las solicitudes web estándar, pero a veces desea una instrumentación ampliada. Con la API de instrumentación personalizada del agente, puede crear instrumentación para marcos web, almacenes de datos y clientes de servicios de mensajes que de otro modo no serían compatibles.

La API de instrumentación personalizada del agente Node.js también le permite:

Requisitos de la versión del agente

Los métodos de instrumentación personalizada en este documento están disponibles a partir de la versión 2.0.0 del agente Node.js. Para obtener información sobre la instrumentación utilizando la API de instrumentación personalizada v1.x, consulte la documentación para la instrumentación personalizada de Node.js heredada.

Marco web no compatible con instrumentos

A partir de la versión 2.0.0 del agente Node.js, New Relic proporciona una API para ampliar la instrumentación para un marco web adicional. Para obtener más información, incluido un tutorial, consulte la documentación de la instrumentación framework web Node.js en GitHub.

Clientes de servicio de mensajes no compatibles con el instrumento

A partir de la versión 2.0.0 del agente Node.js, New Relic proporciona una API para ampliar la instrumentación para una biblioteca de servicios de mensajes adicional. Para obtener más información, incluido un tutorial, consulte la documentación de la instrumentación del cliente del servicio de mensajes Node.js en GitHub.

Almacenes de datos no compatibles con instrumentos

A partir de la versión 2.0.0 del agente Node.js, New Relic proporciona una API para ampliar la instrumentación para almacenamiento de datos de biblioteca adicional. Para obtener más información, incluido un tutorial, consulte la documentación de la instrumentación de almacenamiento de datos de Node.js en GitHub.

Instrumento transacción web

Para crear una transacción web personalizada, llame a startWebTransaction para iniciar la transacción. Para finalizar la transacción, utilice cualquiera de estas opciones:

Ending the transaction

Comments

Promesa

Si el controlador pasado a startWebTransaction devuelve una promesa, el agente finalizará la transacción cuando la promesa devuelta se resuelva o rechace.

Manual

Si llama getTransaction en el contexto de la nueva transacción, esto notifica al agente que la transacción se manejará manualmente.

Si se llama getTransaction en el controlador, must finaliza la transacción llamando transaction.end().

Sincrónico

Si no se cumple ninguna de estas opciones, la transacción finalizará cuando el controlador regrese sincrónicamente.

Instrumento fondo transacción

Puede utilizar transacciones personalizadas para instrumentos transacciones no web (tareas en segundo plano); Por ejemplo:

  • Trabajos periódicos dentro de tu aplicación
  • Trabajo que continúa después de que se completa una solicitud.

Para implementar tareas en segundo plano, llame startBackgroundTransaction en su controlador para iniciar una transacción en segundo plano. Para finalizar la transacción, utilice cualquiera de estas opciones:

Ending the transaction

Comments

Promesa

Si el controlador pasado a startBackgroundTransaction devuelve una promesa, el agente finalizará la transacción cuando la promesa devuelta se resuelva o rechace.

Manual

Si llama getTransaction en el contexto de la nueva transacción, esto notifica al agente que la transacción se manejará manualmente.

Si se llama getTransaction en el controlador, must finaliza la transacción llamando transaction.end().

Sincrónico

Si no se cumple ninguna de estas opciones, la transacción finalizará cuando el controlador regrese sincrónicamente.

Ampliar instrumentación dentro de transacción

Puede crear instrumentación utilizando los métodos de registro de instrumentación en la API. Escribir instrumentación utilizando la API de instrumentación le permite especificar métricas y nombres con mayor detalle mediante métodos de "parche de mono" (reemplazo de funciones) en objetos relevantes. Otras opciones pueden ofrecer visibilidad de transacciones web que ya están instrumentadas, u obtener información valiosa sobre la base de datos y otros trabajos en transacción que no se instrumentan automáticamente.

Para hacer esto, envuelva su devolución de llamada en un rastreador personalizado. El rastreador personalizado crea y recopila métricas específicas para un segmento adicional dentro de una transacción existente, como una función particular o una llamada a una base de datos.

  • Para instrumentar devoluciones de llamada individuales, llame a startSegment() dentro de la devolución de llamada y mueva la lógica principal de devolución de llamada a la función handler .
  • Para instrumentar una función que se llama dentro de una función asincrónica, envuelva tanto la función objetivo como su función asincrónica principal con startSegment().

Importante

Estos ejemplos deben colocarse en el código que se ejecuta en una transacción. No importa el origen de la transacción, personalizada o creada automáticamente.

Copyright © 2024 New Relic Inc.

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