• 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

Criar transação via XML (.NET)

Estrutura suportada pelo instrumento New Relic automaticamente. No entanto, você também pode ter outra estrutura para a qual algumas transações não estão sendo criadas automaticamente ou métodos adicionais que você gostaria de utilizar. Você pode adicionar instrumentação personalizada a esses métodos criando transações. transações criadas via XML são classificadas como não-web na interface New Relic.

Este documento descreve como criar transações com um arquivo XML. Você também pode:

Se você tiver um aplicativo não IIS, a instrumentação XML exigirá a ativação da opção Instrument all durante a instalação do agente .NET.

Criar transação usando XML

A transação personalizada (transação não instrumentada automaticamente) é definida em um arquivo XML de instrumentação personalizada. Você define um método que aciona a criação de uma transação. Você também pode instrumentar métodos adicionais chamados pelo método trigger.

Algumas regras importantes que você deve saber antes de criar uma transação personalizada:

  • Chamadas externas e de banco de dados não exigem instrumentação personalizada porque são instrumentadas automaticamente.
  • Certifique-se de que seu arquivo XML esteja no caminho correto. Para definir seu conjunto de instrumentação, o agente .NET lê cada arquivo XML no diretório Extensions .
  • Se um método que você tentar instrumentalizar já fizer parte de uma transação existente, ele será adicionado como um segmento a essa transação. Nenhuma nova transação será criada. Isso ocorrerá mesmo se o método pai for instrumentado usando instrumentação personalizada.
  • Evite coisas instrumentadas como Main() , pois esse método não terminará até que o aplicativo termine e os dados não poderão ser enviados para o New Relic.

Para criar um arquivo de instrumentação personalizada:

  1. Crie um novo arquivo .xml no diretório Extensions dentro do diretório do agente .NET. A localização deste diretório depende do seu sistema operacional:

  2. Copie este modelo no arquivo que você criou. Este modelo define duas classes e métodos separados como transação, mas mais podem ser adicionados:

    <?xml version="1.0" encoding="utf-8"?>
    <extension xmlns="urn:newrelic-extension">
    <instrumentation>
    <!-- Define the method which triggers the creation of a transaction. -->
    <tracerFactory name="NewRelic.Agent.Core.Tracer.Factories.BackgroundThreadTracerFactory" metricName="TransactionName">
    <match assemblyName="AssemblyName" className="NameSpace.ClassName">
    <exactMethodMatcher methodName="MethodName" />
    </match>
    </tracerFactory>
    <!-- Define the method which triggers the creation of a transaction. -->
    <tracerFactory name="NewRelic.Agent.Core.Tracer.Factories.BackgroundThreadTracerFactory" metricName="TransactionName2">
    <match assemblyName="AssemblyName" className="NameSpace.ClassName2">
    <exactMethodMatcher methodName="MethodName2" />
    </match>
    </tracerFactory>
    <!-- Define the method which triggers the creation of a transaction. -->
    <tracerFactory name="NewRelic.Agent.Core.Tracer.Factories.BackgroundThreadTracerFactory" metricName="TransactionName3">
    <match assemblyName="AssemblyName" className="NameSpace.ClassName3" minVersion="1.0.0" maxVersion="99.99.99">
    <exactMethodMatcher methodName="MethodName3" />
    </match>
    </tracerFactory>
    </instrumentation>
    </extension>
  1. No arquivo que você criou, personalize os valores de atributo TransactionName, AssemblyName, NameSpace.ClassName e MethodName. Personalize esses valores para o método de gatilho e para quaisquer métodos chamados pelo método de gatilho. Você também pode usar os valores de atributo opcionais minVersion e maxVersion para versões específicas de destino de um assembly, conforme mostrado no terceiro exemplo acima. Observe que esta funcionalidade requer o agente 10.6.0 ou superior.

    Dica

    Esses valores diferenciam maiúsculas de minúsculas.

    • TransactionName: Define o nome da transação. O atributo metricName é opcional. Se omitido, o nome da transação será NameSpace.ClassName/MethodName. A categoria da transação será Custom. O nome completo da métrica resultante será OtherTransaction/Custom/TransactionName. Se você deseja alterar a categoria da transação de Custom, use a chamada de API SetTransactionName . A interface New Relic agrupa as transações em categorias no campo tipo de transação.
    • AssemblyName: o assembly que contém o método de gatilho.
    • NameSpace.ClassName: o nome completo da classe que contém o método de disparo.
    • MethodName: o nome exato do método de gatilho.
    • minVersion: Opcional (você pode removê-lo). A versão mínima de montagem para instrumento (inclusive). Se omitido, a versão mínima será considerada 0. Requer agente 10.6.0 ou superior.
    • maxVersion: Opcional (você pode removê-lo). A versão máxima de montagem para instrumento (exclusivo). Se omitido, não há versão máxima. Requer agente 10.6.0 ou superior.
  2. A adição de métodos adicionais deve incluir o atributo "NewRelic.Agent.Core.Tracer.Factories.BackgroundThreadTracerFactory" para ser definido como uma transação. tag sem esse atributo adicionará detalhes apenas às transações existentes .

  3. Opcional: para verificar se o arquivo XML está formatado corretamente, você pode verificá-lo no XSD (localizado em C:\ProgramData\New Relic\.NET Agent\Extensions\extension.xsd) usando qualquer validador XSD.

Importante

Não use colchetes [suffix] no final do nome da sua transação. O New Relic remove automaticamente os colchetes do nome. Em vez disso, use parênteses (suffix) ou outros símbolos, se necessário.

Ver transação na interface

A transação personalizada começa quando o método especificado por methodName é invocado no assembly especificado por assemblyName. A transação termina quando o método retorna ou lança uma exceção.

Você pode visualizar essas métricas na páginaTransactions e no trace da transação. Para visualizar a transação: Vá para one.newrelic.com > All capabilities > APM & services > (select an app) > Monitor > Transactions > Type > (select a type). O tipo será Non-web/Custom , a menos que você use a API para alterar a categoria.

one.newrelic.com > All capabilities > APM & services > (select an app) > Monitoring > Transactions > Type > (selected type): Use o menu Type para visualizar sua transação personalizada.

Exemplo: instrumento três métodos

Este exemplo apresenta uma implementação simples de criação de transação.

Exemplo: instrumento para aplicativo de console

Este aplicativo de console simples demonstra a criação de transações. Depois de executar o aplicativo algumas vezes, você verá a transação que criou na página de transação (em one.newrelic.com > All capabilities > APM & services > (select an app) > Transactions > Type). O segmento Dummy ficará visível na tabela de detalhamento das transações e em qualquer rastreamento da transação.

Copyright © 2024 New Relic Inc.

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