• EnglishEspañol日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

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.

Criar um problema

Instrumentação personalizada via atributo (.NET)

O agente .NET da New Relic oferece diversas opções para instrumentação personalizada. A instrumentação personalizada permite instrumentar partes do seu aplicativo que não são instrumentadas automaticamente. Este documento descreve como instrumentar seu aplicativo decorando os métodos no código do seu aplicativo com atributo.

  • Use o atributo Transaction para criar uma transação personalizada. Você também pode marcar a transação personalizada como uma transação da web com a propriedade Web do atributo.
  • Use o atributo Trace para adicionar instrumentação personalizada a métodos invocados em uma transação preexistente.

Requisitos e recomendações

Os requisitos incluem:

Transação chamada transação dentro

Os métodos decorados com o atributo [Transaction] só criarão uma nova transação quando já existir uma. Quando um método decorado com [Transaction] é chamado a partir de within uma transação iniciada anteriormente, ele será tratado como o atributo [Trace] e fornecerá mais informações sobre a transação existente.

Crie uma nova transação fora da web

Para iniciar uma transação fora da web (também conhecida como solicitação em segundo plano) com o atributo Transaction :

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

Para obter detalhes sobre por que usar web ou não-web, consulte Classificar como web ou não-web.

Crie uma nova transação da web

Para instruir o agente a marcar uma tarefa que não seja da Web como uma transação do browser da Web, use uma destas opções:

  • Defina a propriedade Web do atributo Transaction como true.
  • Defina o URI da transação com 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
}

Quando usado dentro de uma transação iniciada anteriormente, será tratado como um atributo [Trace] .

Para obter detalhes sobre por que usar web ou não-web, consulte Classificar como web ou não-web.

Adicione detalhes à transação existente com Trace

Se o seu trace da transação mostrar grandes blocos de tempo não instrumentado e você quiser incluir métodos adicionais no trace, você poderá usar o atributo Trace:

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

Importante

Se alguns dos seus métodos não aparecerem no rastreamento depois de adicionar o atributo [Trace] , desative o método embutido para esses métodos com [MethodImpl(MethodImplOptions.NoInlining)].

Importante

Executar seu aplicativo no Visual Studio no modo debug pode impedir que alguns métodos apareçam no rastreamento do New Relic. Para garantir que os métodos apareçam no New Relic, execute o aplicativo no modo de liberação por meio da linha de comando.

Propriedades para Transaction

O atributo Transaction oferece suporte às seguintes propriedades:

Exemplo: instrumento quatro métodos

Leia postagens do fórum sobre instrumentação

Para recomendações mais específicas, confira estas postagens em nossa comunidade do Fórum de Suporte:

Use outras funções da API

Para obter mais informações sobre a API do agente .NET e sua funcionalidade, consulte o guia da API do agente .NET da New Relic. Para instrumentação personalizada sem modificar seu código-fonte, consulte Criar transação via XML e Adicionar detalhes à transação via XML.

Copyright © 2024 New Relic Inc.

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