• 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

Guía para usar la API del agente Python

La API del agente Python le permite personalizar y ampliar su monitoreo. Utilice la API del agente Python para:

  • Instrumente manualmente un framework no compatible o un sistema de terceros.
  • Agregue instrumentación para complementar el monitoreo predeterminado del agente.

Este documento describe algunas de las API de llamada de Python disponibles. Para obtener una descripción de todas nuestras API disponibles, consulte Introducción a las API.

Instrumentación personalizada o API

Si su objetivo es la instrumentación personalizada, considere usar el método del archivo de configuración, que le permite agregar funciones y métodos de clase al archivo de configuración que el agente instrumentará automáticamente. El beneficio del método del archivo de configuración es que no requiere que cambie el código de su aplicación.

Sin embargo, la API del agente Python es mucho más poderosa y es mejor para configurar instrumentación más compleja y personalizada. Para asegurarse de tener acceso a la funcionalidad API completa, actualice al último agente de Python.

Monitor transacciones y segmentos

El agente Python es compatible con la mayoría del marco web WSGI común. Si el agente es compatible con su framework, las solicitudes web se capturarán automáticamente como transacciones y se mostrarán en la UI de New Relic. Una transacción también puede tener segmentos a nivel de función que se capturan como parte de una traza de la transacción.

Utilice estos métodos para monitor los segmentos de transacción web, transacción no web y transacción:

Si quieres...

Hacer esto...

Monitor transacciones web WSGI

El agente Python captura automáticamente las transacciones web para el marco compatible. Si no tiene un framework compatible, puede usar la función wsgi_application para monitor su punto de entrada WSGI.

Monitor transacciones web ASGI

El agente Python captura automáticamente las transacciones web para el marco compatible. Si no tiene un framework compatible, puede usar la función asgi_application para monitor su punto de entrada ASGI.

Monitor transacciones no web

El agente Python clasifica las transacciones no web como tareas en segundo plano. Para capturar transacciones no web, utilice background_task.

Capture más detalles sobre una transacción

Si tu traza de la transacción no tiene el nivel de detalle que deseas:

  • Utilice function_trace para capturar más detalles a nivel de función en la transacción.
  • Utilice datastore_trace para capturar más detalles sobre las llamadas de almacenamiento de datos.

Ignorar una transacción

Utilice cualquiera de estas opciones:

Agregar y editar metadatos de transacciones

A veces el código al que apuntas es visible en nuestra UI, pero algunos detalles del método no son útiles. Por ejemplo:

Utilice estas llamadas cuando desee cambiar los metadatos de una transacción existente:

Si quieres...

Hacer esto...

Obtener referencia a la transacción actual

Para devolver un objeto que represente la transacción actual, utilice current_transaction. Esto es requerido por algunas otras llamadas API del agente Python.

Cambiar el nombre de una transacción

Utilice set_transaction_name.

Agregar metadatos (como el nivel de suscripción de un cliente) a la transacción

Agregue un atributo personalizado a su transacción usando add_custom_attribute o use otra API de llamada para informar datos personalizados.

Marcar una transacción como trabajo en segundo plano

Para convertir una transacción web en una tarea en segundo plano para que aparezca como una transacción no web en la UI, utilice set_background_task.

Evite que una transacción afecte su puntuación Apdex

Utilice suppress_apdex_metric.

Ver registro relacionado

Para ver el registro directamente dentro del contexto de los errores y la traza de su aplicación, utilice la llamada API get_linking_metadata 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 .

Reporte evento personalizado y métrica datos personalizados

El agente reporta datos en dos formas principales:

  • Los datos métricos miden valores numéricos basados en el tiempo; por ejemplo, conexiones por minuto.
  • Los datos de eventos capturan información de eventos discreta. evento tienen valor principal atributo adjunto a ellos. Podrás analizar y consultar datos de eventos.

Utilice estos métodos para crear nuevos datos de eventos y nuevos datos métricos:

Si quieres...

Hacer esto...

Envíe datos sobre un evento para utilizarlos al consultar sus datos.

Utilice record_custom_event.

Informe métrico basado en tiempo sobre el rendimiento de la aplicación.

Informar una excepción como un error

De forma predeterminada, el agente Python solo informa excepciones no controladas. Para informar una excepción de Python como error, utilice notice_error.

Parámetro de cadena de consulta de informe

Por razones de seguridad, los parámetros de cadena de consulta asociados a la transacción web están deshabilitados de forma predeterminada. Utilice capture_request_params para habilitarlos.

Etiqueta evento con metadatos

Para agregar un atributo al evento para consultas más detalladas o análisis de errores, use add_custom_attribute.

Generar métricas a partir de fuentes de datos y fábricas de datos.

Para generar métricas con una API de estilo pull en lugar de la API de estilo push implementada por record_custom_metric(), utilice estas API de llamada:

Llamadas relacionadas con mensajes

Estas API de llamada le permiten recopilar datos de rendimiento en su arquitectura o servicio de paso de mensajes; por ejemplo, RabbitMQ. Para utilizar estas llamadas, asegúrese de tener la versión 2.88.0.72 o superior del agente Python.

Si quieres...

Hacer esto...

Informar mensajes como una transacción

Utilice message_transaction.

Informar detalles del mensaje como segmentos de traza de la transacción

Utilice message_trace.

Implementar rastreo distribuido

Estas API requieren que rastreo distribuido esté habilitado.

Los servicios y el monitor de aplicaciones de nuestro agente se pasarán automáticamente el contexto de rastreo distribuido entre sí cuando se utilice un frameworkcompatible. Cuando no utilice un framework compatible, deberá utilizar las API distribuidas por rastreo para aceptar manualmente este contexto.

El marco web compatible (por ejemplo, Flask, Django, Tornado) llamará automáticamente accept_distributed_trace_payload al crear una transacción. La biblioteca de servicios web externos admitidos llamará automáticamente create_distributed_trace_payload antes de realizar una llamada HTTP externa.

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...

Cree una carga útil para enviarla a un servicio llamado.

Utilice create_distributed_trace_payload.

Aceptar una carga útil enviada desde el primer servicio; Esto unirá estos servicios en una traza.

Utilice accept_distributed_trace_payload.

Configuración del agente, inicialización, apagado.

Estas llamadas lo ayudan a administrar el comportamiento del agente Python, como inicializar e integrar el agente y hacer referencia a o cambiar los ajustes de configuración :

Si quieres...

Hacer esto...

Inicializar el agente

Para inicializar el agente Python con un archivo de configuración específico como parte del proceso de integración avanzado, utilice initialize.

Obtener una referencia al objeto application

El objeto application representa una aplicación de supervisión de agente y lo utilizan algunas llamadas a la API del agente de Python.

Obtener una referencia a los ajustes de configuración

Para controlar el comportamiento del agente Python, puede utilizar los ajustes de configuración.

Cerrar el agente

Para cerrar forzosamente el agente en lugar de permitirle realizar el intento final estándar de cargar datos, utilice shutdown_agent.

Controlar el monitoreo del agente navegador

Puede instalar el agente de monitoreo de navegador agregándolo automáticamente a sus páginas o implementándolo en páginas específicas copiando y pegando el fragmento de JavaScript del agente . También puede controlar el agente del navegador utilizando la API de llamada del agente APM. Para obtener más información, consulte agente del navegador y el agente Python.

Si quieres...

Hacer esto...

Monitor vistas de páginas específicas

Para inyectar el fragmento de JavaScript del encabezado y pie de página del agente del navegador en las vistas que desea monitor, use get_browser_timing_header y get_browser_timing_footer.

Deshabilitar el monitoreo de vistas de páginas específicas

Para deshabilitar el monitoreo del navegador para visitas a páginas específicas, use disable_browser_autorum.

Copyright © 2024 New Relic Inc.

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