• 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 vía atributo (.NET)

El agente .NET de New Relic ofrece varias opciones para instrumentación personalizada. La instrumentación personalizada le permite instrumentar partes de su aplicación que no se instrumentan automáticamente. Este documento describe cómo instrumentar su aplicación decorando los métodos en el código de su aplicación con atributos.

  • Utilice el atributo Transaction para crear una transacción personalizada. También puede marcar la transacción personalizada como una transacción web con la propiedad Web del atributo.
  • Utilice el atributo Trace para agregar instrumentación personalizada a los métodos que se invocan dentro de una transacción preexistente.

Requisitos y recomendaciones

Los requisitos incluyen:

Transacción llamada dentro de transacción

Los métodos decorados con el atributo [Transaction] solo crearán una nueva transacción cuando ya no exista ninguna. Cuando se llama a un método decorado con [Transaction] desde within una transacción iniciada anteriormente, se tratará como el atributo [Trace] y proporcionará más información sobre la transacción existente.

Crear una nueva transacción no web

Para iniciar una transacción no web (también conocida como solicitud en segundo plano) con el atributo Transaction :

[Transaction]
public void Run()
{
// your background task
}

Para obtener detalles sobre por qué utilizar web o no web, consulte Clasificar como web o no web.

Crear una nueva transacción web

Para indicarle al agente que marque una tarea que no sea web como una transacción browser web, utilice cualquiera de estas opciones:

  • Establezca la propiedad Web del atributo Transaction en true.
  • Establezca el URI de la transacción con SetTransactionUri().
[Transaction(Web = true)]
public void Run()
{
var uri = new Uri("https://www.mydomain.com/path");
NewRelic.Api.Agent.NewRelic.SetTransactionUri(uri);
// your web task
}

Cuando se utiliza dentro de una transacción iniciada anteriormente, se tratará como un atributo [Trace] .

Para obtener detalles sobre por qué utilizar web o no web, consulte Clasificar como web o no web.

Agregar detalles a la transacción existente con Trace

Si su traza de la transacción muestra grandes bloques de tiempo no instrumentados y desea incluir métodos adicionales dentro de la traza, puede utilizar el atributo Trace :

[Trace]
protected void MethodWithinTransaction()
{
// your app code
}

Importante

Si algunos de sus métodos no aparecen en traza después de agregar el atributo [Trace] , deshabilite la inserción de métodos para esos métodos con [MethodImpl(MethodImplOptions.NoInlining)].

Importante

Ejecutar su aplicación desde Visual Studio en modo debug puede evitar que algunos métodos aparezcan en New Relic traza. Para garantizar que los métodos aparezcan en New Relic, ejecute la aplicación en modo de lanzamiento a través de la línea de comando.

Propiedades para Transaction

El atributo Transaction admite las siguientes propiedades:

Ejemplo: instrumento cuatro métodos

Leer publicaciones del foro sobre instrumentación

Para obtener recomendaciones más específicas, consulte estas publicaciones en nuestra comunidad del Foro de soporte:

Utilice otras funciones API

Para obtener más información sobre la API del agente .NET y su funcionalidad, consulte la guía API del agente .NET de New Relic. Para instrumentación personalizada sin modificar su código fuente, consulte Crear transacción vía XML y Agregar detalles a transacción vía XML.

Copyright © 2024 New Relic Inc.

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