Sintaxis
newrelic.agent.web_transaction(application=None, name=None, group=None, scheme=None, host=None, port=None, request_method=None, request_path=None, query_string=None, headers=None)
Se utiliza para instrumentar una transacción web.
Requisitos
Versión del agente 4.16.0.116 o superior
Descripción
Este decorador de Python se puede utilizar para transacciones de instrumentos web. Las transacciones marcadas con este decorador se muestran en la UI de APM en transacción web y están separadas de transacción no web.
Si no puede utilizar el decorador, uno de estos formatos de llamada puede resultar más útil:
The wrapper
: Si sabe de antemano dónde están las funciones específicas que desea rastrear, puede utilizar el decorador
web_transaction
. Pero si no conoce todas las funciones que deben trazarse (por ejemplo, si se buscan dinámicamente como parte de un sistema de enrutamiento), entonces debe usarWebTransactionWrapper
para ajustar la función en ese momento. de inscripción o en el momento de la convocatoria.The path-based wrapper
: El formulario contenedor basado en ruta es
wrap_web_transaction
.
Para obtener más información sobre las diferencias y los usos de estas formas de funciones, consulte Formatos de llamada de variables.
Parámetros
Parámetro decorador
newrelic.agent.web_transaction(application=None, name=None, group=None, scheme=None, host=None, port=None, request_method=None, request_path=None, query_string=None, headers=None)
Parámetro para estas llamadas:
Parámetro | Descripción |
---|---|
Instancia de aplicación | Opcional. La aplicación bajo la cual se reportarán los datos. Si se deja sin valor, se utilizará la aplicación especificada en la configuración del agente (archivo de configuración o variable de entorno). Para obtener más información sobre cómo generar un objeto de aplicación, consulte el método |
cadena | Opcional. El nombre de la transacción. De forma predeterminada, el nombre será el nombre de la función a la que se aplicó el decorador, pero puede anularlo proporcionando este nombre. |
cadena | Opcional. El Si no se proporciona, el grupo tiene como valor predeterminado |
cadena | Opcional. La parte del esquema de la URL de solicitud. |
cadena | Opcional. La parte del host de la URL de solicitud |
entero | Opcional. La parte del puerto de la URL de solicitud |
cadena | Opcional. El método de solicitud HTTP, como GET o POST |
cadena | Opcional. El resto de la ruta de la URL de solicitud |
cadena | Opcional. La parte de la URL de solicitud que sigue al signo de interrogación |
iterable o dict | Opcional. Los encabezados de solicitud HTTP Un iterable de [nombre, valor] iterables de dos elementos o dict de |
Parámetro de envoltura:
newrelic.agent.WebTransactionWrapper(wrapped, application=None, name=None, group=None, scheme=None, host=None, port=None, request_method=None, request_path=None, query_string=None, headers=None)
WebTransactionWrapper
toma los mismos parámetros que el decorador web_transaction
y este parámetro wrapped
adicional:
Parámetro | Descripción |
---|---|
método | Requerido. El método para ser trazada. |
Parámetro basado en ruta:
newrelic.agent.wrap_web_transaction(module, object_path, application=None, name=None, group=None, scheme=None, host=None, port=None, request_method=None, request_path=None, query_string=None, headers=None)
wrap_web_transaction
toma el mismo parámetro que el decorador web_transaction
más estos parámetros adicionales:
Parámetro | Descripción |
---|---|
módulo o cadena | Requerido. El módulo que contiene la función/actividad web que estás instrumentando. |
cadena | Requerido. La ruta al módulo. |
Ejemplos
web_transaction
ejemplo de decorador
A continuación se muestra un ejemplo del uso del decorador web_transaction:
@newrelic.agent.web_transaction()def get(): ...
WebTransactionWrapper
ejemplo
Un ejemplo de uso de WebTransactionWrapper
:
task = newrelic.agent.WebTransactionWrapper(get_next_task())result = task(*args, **kwargs)