• EnglishEspañol日本語한국어Português
  • Inicia sesiónComenzar ahora

Te ofrecemos esta traducción automática para facilitar la lectura.

En caso de que haya discrepancias entre la versión en inglés y la versión traducida, se entiende que prevalece la versión en inglés. Visita esta página para obtener más información.

Crea una propuesta

Crear transacción vía XML (.NET)

New Relic instrumentado marco compatible automáticamente. Sin embargo, es posible que también tenga otro marco para el cual algunas transacciones no se crean automáticamente o métodos adicionales que le gustaría utilizar. Puede agregar instrumentación personalizada a estos métodos creando transacción. Las transacciones creadas a través de XML se clasifican como no web en la UI de New Relic.

Este documento describe cómo crear transacciones con un archivo XML. Tú también puedes:

Si tiene una aplicación que no es IIS, la instrumentación XML requiere habilitar la opción Instrument all durante la instalación del agente .NET.

Crear transacción usando XML

La transacción personalizada (transacción no instrumentada automáticamente) se define en un archivo XML de instrumentación personalizada. Usted define un método que desencadena la creación de una transacción. También puede instrumentar métodos adicionales llamados por el método de activación.

Algunas reglas importantes que debe conocer antes de crear una transacción personalizada:

  • La base de datos y las llamadas externas no requieren instrumentación personalizada porque se instrumentan automáticamente.
  • Asegúrese de que su archivo XML esté en la ruta correcta. Para definir su conjunto de instrumentación, el agente .NET lee cada archivo XML en el directorio Extensions .
  • Si un método que intenta instrumentar ya forma parte de una transacción existente, se agregará como un segmento a esa transacción. No se creará ninguna nueva transacción. Esto ocurrirá incluso si el método principal está instrumentado mediante instrumentación personalizada.
  • Evite instrumentar cosas como Main() ya que este método no finalizará hasta que finalice la aplicación y es posible que los datos no se envíen a New Relic.

Para crear un archivo personalizado de instrumentación:

  1. Cree un nuevo archivo .xml en el directorio Extensions dentro de su directorio de agente .NET. La ubicación de este directorio depende de su sistema operativo:

  2. Copie esta plantilla en el archivo que creó. Esta plantilla define dos clases y métodos separados como transacción, pero se pueden agregar más:

    <?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. En el archivo que creó, personalice los valores de atributo TransactionName, AssemblyName, NameSpace.ClassName y MethodName. Personalice estos valores tanto para el método de activación como para cualquier método llamado por el método de activación. También puede utilizar los valores de atributos opcionales minVersion y maxVersion para apuntar a versiones específicas de un ensamblado, como se muestra en el tercer ejemplo anterior. Tenga en cuenta que esta funcionalidad requiere el agente 10.6.0 o superior.

    Sugerencia

    Estos valores distinguen entre mayúsculas y minúsculas.

    • TransactionName: Define el nombre de la transacción. El atributo metricName es opcional. Si se omite, el nombre de la transacción será NameSpace.ClassName/MethodName. La categoría de transacción será Custom. El nombre completo de la métrica resultante será OtherTransaction/Custom/TransactionName. Si desea cambiar la categoría de transacción de Custom, utilice la llamada API SetTransactionName . La UI de New Relic agrupa las transacciones en categorías en el campo tipo de transacción.
    • AssemblyName: el ensamblado que contiene el método de activación.
    • NameSpace.ClassName: el nombre de clase completo que contiene el método desencadenante.
    • MethodName: El nombre exacto del método de activación.
    • minVersion: Opcional (puedes eliminarlo). La versión mínima de montaje para instrumento (inclusive). Si se omite, se considera que la versión mínima es 0. Requiere el agente 10.6.0 o superior.
    • maxVersion: Opcional (puedes eliminarlo). La versión de máximo montaje para instrumento (exclusiva). Si se omite, no existe una versión máxima. Requiere agente 10.6.0 o superior.
  2. Agregar métodos adicionales debe incluir el atributo "NewRelic.Agent.Core.Tracer.Factories.BackgroundThreadTracerFactory" para que se defina como una transacción. La etiqueta sin este atributo agregará detalles solo a la transacción existente .

  3. Opcional: para comprobar si el archivo XML tiene el formato correcto, puede compararlo con el XSD (ubicado en C:\ProgramData\New Relic\.NET Agent\Extensions\extension.xsd) utilizando cualquier validador XSD.

Importante

No utilice corchetes [suffix] al final del nombre de su transacción. New Relic elimina automáticamente los corchetes del nombre. En su lugar, utilice paréntesis (suffix) u otros símbolos si es necesario.

Ver transacción en la UI

La transacción personalizada comienza cuando el método especificado por methodName se invoca en el ensamblado especificado por assemblyName. La transacción finaliza cuando el método devuelve o genera una excepción.

Puedes visualizar estas métricas en la páginaTransactions y en la traza de la transacción. Para ver la transacción: Vaya a one.newrelic.com > All capabilities > APM & services > (select an app) > Monitor > Transactions > Type > (select a type). El tipo será Non-web/Custom a menos que utilice la API para cambiar la categoría.

one.newrelic.com > All capabilities > APM & services > (select an app) > Monitoring > Transactions > Type > (selected type): Utilice el menú Type para ver su transacción personalizada.

Ejemplo: instrumento tres métodos

Este ejemplo presenta una implementación simple de la creación de transacciones.

Ejemplo: instrumento una aplicación de consola

Esta sencilla aplicación de consola demuestra la creación de transacciones. Después de ejecutar la aplicación varias veces, verá la transacción que creó en la página de transacciones (en one.newrelic.com > All capabilities > APM & services > (select an app) > Transactions > Type). El segmento Dummy será visible en la tabla de desglose de transacciones y en cualquier traza de la transacción.

Copyright © 2024 New Relic Inc.

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