El agente New Relic Ruby proporciona una API pública con documentación disponible en GitHub. La documentación de GitHub le indica cómo configurar la instrumentación personalizada de su aplicación Ruby y recopilar datos más detallados:
Las siguientes secciones explican objetivos comunes, soluciones y enlaces a partes relevantes de la documentación.
Importante
Cuando utilice la API del agente Ruby, asegúrese de tener la última versión del agente Ruby. Varias API utilizadas en los siguientes ejemplos requieren la versión 4.6.0 o superior del agente Ruby.
Instrumento faltan secciones de tu código con transacción.
Para instrumentar su aplicación, New Relic separa cada ruta a través de su código en su propia transacción. New Relic mide (o "instrumentado") el método principal en estas transacciones para medir el rendimiento general de su aplicación y recopila la traza de la transacción de transacciones de larga duración para obtener detalles adicionales.
Utilice estos métodos cuando New Relic no esté instrumentada en absoluto en una parte particular de su código:
Si quieres... | Hacer esto... |
---|---|
Hora en que un método New Relic no se instrumenta automáticamente | Crea una nueva transacción. Ver Seguimiento de puntos de entrada de transacciones. |
Cronometrar algo que no sea una única llamada a un método | Utilice la API rastreadora. |
Evitar que una transacción se informe a New Relic | Ignora la transacción. |
Métodos específicos de tiempo que utilizan segmentos
Si una transacción ya es visible en la UI de New Relic, pero no tiene suficientes datos sobre un método en particular que se llamó durante esa transacción, puede crear segmentos para cronometrar esos métodos individuales con mayor detalle. Por ejemplo, es posible que desee cronometrar un método particularmente crítico con lógica compleja.
Utilice estos métodos cuando desee instrumentar un método dentro de una transacción existente:
Si quieres... | Hacer esto... |
---|---|
Cronometrar un método particular | Ver Método rastreador. |
Cronometrar algo que no sea una única llamada a un método | Utilice la API rastreadora. |
Mejorar los metadatos de una transacción
A veces, el código al que se dirige es visible en la UI de New Relic, pero algunos detalles del método no son útiles. Por ejemplo:
- El nombre predeterminado está provocando un problema de agrupación métrica.
- Desea agregar atributos personalizados a su transacción para poder filtrarlos en el generador de consultas.
Utilice estos métodos cuando desee cambiar la forma en que New Relic instrumentó una transacción que ya está visible en la UI de New Relic:
Si quieres... | Hacer esto... |
---|---|
Cambiar el nombre de una transacción | Ver Nombrar transacción. |
Agregue metadatos (como el nombre de la cuenta de sus clientes o el nivel de suscripción) a su transacción | Utilice un atributo personalizado. Consulte Agregar atributo personalizado. |
Marcar una transacción como trabajo en segundo plano | Consulte Supervisar trabajos en segundo plano personalizados. |
Marcar una transacción como transacción web | Pase una opción |
Evite que una transacción afecte su puntuación Apdex | Consulte Ignorar las contribuciones de Apdex. |
Ver registro relacionado
Para ver el registro directamente dentro del contexto de los errores y la traza de su aplicación, use estas llamadas API para anotar su registro:
Para obtener más información sobre cómo correlacionar los datos log con otros telemetry data, consulte nuestra documentación de contexto de registro .
Cobro o error omitido
Normalmente el agente detecta errores automáticamente. Sin embargo, puede marcar manualmente un error con el agente. También puede marcar los errores como ignorados o esperados.
Si quieres... | Hacer esto... |
---|---|
Informar un error que el agente no informa automáticamente | Consulte Envío de errores manejados New Relic . |
Evitar que el agente informe un error en absoluto | Marque el error como ignorado. Consulte el selector de errores para utilizar la opción de configuración |
Evite que un error afecte su Apdex o tasa de errores, pero aun así repórtelo a New Relic | Marque el error como se esperaba. Consulte Envío de errores gestionados New Relic y establezca |
Envía datos de eventos personalizados y métricos desde tu app
APM incluye varias formas de registrar datos personalizados arbitrarios. Para obtener una explicación de los tipos de datos de New Relic, consulte Recopilación de datos.
Si quieres... | Hacer esto... |
---|---|
Envía datos sobre un evento para que puedas analizarlo en el panel | Crea un evento personalizado. Ver |
etiquete su evento con metadatos para filtrarlos y facetarlos en el panel o análisis de errores | Agregue un atributo personalizado. Pase un hash de atributo a |
Informar datos de rendimiento personalizados | Cree una métrica personalizada. Ver |
Controlar el agente del navegador
Por lo general, el agente se agrega automáticamente a sus páginas o se implementa copiando y pegando el fragmento de JavaScript. Para obtener más información sobre estos métodos recomendados, consulte Agregar aplicaciones al monitoreo del navegador. Sin embargo, también puede recuperar el agente del navegador a través de la API de llamada del agente APM. Para obtener más información, consulte browser_timing_header()
.
Llamadas de instrumentos a almacenes de datos
Utilice estos métodos para recopilar datos sobre las conexiones de su aplicación a otros almacenes de datos:
Si quieres... | Hacer esto... |
---|---|
Programe una llamada a un almacenamiento de datos no instrumentado automáticamente por New Relic | Ver |
Cronometrar una llamada de almacenamiento de datos que no se puede encapsular limpiamente en un bloque Ruby | Ver |
Capture consulta SQL junto con el tiempo | Ver |
Capture consultas que no sean SQL junto con el tiempo | Ver |
Llamadas de instrumentos a externos.
Utilice estos métodos para recopilar datos para solicitudes externas:
Si quieres... | Hacer esto... |
---|---|
Programe una llamada a una solicitud externa no instrumentada automáticamente por New Relic | Utilice |
Agregar encabezados de seguimiento de múltiples aplicaciones (CAT) a una solicitud HTTP saliente | Utilice |
Leer encabezados CAT de una solicitud HTTP entrante | Utilice |
Genere una cadena ofuscada para transportar información CAT en una solicitud saliente | Utilice |
Procesar una cadena ofuscada que contiene información CAT recibida de una solicitud entrante | Utilice |
Instrumento pide rastreo distribuido
Importante
Los siguientes ejemplos de API requieren la versión 6.9.0 o superior del agente Ruby.
Estas API requieren que rastreo distribuido esté habilitado.
rastreo distribuido te permite ver los caminos que toman las solicitudes a medida que viajan a través de un sistema distribuido.
Para obtener instrucciones generales sobre cómo utilizar las siguientes llamadas para implementar rastreo distribuido, consulte Usar las API de rastreo distribuido.
Si quieres... | Hacer esto... |
---|---|
Envíe una carga útil/encabezado al servicio llamado. | Ver |
Aceptar una carga útil/encabezado recibido del primer servicio, que vinculará estos servicios en una traza. | Ver |