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 usarWebTransactionWrapperpara 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 o función | Opcional. El nombre de la transacción. Podría ser una función que acepte un parámetro callable_name. El valor predeterminado es |
cadena o función | Opcional. El Si no se proporciona, el grupo toma el valor predeterminado de |
cadena o función | Opcional. La parte del esquema de la URL de solicitud. Podría ser una función que acepte los mismos parámetros que la función que se está envolviendo. |
cadena o función | Opcional. La parte del host de la URL de solicitud. Podría ser una función que acepte los mismos parámetros que la función que se está envolviendo. |
entero o función | Opcional. La parte del puerto de la URL de solicitud. Podría ser una función que acepta los mismos parámetros que la función que se envuelve. |
cadena o función | Opcional. El método de solicitud HTTP, como GET o POST. Podría ser una función que acepte los mismos parámetros que la función que se está envolviendo. |
cadena o función | Opcional. El resto de la ruta de la URL de la solicitud. Podría ser una función que acepte los mismos parámetros que la función que se está envolviendo. |
cadena o función | Opcional. La parte de la URL de la solicitud que sigue al signo de interrogación. Podría ser una función que acepte los mismos parámetros que la función envuelta. |
iterable o dict o función | Opcional. Los encabezados de la solicitud HTTP Un iterable de iterables de dos elementos [nombre, valor] 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. |
cadena o función | Opcional. El nombre de la transacción. Podría ser una función que acepte un parámetro callable_name. El valor predeterminado es |
cadena o función | Opcional. El Si no se proporciona, el grupo toma el valor predeterminado de |
cadena o función | Opcional. La parte del esquema de la URL de solicitud. Podría ser una función que acepte los mismos parámetros que la función que se está envolviendo. |
cadena o función | Opcional. La parte del host de la URL de solicitud. Podría ser una función que acepte los mismos parámetros que la función que se está envolviendo. |
entero o función | Opcional. La parte del puerto de la URL de solicitud. Podría ser una función que acepta los mismos parámetros que la función que se envuelve. |
cadena o función | Opcional. El método de solicitud HTTP, como GET o POST. Podría ser una función que acepte los mismos parámetros que la función que se está envolviendo. |
cadena o función | Opcional. El resto de la ruta de la URL de la solicitud. Podría ser una función que acepte los mismos parámetros que la función que se está envolviendo. |
cadena o función | Opcional. La parte de la URL de la solicitud que sigue al signo de interrogación. Podría ser una función que acepte los mismos parámetros que la función envuelta. |
iterable o dict o función | Opcional. Los encabezados de la solicitud HTTP Un iterable de iterables de dos elementos [nombre, valor] o dict de |
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
A continuación se muestra un ejemplo del uso del decorador web_transaction:
@newrelic.agent.web_transaction()def get(): ...WebTransactionWrapper
Un ejemplo de uso de WebTransactionWrapper:
task = newrelic.agent.WebTransactionWrapper(get_next_task())result = task(*args, **kwargs)