Skip to content

Latest commit

 

History

History
2356 lines (1793 loc) · 86 KB

File metadata and controls

2356 lines (1793 loc) · 86 KB
title .NET compatibilidad del agente y requisitos
tags
Agents
NET agent
Getting started
metaDescription APM's .NET agent for .NET applications: compatibility and requirements, and what frameworks are automatically instrumented.
freshnessValidatedDate never
translationType machine

El agente .NET de New Relic es compatible con .NET Framework y .NET Core. Este documento describe la compatibilidad y el soporte para entornos de ejecución, marcos y bibliotecas .NET.

El agente incluye instrumentación integrada para algunas de las partes más populares del ecosistema .NET, incluidos el marco, la base de datos y los sistemas de colas de mensajes. Después de descargar e instalar el agente, se ejecuta dentro del proceso del monitor. El agente no crea un proceso o servicio separado.

Para el marco y la biblioteca que no se instrumentan automáticamente, puede ampliar el agente con instrumentación personalizada de .NET.

¿Quieres probar nuestro agente .NET? ¡ Crea una cuenta New Relic gratis! No se requiere tarjeta de crédito.

.NET Core
<TabsBarItem id="framework">
  .NET framework
</TabsBarItem>
## Requisitos [#requirements]
  Antes de instalar el agente New Relic .NET en Windows o Linux, asegúrese de que su sistema cumpla con estos requisitos:

  <CollapserGroup>
    <Collapser className="freq-link" id="net-version-core" title="Versión .NET Core">
      El agente .NET es compatible con .NET Core versión 3.1 y .NET 5.0, 6.0, 7.0, 8.0, 9.0 y 10.0.

      <Callout variant="important">
        El agente solo es totalmente compatible cuando la aplicación instrumentada tiene como objetivo [los tiempos de ejecución .NET actualmente soportados por Microsoft](https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core). Es probable que el agente funcione con los tiempos de ejecución EOL que se enumeran a continuación, pero no probamos nuevas versiones del agente con tiempos de ejecución EOL.
      </Callout>

      <table style={{ width: "500px" }}>
        <thead>
          <tr>
            <th>
              Versión .NET Core
            </th>

            <th>
              Versión mínima requerida del agente .NET
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              .NET Core 3.1 (fin de vida útil)
            </td>

            <td>
              8.21.34.0 y superior
            </td>
          </tr>

          <tr>
            <td>
              .NET 5.0 (fin de vida útil)
            </td>

            <td>
              8.35.0 y superior
            </td>
          </tr>

          <tr>
            <td>
              .NET 6.0 (fin de vida útil)
            </td>

            <td>
              9.2.0 y superior
            </td>
          </tr>

          <tr>
            <td>
              .NET 7.0 (fin de vida útil)
            </td>

            <td>
              10.0.0 y superior
            </td>
          </tr>

          <tr>
            <td>
              .NET 8.0
            </td>

            <td>
              10.0.0 y superior
            </td>
          </tr>

          <tr>
            <td>
              .NET 9.0
            </td>

            <td>
              10.0.0 y superior
            </td>
          </tr>

          <tr>
            <td>
              .NET 10.0
            </td>

            <td>
              10.0.0 y superior
            </td>
          </tr>
        </tbody>
      </table>

      <Callout variant="important">
        En la plataforma Linux ARM64, el agente .NET solo admite versiones de .NET 5.0 o superiores.
      </Callout>
    </Collapser>

    <Collapser className="freq-link" id="app-web-servers-core" title="Servidores de aplicaciones/web">
      Asegúrese de utilizar uno de estos servidores web/aplicaciones:

      * Cernícalo
      * Kestrel con proxy inverso IIS a través de AspNetCoreModule
      * Kestrel con proxy inverso IIS a través de AspNetCoreModuleV2
      * Kestrel con proxy inverso Nginx
      * Kestrel con proxy inverso Apache
      * Alojamiento en proceso
    </Collapser>

    <Collapser id="aws-elastic-beanstalk-core" title="AWS Elastic Beanstalk">
      Para obtener instrucciones de instalación [de AWS Elastic Beanstalk](https://aws.amazon.com/elasticbeanstalk) , consulte la [guía de instalación de .NET](/install/dotnet/).
    </Collapser>

    <Collapser id="azure-core" title="Microsoft Azure">
      Para obtener instrucciones de instalación específicas de Azure, consulte la [guía de instalación de .NET](/install/dotnet/).
    </Collapser>

    <Collapser className="freq-link" id="net-requirements-core" title="Requisitos de red">
      El agente requiere que su firewall permita conexiones salientes a [redes y puertos](/docs/apm/new-relic-apm/getting-started/networks) específicos.
    </Collapser>

    <Collapser className="freq-link" id="operating-system-core" title="Sistema operativo">
      Se ha verificado que el agente trabaja con el siguiente sistema operativo:

      <table>
        <thead>
          <tr>
            <th style={{ width: "150px" }}>
              Sistema operativo
            </th>

            <th>
              Versiones compatibles
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Windows (arquitectura compatible con Intel de 32 y 64 bits)
            </td>

            <td>
              * Servidor Windows 2008 R2 SP1
              * Servidor Windows 2012
              * Servidor Windows 2012 R2
              * Servidor Windows 2016
              * Servidor Windows 2019
              * Servidor Windows 2022
              * Windows Server 2025
              * Windows 10
              * Windows 11

              Las versiones en contenedores de estos sistemas operativos también son compatibles, con la excepción de `nanoserver`.
            </td>
          </tr>

          <tr>
            <td>
              Linux (solo compatible con Intel de 64 bits)
            </td>

            <td>
              Todas las distribuciones de Linux x64 compatibles con el entorno de ejecución de .NET Core 2.0+/.NET 5+ son admitidas por el agente .NET (incluidas las versiones en contenedores). Para obtener una lista completa, consulte la [documentación de Microsoft](https://learn.microsoft.com/en-us/dotnet/core/install/linux) para la versión del tiempo de ejecución que está utilizando.
            </td>
          </tr>

          <tr>
            <td>
              Linux (arquitectura ARM64/aarch64)
            </td>

            <td>
              Todas las distribuciones de Linux ARM64 compatibles con el runtime de .NET 5+ son compatibles con el agente .NET (incluidas las versiones en contenedores), con las siguientes excepciones conocidas:

              * Linux alpino
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="user-rights-core" title="Permisos">
      La instalación y ejecución del agente .NET requiere estos permisos:

      <table>
        <thead>
          <tr>
            <th style={{ width: "150px" }}>
              Componente
            </th>

            <th>
              Permisos necesarios
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Instalar el agente
            </td>

            <td>
              El proceso o usuario que instala el agente debe tener permisos suficientes para configurar variables de entorno y acceso de escritura al directorio donde está instalado el agente.
            </td>
          </tr>

          <tr>
            <td>
              Ejecute el agente
            </td>

            <td>
              El proceso de supervisión debe tener acceso de lectura/escritura al directorio en el que instaló el agente. El agente se ejecuta como parte del proceso de supervisión y depende de esos permisos para funcionar.

              Para aplicaciones que utilizan IIS a través de proxy inverso, se suele utilizar el grupo [`IIS_IUSRS`](https://docs.microsoft.com/en-us/iis/get-started/planning-for-security/understanding-built-in-user-and-group-accounts-in-iis#understanding-the-new-iisiusrs-group) .
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="architecture-core" title="Arquitectura del procesador">
      El agente está disponible en versiones de 32 bits (x86) y 64 bits (x64) en Windows, así como en versiones de 64 bits (x64) y ARM64 (aarch64) en Linux.

      <Callout variant="important">
        En la plataforma Linux ARM64, el agente .NET solo admite versiones de .NET 5.0 o superiores.
      </Callout>
    </Collapser>

    <Collapser className="freq-link" id="security-requirements-core" title="Requerimientos de seguridad">
      Como [medida de seguridad estándar para la recopilación de datos](/docs/accounts-partnerships/accounts/security/data-security), su servidor de aplicaciones debe admitir SHA-2 (256 bits). SHA-1 no es compatible.
    </Collapser>

    <Collapser className="freq-link" id="target-framework-core" title="Versión framework objetivo">
      El agente .NET es compatible con aplicaciones destinadas a .NET Core 3.1 y .NET 5.0, 6.0, 7.0, 8.0, 9.0 y 10.0. Puede encontrar el framework objetivo en su archivo `.csproj`. La compatibilidad del agente varía según las diferentes versiones de .NET Core.

      Compatible:

      ```xml
      <TargetFramework>netcoreapp3.1</TargetFramework>
      ```

      ```xml
      <TargetFramework>net5.0</TargetFramework>
      ```

      ```xml
      <TargetFramework>net6.0</TargetFramework>
      ```

      ```xml
      <TargetFramework>net7.0</TargetFramework>
      ```

      ```xml
      <TargetFramework>net8.0</TargetFramework>
      ```

      ```xml
      <TargetFramework>net9.0</TargetFramework>
      ```

      ```xml
      <TargetFramework>net10.0</TargetFramework>
      ```

      <Callout variant="important">
        En la plataforma Linux ARM64, el agente .NET <DNT>**only**</DNT> admite el marco objetivo de `net5.0` o superior.
      </Callout>

      Si desea monitor una aplicación ASP.NET Core orientada al marco .NET, cerciorar de habilitar la compatibilidad con el marco .NET luego de instalar el agente .NET.
    </Collapser>
  </CollapserGroup>

  ## Instrumentación automática [#instrumented-features]

  Si su aplicación está alojada en ASP..NET Core, el agente crea e instrumenta automáticamente la transacción. El agente .NET instrumentó automáticamente su aplicación luego de la instalación. Si tu app no está instrumentada automáticamente, o si deseas agregar instrumentación, usa [instrumentación personalizada](/docs/agents/net-agent/custom-instrumentation/introduction-net-custom-instrumentation).

  <CollapserGroup>
    <Collapser className="freq-link" id="app-frameworks-core" title="Marco de la aplicación">
      El agente .NET instrumentó automáticamente este marco de aplicación:

      * ASP.NET Core MVC 2.0, 2.1, 2.2, 3.0, 3.1, 5.0, 6.0, 7.0, 8.0, 9.0 y 10.0 (incluye API sitio web)
      * ASP.NET Core Razor Pages 6.0, 7.0, 8.0, 9.0 y 10.0 (a partir de la versión 10.19.0 del agente .NET)
    </Collapser>

    <Collapser className="freq-link" id="database-core" title="Almacenes de datos">
      El agente .NET instrumentó automáticamente el rendimiento de las llamadas de la aplicación .NET a estos almacenes de datos:

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Almacenamiento de datos
            </th>

            <th style={{ width: "150px" }}>
              [Detalles de la instancia](/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues)
            </th>

            <th>
              Notas
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Cosmos DB
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              El agente .NET `v9.2.0` o superior instrumentó automáticamente la biblioteca [Microsoft.Azure.Cosmos](https://www.nuget.org/packages/Microsoft.Azure.Cosmos) .

              * Versión mínima admitida: 3.17.0
              * Última versión compatible verificada: 3.58.0
              * Las versiones 3.35.0 y superiores son compatibles a partir del agente .NET v10.32.0
            </td>
          </tr>

          <tr>
            <td>
              Base del sofá
            </td>

            <td />

            <td>
              Utilice [CouchbaseNetClient](https://www.nuget.org/packages/CouchbaseNetClient/).

              * Versión mínima compatible: 3.2.0
              * Última versión compatible verificada: 3.6.6
              * Versión mínima del agente requerida: 10.40.0
            </td>
          </tr>

          <tr>
            <td>
              Servidor Microsoft SQL
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Utilice SqlClient del paquete [System.Data.SqlClient](https://www.nuget.org/packages/System.Data.SqlClient) NuGet o del paquete [Microsoft.Data.SqlClient](https://www.nuget.org/packages/Microsoft.Data.SqlClient) NuGet.

              <DNT>**System.Data.SqlClient**</DNT>

              * Versión mínima admitida: 4.4.0
              * Última versión compatible verificada: 4.8.6

              <DNT>**Microsoft.Data.SqlClient**</DNT>

              * Versión mínima admitida: 1.0.19239.1
              * Última versión compatible verificada: 7.0.0
            </td>
          </tr>

          <tr>
            <td>
              Oracle
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Emplee [Oracle.ManagedDataAccess.Core](https://www.nuget.org/packages/Oracle.ManagedDataAccess.Core/)

              * Versión mínima compatible: 23.4.0
              * Última versión compatible verificada: 23.26.200

              Es posible que se instrumentaron versiones anteriores de `Oracle.ManagedDataAccess.Core` , pero no se probaron y no reciben soporte.
            </td>
          </tr>

          <tr>
            <td>
              PostgreSQL
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Utilice [Npgsql](https://www.nuget.org/packages/Npgsql/)

              * Versión mínima soportada: 4.0.0
              * Última versión compatible verificada: 7.0.7

              También se pueden instrumentar versiones anteriores de Npgsql, pero es posible que haya duplicados y/o faltan métricas.
            </td>
          </tr>

          <tr>
            <td>
              MongoDB (controlador moderno)
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Versión mínima admitida: 2.3.0

              Última versión compatible verificada: 3.7.1

              Versiones 3.0.0 y superiores son compatibles a partir del agente .NET v10.40.0.

              A partir de la versión 10.12.0 del agente, se instrumentan los siguientes métodos agregados en la versión 2.7 del controlador o después:

              * IMongoCollection.CountDocuments\[Async]
              * IMongoCollection.EstimatedDocumentCount\[Async]
              * IMongoCollection.AggregateToCollection\[Async]
              * IMongoDatabase.ListCollectionNames\[Async]
              * IMongoDatabase.Aggregate\[Async]
              * IMongoDatabase.AggregateToCollection\[Async]
              * IMongoDatabase.Watch\[Async]
            </td>
          </tr>

          <tr>
            <td>
              MySQL
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Utilice [MySQL.Data](https://www.nuget.org/packages/MySql.Data/) o [MySQL Connector](https://github.com/mysql-net/MySqlConnector)

              <DNT>**MySql.Data**</DNT>

              * Versión mínima admitida: 6.10.7
              * Última versión compatible verificada: 9.6.0

              <DNT>**MySqlConnector**</DNT>

              * Versión mínima admitida: 1.0.1
              * Última versión compatible verificada: 2.5.0
            </td>
          </tr>

          <tr>
            <td>
              StackExchange.Redis
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Versión mínima admitida: 1.0.488

              Última versión compatible verificada: 2.12.14
            </td>
          </tr>

          <tr>
            <td>
              Elasticsearch
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Utilice [Elastic.Clients.Elasticsearch](https://www.nuget.org/packages/Elastic.Clients.Elasticsearch), [NEST](https://www.nuget.org/packages/NEST) o [Elasticsearch.Net](https://www.nuget.org/packages/Elasticsearch.Net).

              <DNT>**Elastic.Clients.Elasticsearch**</DNT>

              * Versión mínima admitida: 8.0.0
              * Versión máxima compatible: 8.15.10
              * Se admiten las versiones 8.10.0 y superiores a partir del agente .NET v10.20.1
              * Las versiones 8.12.1 y superiores son compatibles a partir del agente .NET v10.23.0

              <DNT>**NEST**</DNT>

              * Versión mínima soportada: 7.0.0
              * Última versión compatible verificada: 7.17.5

              <DNT>**Elasticsearch.Net**</DNT>

              * Versión mínima soportada: 7.0.0
              * Última versión compatible verificada: 7.17.5
            </td>
          </tr>

          <tr>
            <td>
              Memcached
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Emplee [EnyimMemcachedCore](https://www.nuget.org/packages/EnyimMemcachedCore).

              * Versión mínima admitida: 2.0.0
              * Última versión compatible verificada: 3.5.0
            </td>
          </tr>

          <tr>
            <td>
              DinamoDB
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Emplee [AWSSDK.DynamoDBv2](https://www.nuget.org/packages/AWSSDK.DynamoDBv2).

              * Versión mínima compatible: 3.5.0

              * Última versión compatible verificada: 4.0.17.8

              * Versión mínima del agente requerida: 10.33.0
            </td>
          </tr>

          <tr>
            <td>
              System.Data.ODBC
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Emplee [System.Data.Odbc](https://www.nuget.org/packages/System.Data.Odbc/).

              * Versión mínima admitida: 8.0.0
              * Última versión compatible verificada: 10.0.6
              * Versión mínima del agente requerida: 10.35.0

              Las siguientes características admitidas para llamadas de almacenamiento de datos ODBC en .NET Framework (usando el namespace System.Data integrado) no son compatibles con .NET 8+:

              * La conexión `Open/OpenAsync` llama
              * Llamadas a SqlDataReader `Read/NextResult`
              * Traza SQL lenta
            </td>
          </tr>
        </tbody>
      </table>

      El agente .NET no recopila datos sobre los procesos del servidor de almacenamiento de datos. Solo recopila datos del uso de la biblioteca del cliente de almacenamiento de datos. Para monitorear directamente los procesos del servidor de almacenamiento de datos, emplee el agente New Relic Infrastructure con [integración en el host](/docs/infrastructure/host-integrations/get-started/introduction-host-integrations/).

      De forma predeterminada, el agente .NET no captura parámetros SQL para procedimientos almacenados o consultas parametrizadas en una traza de consulta. Para ver estos parámetros SQL, debe habilitar la característica de colección en la [configuración del agente](/docs/apm/agents/net-agent/configuration/net-agent-configuration/#datastore-tracer-query-parameters).

      La recopilación [de detalles de instancia](/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues) para almacenes de datos admitidos está habilitada de forma predeterminada. Para solicitar información a nivel de instancia de almacenes de datos que no figuran actualmente en la lista, obtenga soporte en [support.newrelic.com](https://support.newrelic.com).

      Si su almacenamiento de datos no aparece aquí, puede agregar instrumentación personalizada empleando el método `RecordDatastoreSegment` en la [API del agente .NET](/docs/apm/agents/net-agent/net-agent-api/net-agent-api/#ITransaction).
    </Collapser>

    <Collapser className="freq-link" id="additional-frameworks-core" title="Biblioteca de llamadas externas">
      El agente .NET instrumentó automáticamente esta biblioteca de llamadas externas:

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Bibliotecas
            </th>

            <th>
              <DNT>**Supported methods**</DNT>
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Cliente HTTP
            </td>

            <td>
              El agente instrumentó estos métodos HttpClient:

              * `SendAsync`
              * `GetAsync`
              * `PostAsync`
              * `PutAsync`
              * `DeleteAsync`
              * `GetStringAsync`
              * `GetStreamAsync`
              * `GetByteArrayAsync`
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="large-language-models-core" title="Modelo de lenguaje extenso (LLM)">
      El agente .NET [se puede configurar](/docs/apm/agents/net-agent/configuration/net-agent-configuration/#ai_monitoring) para instrumentar automáticamente estos marcos LLM:

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Frameworks
            </th>

            <th>
              Versión mínima framework
            </th>

            <th>
              Versión mínima del agente
            </th>

            <th>
              Última versión compatible verificada
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              AWS Bedrock
            </td>

            <td>
              3.7.200.0
            </td>

            <td>
              10.23.0 (`InvokeModelAsync`) 10.37.0 (`InvokeModelAsync`, `ConverseAsync`)
            </td>

            <td>
              4.0.17.3
            </td>
          </tr>

          <tr>
            <td>
              OpenAI
            </td>

            <td>
              2.0.0
            </td>

            <td>
              10.37.0 (`CompleteChat`, `CompleteChatAsync` - solo se admiten finalizaciones `Text` )
            </td>

            <td>
              2.8.0
            </td>
          </tr>

          <tr>
            <td>
              Azure.AI.OpenAI
            </td>

            <td>
              2.0.0
            </td>

            <td>
              10.37.0 (`CompleteChat`, `CompleteChatAsync` - solo se admiten finalizaciones `Text` )
            </td>

            <td>
              2.8.0-beta1
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="logging-frameworks-core" title="Marco de registro">
      El agente .NET [se puede configurar](/docs/apm/agents/net-agent/configuration/net-agent-configuration/#application_logging) para instrumentar automáticamente este marco de registro para un contexto de inicio de sesión automático con [reenvío de agente](/docs/logs/logs-context/net-configure-logs-context-all#1-agent) y [decoración log local](/docs/logs/logs-context/net-configure-logs-context-all#2-decorate):

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Frameworks
            </th>

            <th>
              Versión mínima framework
            </th>

            <th>
              Versión mínima del agente
            </th>

            <th>
              Última versión compatible verificada
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Log4Net
            </td>

            <td>
              2.0.10
            </td>

            <td>
              9.7.0
            </td>

            <td>
              3.3.0
            </td>
          </tr>

          <tr>
            <td>
              Serilog
            </td>

            <td>
              2.5.0
            </td>

            <td>
              9.7.0
            </td>

            <td>
              4.3.1
            </td>
          </tr>

          <tr>
            <td>
              NLog
            </td>

            <td>
              4.5.0
            </td>

            <td>
              9.7.0
            </td>

            <td>
              6.1.2
            </td>
          </tr>

          <tr>
            <td>
              Microsoft.Extensions.Logging
            </td>

            <td>
              3.0.0
            </td>

            <td>
              10.0.0
            </td>

            <td>
              10.0.6
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="messaging-core" title="Mensajería">
      El agente instrumentó automáticamente estos sistemas de mensajes:

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Bibliotecas
            </th>

            <th>
              <DNT>**Supported methods**</DNT>
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Confluent.Kafka
            </td>

            <td>
              * Producir y consumir sobre temas.

              * Se instrumentan los siguientes métodos:

              * `IProducer.Produce`

              * `IProducer.ProduceAsync`

              * `IConsumer.Consume`

              * Versión mínima admitida: 1.4.0

              * Última versión compatible verificada: 2.14.0
            </td>
          </tr>

          <tr>
            <td>
              NServicioBus
            </td>

            <td>
              * Pone y recibe mensajes.

              * Versión mínima soportada: 5.0

              * Última versión compatible verificada: 10.1.2
            </td>
          </tr>

          <tr>
            <td>
              RabbitMQ
            </td>

            <td>
              * Coloca y recibe mensajes y elimina colas.

              * Al recibir mensajes utilizando un `IBasicConsumer`, el `EventingBasicConsumer` es la única implementación instrumentada por el agente .NET.

              * `BasicGet` Está instrumentado, pero el agente no soporta [rastreo distribuido](/docs/apm/distributed-tracing/getting-started/introduction-distributed-tracing) para `BasicGet`.

              * Se instrumentan los siguientes métodos:

                * `IModel.BasicGet`
                * `IModel.BasicPublish`
                * `IModel.BasicConsume`
                * `IModel.QueuePurge`
                * `EventingBasicConsumer.HandleBasicDeliver`

              * Versión mínima soportada: 3.5.2

              * Última versión compatible verificada: 7.1.2
            </td>
          </tr>

          <tr>
            <td>
              MassTransit (versiones del agente 10.19.0 y posteriores)
            </td>

            <td>
              * Publicar/enviar y consumir mensajes

              * Versión mínima soportada: 7.1.0

              * Última versión compatible verificada: 8.5.7
            </td>
          </tr>

          <tr>
            <td>
              AWSSDK.SQS (Amazon Simple Queue Service) (versiones del agente 10.27.0 y posteriores)
            </td>

            <td>
              * Enviar y recibir mensajes

              * Versión mínima compatible: 3.7.0

              * Última versión compatible verificada: 4.0.2.25
            </td>
          </tr>

          <tr>
            <td>
              AWSSDK.Kinesis (Amazon Kinesis Data Streams) (versiones del agente 10.40.0 y posteriores)
            </td>

            <td>
              * Las operaciones `PutRecord(s)Async` y `GetRecordsAsync` se instrumentan como operaciones de intermediario de mensajes. Otras operaciones de Kinesis se instrumentan como llamadas a métodos básicos.

              * Versión mínima compatible: 3.7.0

              * Última versión compatible verificada: 4.0.8.11
            </td>
          </tr>

          <tr>
            <td>
              AWSSDK.KinesisFirehose (Amazon Kinesis Firehose) (versiones del agente 10.40.0 y posteriores)
            </td>

            <td>
              * Todas las operaciones de Kinesis Firehose se instrumentan como llamadas a métodos básicos.

              * Versión mínima compatible: 3.7.0

              * Última versión compatible verificada: 4.0.3.24
            </td>
          </tr>

          <tr>
            <td>
              Azure Service Bus (Azure.Messaging.ServiceBus) (versiones del agente 10.42.0 y posteriores)
            </td>

            <td>
              * Enviar y recibir mensajes

              * Admite el modo Procesador.

              * Se instrumentan los siguientes métodos:

                * `Azure.Messaging.ServiceBus.ReceiverManager.ProcessOneMessageWithinScopeAsync`

                * `Azure.Messaging.ServiceBus.ServiceBusProcessor.OnProcessMessageAsync`

                * `Azure.Messaging.ServiceBus.ServiceBusSender`

                  * `SendMessagesAsync`
                  * `ScheduleMessagesAsync`
                  * `CancelScheduledMessagesAsync`

                * `Azure.Messaging.ServiceBus.ServiceBusReceiver`

                  * `ReceiveMessagesAsync`
                  * `ReceiveDeferredMessagesAsync`
                  * `PeekMessagesInternalAsync`
                  * `CompleteMessageAsync`
                  * `AbandonMessageAsync`
                  * `DeadLetterInternalAsync`
                  * `DeferMessageAsync`
                  * `RenewMessageLockAsync`

                * Versión mínima compatible: 7.11.0

                * Última versión compatible verificada: 7.18.2
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="background-jobs-workflows-core" title="Trabajos en segundo plano y flujos de trabajo">
      El agente .NET instrumentó automáticamente el rendimiento de las llamadas de la aplicación .NET a estas bibliotecas de trabajos en segundo plano y flujos de trabajo:

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Frameworks
            </th>

            <th>
              Versión mínima framework
            </th>

            <th>
              Versión mínima del agente
            </th>

            <th>
              Última versión compatible verificada
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Hangfire
            </td>

            <td>
              1.7.0
            </td>

            <td>
              10.51.0
            </td>

            <td>
              1.8.23
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>
  </CollapserGroup>

  ## Característica no disponible [#unavailable-core]

  Las siguientes características no están disponibles para el agente .NET:

  * El agente .NET no admite [el recorte de despliegues y ejecutables autónomos](https://docs.microsoft.com/en-us/dotnet/core/deploying/trim-self-contained), porque el compilador puede potencialmente recortar ensamblados de los que depende el agente.
  * [Infinite Tracing](/docs/distributed-tracing/infinite-tracing/introduction-infinite-tracing) no es compatible con Alpine Linux debido a un [problema de compatibilidad con GRPC](https://github.com/grpc/grpc/issues/21446). Consulte [este problema del agente](https://github.com/newrelic/newrelic-dotnet-agent/issues/289) para obtener más información.
  * El agente .NET no admite [el despliegue nativo anticipado (AOT)](https://learn.microsoft.com/en-us/dotnet/core/deploying/native-aot/?tabs=net8plus%2Cwindows) para aplicaciones .NET porque se requiere la compilación justo a tiempo (JIT) para que el agente funcione correctamente.

  ## Conecte el agente a otros productos New Relic [#digital-intelligence-platform-core]

  Además de [APM](/docs/apm/new-relic-apm/getting-started/introduction-new-relic-apm), el agente .NET se integra con otros productos New Relic para brindarle visibilidad de un extremo a otro:

  <table>
    <thead>
      <tr>
        <th style={{ width: "200px" }}>
          Producto
        </th>

        <th>
          integracion
        </th>
      </tr>
    </thead>

    <tbody>
      <tr>
        <td>
          [Monitoreo del navegador](/docs/browser/new-relic-browser/getting-started/introduction-new-relic-browser)
        </td>

        <td>
          Para ASP..NET Core v6.0 y aplicaciones web posteriores (MVC, Razor y Blazor), el agente .NET (a partir de la versión 10.19.0) inyecta automáticamente el agente JavaScript del navegador cuando [habilita la instrumentación automática](/docs/browser/browser-monitoring/installation/install-browser-monitoring-agent/#select-apm-app).

          Para otros tipos de aplicaciones web, puede inyectar el agente <InlinePopover type="browser" />utilizando la [API del agente .NET](/docs/agents/net-agent/net-agent-api/get-browser-timing-header) o el [método copiar/pegar del agente del navegador](/docs/browser/new-relic-browser/installation/install-new-relic-browser-agent#copy-paste-app).

          Después de habilitar la inyección browser , puede ver los datos del navegador en la [página Resumen de APM](/docs/apm/apm-ui-pages/monitoring/apm-summary-page-view-transaction-apdex-usage-data/) y cambiar rápidamente entre el APM y los datos del navegador para una aplicación en particular. Para opciones de configuración e instrumentación manual, consulte [monitoreo del navegador y el agente .NET](/docs/apm/agents/net-agent/other-features/browser-monitoring-net-agent/).
        </td>
      </tr>

      <tr>
        <td>
          [Monitoreo de infraestructura](/docs/infrastructure/new-relic-infrastructure/getting-started/introduction-new-relic-infrastructure)
        </td>

        <td>
          Cuando instalas la infraestructura y el agente APM en el mismo host, se detectan automáticamente entre sí. Luego puede ver una lista de hosts en la UI de APM y filtrar los hosts de su infraestructura por aplicación APM en nuestra UI de infraestructura. Para obtener más información, consulte [Datos de APM en la UI de la infraestructura](/docs/infrastructure/new-relic-infrastructure/data-instrumentation/new-relic-apm-data-infrastructure).
        </td>
      </tr>

      <tr>
        <td>
          [Dashboards](/docs/query-your-data/explore-query-data/dashboards/introduction-new-relic-one-dashboards)
        </td>

        <td>
          El agente .NET envía [un evento y atributo predeterminados](/docs/insights/insights-data-sources/default-events-attributes/apm-default-event-attributes) para [la consulta NRQL](/docs/query-your-data/explore-query-data/query-builder/use-advanced-nrql-mode-specify-data). También puedes [grabar eventos personalizados](/docs/insights/insights-data-sources/custom-data/insert-custom-events-new-relic-apm-agents) para análisis avanzado.
        </td>
      </tr>
    </tbody>
  </table>
</TabsPageItem>

<TabsPageItem id="framework">
  ## Requisitos

  Antes de [instalar el agente .NET de New Relic](/docs/apm/agents/net-agent/getting-started/introduction-new-relic-net/#installation), asegúrese de que su sistema cumpla con estos requisitos:

  <CollapserGroup>
    <Collapser className="freq-link" id="net-version-framework" title="Versión framework .NET">
      **<DNT>.NET Framework 4.6.2</DNT> o superior**

      Para ejecutar la aplicación en <DNT>.NET Framework</DNT> 4.6.2 o superior, debe ejecutar New Relic <DNT>.NET agent</DNT> 10.0 o superior. Para ejecutar una aplicación en .NET Framework versión 4.0 o anterior, debe ejecutar una versión del agente New Relic .NET anterior a 7.0. Para obtener más información y procedimientos de descarga, consulte [Soporte técnico para .NET Framework 4.0 o anterior](/docs/agents/net-agent/troubleshooting/technical-support-net-frameworks-40-or-earlier).

      <DNT>**The <DNT>.NET agent </DNT>doesn&apos;t support .NET Framework versions 4.5.1, 4.5.2, and 4.6.1**</DNT>
    </Collapser>

    <Collapser className="freq-link" id="lifespan-framework" title="Vida útil de la aplicación">
      El agente .NET carga datos al final de cada [ciclo de recolección](/docs/new-relic-solutions/get-started/glossary/#harvest-cycle) (una vez por minuto). Si su aplicación .NET no se ejecuta durante tanto tiempo, puede establecer el atributo `sendDataOnExit` del elemento `service` en `true` en el archivo `newrelic.config` .
    </Collapser>

    <Collapser className="freq-link" id="app-web-servers-framework" title="Servidores de aplicaciones/web">
      Debe utilizar uno de estos servidores web/aplicaciones:

      * IIS
      * OWIN autohospedado
      * WCF autohospedado
      * Cernícalo
      * Kestrel con proxy inverso IIS a través de AspNetCoreModule
      * Kestrel con proxy inverso IIS a través de AspNetCoreModuleV2

      El agente crea automáticamente transacciones para aplicaciones alojadas en IIS. Si se autohospeda con WCF y OWIN versión 3 o superior, el agente también crea transacciones automáticamente. Para otros servicios autohospedados, deberá [crear transacciones mediante instrumentación personalizada](/docs/apm/agents/net-agent/custom-instrumentation/introduction-net-custom-instrumentation/#new-existing).
    </Collapser>

    <Collapser className="freq-link" id="aws-elastic-beanstalk-framework" title="AWS Elastic Beanstalk">
      AWS [Elastic Beanstalk](https://aws.amazon.com/elasticbeanstalk) no es un entorno .NET compatible.
    </Collapser>

    <Collapser className="freq-link" id="clrs-framework" title="CLR">
      El agente requiere CLR versión 4.0. La aplicación legacy que se ejecuta en CLR 2.0 se puede instrumentar con versiones del agente inferiores a 7.0.
    </Collapser>

    <Collapser className="freq-link" id="code-access-framework" title="Seguridad de acceso al código">
      El uso de [Code Access Security](https://docs.microsoft.com/en-us/dotnet/framework/misc/code-access-security) es compatible con el agente .NET solo cuando se proporciona Full Trust. El agente no es compatible con niveles de confianza más restrictivos.
    </Collapser>

    <Collapser className="freq-link" id="azure-framework" title="Microsoft Azure">
      Para obtener instrucciones de instalación específicas de Azure, consulte la [guía de instalación de .NET](/install/dotnet/).
    </Collapser>

    <Collapser className="freq-link" id="network-reqs-framework" title="Requisitos de red">
      El agente requiere que su firewall permita conexiones salientes a [redes y puertos](/docs/new-relic-solutions/get-started/networks/) específicos.
    </Collapser>

    <Collapser className="freq-link" id="operating-system-framework" title="Sistema operativo">
      El agente requiere uno de estos sistema operativo:

      * Servidor Windows 2008
      * Servidor Windows 2008 R2
      * Servidor Windows 2012
      * Servidor Windows 2012 R2
      * Servidor Windows 2016
      * Servidor Windows 2019
      * Servidor Windows 2022
      * Windows 10
      * Windows 11
      * Windows Azure (familia de sistemas operativos 1, 2 y 3)

      El agente admite la ejecución en versiones en contenedores de todos los sistemas operativos Windows compatibles, con la excepción conocida de `nanoserver`.
    </Collapser>

    <Collapser className="freq-link" id="user-rights-framework" title="Permisos">
      La instalación requiere privilegios elevados (administrador). Por ejemplo, puedes:

      * Inicie sesión como usuario administrador.

      * Ser miembro del grupo administrador.

      * En el sistema operativo más nuevo, proporcione credenciales de elevación cuando aparezca el símbolo.

      El proceso de supervisión debe tener acceso de lectura/escritura al directorio en el que está instalado el agente. El agente se ejecuta como parte del proceso de supervisión y depende de esos permisos para funcionar.

      <DNT>**Recommendation:**</DNT>

      * Restrinja los permisos para el archivo `newrelic.config` y otorgue acceso de lectura/escritura solo al propietario del proceso de supervisión.

      * Revisar los permisos del log creado por el agente para minimizar la cantidad de usuarios con acceso y sus privilegios.
    </Collapser>

    <Collapser className="freq-link" id="architecture-framework" title="Arquitectura del procesador">
      El agente está disponible en versiones de 32 y 64 bits. En sistemas de 64 bits, el agente de 64 bits puede implementar aplicaciones de 32 y 64 bits.
    </Collapser>

    <Collapser className="freq-link" id="security-requirements-framework" title="Requerimientos de seguridad">
      Como [medida de seguridad estándar para la recopilación de datos](/docs/security/security-privacy/data-privacy/security-controls-privacy/), su servidor de aplicaciones debe admitir SHA-2 (256 bits). SHA-1 no es compatible.
    </Collapser>

    <Collapser className="freq-link" id="other-apm-framework" title="Uso de otro software de monitoreo">
      .NET Common Language Runtime (CLR) solo permite que un generador de perfiles acceda a la API de creación de perfiles de un proceso en un momento dado. Ejecutar nuestro agente .NET junto con otro software de monitoreo resultará en un [conflicto generador de perfiles](/docs/apm/agents/net-agent/troubleshooting/profiler-conflicts/). Para obtener más información, consulte [Errores al utilizar otro software APM](/docs/apm/new-relic-apm/troubleshooting/errors-while-using-other-apm-software).
    </Collapser>
  </CollapserGroup>

  ## Instrumentación automática [#instrumented-features-framework]

  Si su aplicación está alojada en ASP.NET u otro [frameworktotalmente compatible](#app-frameworks-framework), el agente .NET instrumentará automáticamente su aplicación luego de la instalación. Si su aplicación no está instrumentada automáticamente, o si desea agregar instrumentación, use [instrumentación personalizada](/docs/apm/agents/net-agent/custom-instrumentation/introduction-net-custom-instrumentation/).

  <CollapserGroup>
    <Collapser className="freq-link" id="app-frameworks-framework" title="Marco de la aplicación">
      El agente instrumentó automáticamente algunos marcos de aplicación; nos referimos a estos marcos como <DNT>**fully supported**</DNT>, que se enumeran a continuación:

      * ASP.NET MVC 2
      * ASP.NET MVC 3
      * ASP.NET MVC 4
      * ASP.NET MVC 5
      * API web ASP.NET v2
      * ASP..NET Core MVC 2.0
      * ASP..NET Core 2.1
      * ASP..NET Core 2.2
      * Formularios web ASP.NET
      * Castle MonoRail v2 (ya no es compatible con la versión 10.0 o superior del agente .NET)
      * Aplicación API web alojada en OWIN en .NET framework usando:
      * Microsoft.Owin.Host.HttpListener v2.x
      * Microsoft.Owin.Host.HttpListener v3.x
      * Microsoft.Owin.Host.HttpListener v4.x
      * Servicios web basados en SOAP
      * [WCF](/docs/apm/agents/net-agent/other-installation/install-net-agent-windows-communication-foundation-wcf/)
    </Collapser>

    <Collapser className="freq-link" id="binding-types-framework" title="Tipos de encuadernación">
      La instrumentación WCF se probó para los siguientes [tipos de enlaces](https://docs.microsoft.com/en-us/dotnet/framework/wcf/system-provided-bindings) comunes (tanto de cliente como de servicio). Hay disponibles distintos niveles de soporte para el rastreo distribuido (DT) y el rastreo multiaplicación (CAT):

      <table>
        <thead>
          <tr>
            <th>
              Vinculante
            </th>

            <th>
              Soporte rastreo distribuido (DT)
            </th>

            <th>
              Soporte de seguimiento de múltiples aplicaciones (CAT) (obsoleto)
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              HTTP básico
            </td>

            <td>
              soportado
            </td>

            <td>
              soportado
            </td>
          </tr>

          <tr>
            <td>
              WebHTTP
            </td>

            <td>
              soportado
            </td>

            <td>
              soportado
            </td>
          </tr>

          <tr>
            <td>
              WSHTTP
            </td>

            <td>
              soportado
            </td>

            <td>
              soportado
            </td>
          </tr>

          <tr>
            <td>
              NetTCP
            </td>

            <td>
              soportado
            </td>

            <td>
              soportado
            </td>
          </tr>

          <tr>
            <td>
              NetNamedPipe
            </td>

            <td>
              No soportado\*
            </td>

            <td>
              No soportado\*
            </td>
          </tr>

          <tr>
            <td>
              NetMSMQ
            </td>

            <td>
              No soportado\*
            </td>

            <td>
              No soportado\*
            </td>
          </tr>
        </tbody>
      </table>

      \* rastreo distribuido puede implementarse manualmente utilizando estos métodos [API de rastreo distribuido](/docs/understand-dependencies/distributed-tracing/enable-configure/enable-distributed-tracing#agent-apis) .
    </Collapser>

    <Collapser className="freq-link" id="database-framework" title="Almacenes de datos">
      La recopilación [de detalles de instancia](/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues) para almacenes de datos compatibles requiere la versión 6.5.29.0 o superior del agente .NET y está habilitada de forma predeterminada. Para solicitar información a nivel de instancia de almacenes de datos que no figuran actualmente en la lista, obtenga soporte en [el centro de soporte de New Relic](https://support.newrelic.com).

      Para instrumentar automáticamente el rendimiento de las llamadas de la aplicación .NET framework a estos almacenes de datos, asegúrese de tener la [versión 8.14 o superior del agente .NET](/docs/release-notes/agent-release-notes/net-release-notes):

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Almacenamiento de datos
            </th>

            <th style={{ width: "150px" }}>
              [Detalles de la instancia](/docs/apm/apm-ui-pages/features/analyze-database-instance-level-performance-issues/)
            </th>

            <th>
              Otras notas
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Cosmos DB
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              El agente .NET `v9.2.0` o superior instrumenta automáticamente la biblioteca [Microsoft.Azure.Cosmos](https://www.nuget.org/packages/Microsoft.Azure.Cosmos) .

              * Versión mínima admitida: 3.17.0
              * Última versión compatible verificada: 3.58.0
              * Las versiones 3.35.0 y superiores son compatibles a partir del agente .NET v10.32.0
            </td>
          </tr>

          <tr>
            <td>
              Base del sofá
            </td>

            <td />

            <td>
              Utilice [CouchbaseNetClient](https://www.nuget.org/packages/CouchbaseNetClient/).

              * Versión mínima admitida: 2.0.0
              * Última versión compatible verificada: 3.6.6
              * La versión 3.2.0 y posteriores son compatibles a partir del agente .NET v10.40.0
              * Versiones incompatibles conocidas: 3.0.x, 3.1.x

              Con CouchbaseNetClient 2.x, lo siguiente no se instrumenta de manera predeterminada en favor de sus contrapartes de múltiples documentos:

              * `Get(string key)`
              * `GetDocument(string key)`
              * `Remove(string key)`
              * `Remove(string key, ulong cas)`
              * `Upsert<T>(string key, T value)`
            </td>
          </tr>

          <tr>
            <td>
              DB2
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td />
          </tr>

          <tr>
            <td>
              Servidor Microsoft SQL
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Utilice SqlClient del paquete [System.Data.SqlClient](https://www.nuget.org/packages/System.Data.SqlClient) NuGet o del paquete [Microsoft.Data.SqlClient](https://www.nuget.org/packages/Microsoft.Data.SqlClient) NuGet o del ensamblado System.Data integrado en framework .

              <DNT>**System.Data.SqlClient**</DNT>

              * Versión mínima admitida: 4.4.0
              * Última versión compatible verificada: 4.8.6

              <DNT>**Microsoft.Data.SqlClient**</DNT>

              * Versión mínima admitida: 1.0.19239.1
              * Última versión compatible verificada: 7.0.0

              <DNT>**System.Data**</DNT>

              * Versión mínima admitida: .NET framework 4.6.2
              * Última versión compatible verificada: 4.8
            </td>
          </tr>

          <tr>
            <td>
              System.Data.ODBC
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Emplee el namespace `System.Data.ODBC` integrado del marco .NET.

              * Disponible en todas las versiones del agente .NET Framework compatibles actualmente.
              * Se verificó que todas las versiones del marco .NET actualmente compatibles con Microsoft son compatibles.
            </td>
          </tr>

          <tr>
            <td>
              MongoDB (controlador legacy )
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Versión mínima admitida: 1.10.0

              Última versión compatible verificada: 1.10.0

              Versiones incompatibles conocidas: los detalles de la instancia no están disponibles en la versión 2 anterior.
            </td>
          </tr>

          <tr>
            <td>
              MongoDB (controlador moderno)
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Versión mínima admitida: 2.3.0

              Última versión compatible verificada: 3.7.1

              Versiones 3.0.0 y superiores son compatibles a partir del agente .NET v10.40.0.

              A partir de la versión 10.12.0 del agente, se instrumentan los siguientes métodos agregados en la versión 2.7 del controlador o después:

              * `IMongoCollection.CountDocuments[Async]`
              * `IMongoCollection.EstimatedDocumentCount[Async]`
              * `IMongoCollection.AggregateToCollection[Async]`
              * `IMongoDatabase.ListCollectionNames[Async]`
              * `IMongoDatabase.Aggregate[Async]`
              * `IMongoDatabase.AggregateToCollection[Async]`
              * `IMongoDatabase.Watch[Async]`
            </td>
          </tr>

          <tr>
            <td>
              MySQL
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Utilice [MySQL.Data](https://www.nuget.org/packages/MySql.Data/) o [MySQL Connector](https://github.com/mysql-net/MySqlConnector)

              <DNT>**MySql.Data**</DNT>

              * Versión mínima admitida: 6.10.7
              * Última versión compatible verificada: 9.6.0

              <DNT>**MySqlConnector**</DNT>

              * Versión mínima admitida: 1.0.1
              * Última versión compatible verificada: 2.5.0
            </td>
          </tr>

          <tr>
            <td>
              Oracle
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Emplee [Oracle.ManagedDataAccess](https://www.nuget.org/packages/Oracle.ManagedDataAccess/)

              * Versión mínima compatible: 12.1.2400
              * Última versión compatible verificada: 23.26.200
            </td>
          </tr>

          <tr>
            <td>
              PostgreSQL
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Utilice [Npgsql](https://www.nuget.org/packages/Npgsql/)

              * Versión mínima soportada: 4.0.0
              * Última versión compatible verificada: 7.0.7

              También se pueden instrumentar versiones anteriores de Npgsql, pero es posible que haya duplicados y/o faltan métricas.
            </td>
          </tr>

          <tr>
            <td>
              ServiceStack.Redis
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              * Última versión compatible verificada: 4.0.40
              * Versiones incompatibles conocidas: 4.0.44 o superior
            </td>
          </tr>

          <tr>
            <td>
              StackExchange.Redis
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              * Versión mínima admitida: 1.0.488
              * Última versión compatible verificada: 2.12.14
            </td>
          </tr>

          <tr>
            <td>
              Elasticsearch
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Utilice [Elastic.Clients.Elasticsearch](https://www.nuget.org/packages/Elastic.Clients.Elasticsearch), [NEST](https://www.nuget.org/packages/NEST) o [Elasticsearch.Net](https://www.nuget.org/packages/Elasticsearch.Net).

              <DNT>**Elastic.Clients.Elasticsearch**</DNT>

              * Versión mínima admitida: 8.0.0
              * Versión máxima compatible: 8.15.10
              * Se admiten las versiones 8.10.0 y superiores a partir del agente .NET v10.20.1
              * Las versiones 8.12.1 y superiores son compatibles a partir del agente .NET v10.23.0

              <DNT>**NEST**</DNT>

              * Versión mínima soportada: 7.0.0
              * Última versión compatible verificada: 7.17.5

              <DNT>**Elasticsearch.Net**</DNT>

              * Versión mínima soportada: 7.0.0
              * Última versión compatible verificada: 7.17.5
            </td>
          </tr>

          <tr>
            <td>
              Memcached
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Emplee [EnyimMemcachedCore](https://www.nuget.org/packages/EnyimMemcachedCore).

              * Versión mínima admitida: 2.0.0
              * Última versión compatible verificada: 3.4.6
            </td>
          </tr>

          <tr>
            <td>
              DinamoDB
            </td>

            <td className="fcenter">
              <Icon style={{color: '#328787'}} name="fe-check" />
            </td>

            <td>
              Emplee [AWSSDK.DynamoDBv2](https://www.nuget.org/packages/AWSSDK.DynamoDBv2).

              * Versión mínima compatible: 3.5.0

              * Última versión compatible verificada: 4.0.17.8

              * Versión mínima del agente requerida: 10.33.0
            </td>
          </tr>
        </tbody>
      </table>

      El agente .NET no recopila datos sobre los procesos del servidor de almacenamiento de datos. Solo recopila datos del uso de la biblioteca del cliente de almacenamiento de datos. Para monitorear directamente los procesos del servidor de almacenamiento de datos, emplee el agente New Relic Infrastructure con [integración en el host](/docs/infrastructure/host-integrations/get-started/introduction-host-integrations/).

      De forma predeterminada, el agente .NET no captura parámetros SQL para procedimientos almacenados o consultas parametrizadas en una traza de consulta. Para ver estos parámetros SQL, debe habilitar la característica de colección en la [configuración del agente](/docs/apm/agents/net-agent/configuration/net-agent-configuration/#datastore-tracer-query-parameters).

      De forma predeterminada, el agente recopila [detalles de instancia](/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues) para todos los almacenes de datos compatibles. Para aplicar asistencia para otros almacenes de datos, comunicar con el soporte en [support.newrelic.com](https://support.newrelic.com).

      Si su almacenamiento de datos no aparece aquí, puede agregar instrumentación personalizada empleando el método `RecordDatastoreSegment` en la [API del agente .NET](/docs/apm/agents/net-agent/net-agent-api/net-agent-api/#ITransaction).
    </Collapser>

    <Collapser className="freq-link" id="cms" title="CMS">
      El agente instrumentó automáticamente el sistema de gestión de contenidos <DNT>**EPiServer**</DNT> .
    </Collapser>

    <Collapser className="freq-link" id="additional-frameworks-framework" title="Biblioteca de llamadas externas">
      El agente instrumentó automáticamente estas bibliotecas de llamadas externas:

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Bibliotecas
            </th>

            <th>
              <DNT>**Supported methods**</DNT>
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Cliente HTTP
            </td>

            <td>
              El agente instrumentó estos métodos HttpClient:

              * `SendAsync`
              * `GetAsync`
              * `PostAsync`
              * `PutAsync`
              * `DeleteAsync`
              * `GetStringAsync`
              * `GetStreamAsync`
              * `GetByteArrayAsync`
            </td>
          </tr>

          <tr>
            <td>
              Descanso agudo
            </td>

            <td>
              El agente instrumentó estos métodos RestSharp:

              * `ExecuteTaskAsync`

              * `ExecuteGetTaskAsync`

              * `ExecutePostTaskAsync`

              * `Execute`

              * `ExecuteAsGet`

              * `ExecuteAsPost`

              * `DownloadData`

                Versión mínima admitida: 105.2.3

                Última versión compatible verificada: 113.1.0

                Versiones incompatibles conocidas: 106.8.0, 106.9.0, 106.10.0, 106.10.1
            </td>
          </tr>

          <tr>
            <td>
              Solicitud HttpWeb
            </td>

            <td>
              El agente instrumentó estos métodos HttpWebRequest:

              * `GetResponse`
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="hosting-models-framework" title="Modelos de hosting">
      Los siguientes modelos de alojamiento son totalmente compatibles:

      * IIS alojado (con y sin compatibilidad ASP)
      * Autohospedado
    </Collapser>

    <Collapser className="freq-link" id="hosting-models-framework" title="Modelos de invocación">
      Se admiten los siguientes métodos de invocación (tanto de cliente como de servicio):

      * Sincrónico
      * Modelo de procesamiento asincrónico (APM) Inicio/Fin
      * Procesamiento asincrónico de tareas (TAP)
      * Procesamiento asincrónico basado en eventos (EAP, solo soporte del cliente)
    </Collapser>

    <Collapser className="freq-link" id="large-language-models-framework" title="Modelo de lenguaje extenso (LLM)">
      El agente .NET [se puede configurar](/docs/apm/agents/net-agent/configuration/net-agent-configuration/#ai_monitoring) para instrumentar automáticamente estos marcos LLM:

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Frameworks
            </th>

            <th>
              Versión mínima framework
            </th>

            <th>
              Versión mínima del agente
            </th>

            <th>
              Última versión compatible verificada
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              AWS Bedrock
            </td>

            <td>
              3.7.200.0
            </td>

            <td>
              10.23.0 (`InvokeModelAsync`) 10.37.0 (`InvokeModelAsync`, `ConverseAsync`)
            </td>

            <td>
              4.0.17.3
            </td>
          </tr>

          <tr>
            <td>
              OpenAI
            </td>

            <td>
              2.0.0
            </td>

            <td>
              10.37.0 (`CompleteChat`, `CompleteChatAsync` - solo se admiten finalizaciones `Text` )
            </td>

            <td>
              2.8.0
            </td>
          </tr>

          <tr>
            <td>
              Azure.AI.OpenAI
            </td>

            <td>
              2.0.0
            </td>

            <td>
              10.37.0 (`CompleteChat`, `CompleteChatAsync` - solo se admiten finalizaciones `Text` )
            </td>

            <td>
              2.8.0-beta1
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="logging-frameworks-framework" title="Marco de registro">
      El agente .NET [se puede configurar](/docs/apm/agents/net-agent/configuration/net-agent-configuration/#application_logging) para instrumentar automáticamente este marco de registro para un contexto de inicio de sesión automático con [reenvío de agente](/docs/logs/logs-context/net-configure-logs-context-all/#1-agent) y [decoración log local](/docs/logs/logs-context/net-configure-logs-context-all/#2-decorate):

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Frameworks
            </th>

            <th>
              Versión mínima framework
            </th>

            <th>
              Versión mínima del agente
            </th>

            <th>
              Última versión compatible verificada
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Log4Net
            </td>

            <td>
              1.2.10
            </td>

            <td>
              9.7.0
            </td>

            <td>
              3.3.0
            </td>
          </tr>

          <tr>
            <td>
              Serilog
            </td>

            <td>
              2.0.0
            </td>

            <td>
              9.7.0
            </td>

            <td>
              4.3.1
            </td>
          </tr>

          <tr>
            <td>
              NLog
            </td>

            <td>
              4.1.0
            </td>

            <td>
              9.7.0
            </td>

            <td>
              6.1.2
            </td>
          </tr>

          <tr>
            <td>
              Microsoft.Extensions.Logging
            </td>

            <td>
              3.0.0
            </td>

            <td>
              9.7.0
            </td>

            <td>
              10.0.6
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="messaging-framework" title="Mensajería">
      El agente instrumentó automáticamente estos sistemas de mensajes:

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Bibliotecas
            </th>

            <th>
              <DNT>**Supported methods**</DNT>
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Confluent.Kafka
            </td>

            <td>
              * Producir y consumir sobre temas.

              * Se instrumentan los siguientes métodos:

                * `IProducer.Produce`
                * `IProducer.ProduceAsync`
                * `IConsumer.Consume`

              * Versión mínima admitida: 1.4.0

              * Última versión compatible verificada: 2.13.1
            </td>
          </tr>

          <tr>
            <td>
              MSMQ
            </td>

            <td>
              * Envío y recepción de mensajes, visualización de colas y purga
            </td>
          </tr>

          <tr>
            <td>
              NServicioBus
            </td>

            <td>
              * Pone y recibe mensajes.

              * Versión mínima soportada: 5.0

              * Última versión compatible verificada: 8.2.4
            </td>
          </tr>

          <tr>
            <td>
              RabbitMQ
            </td>

            <td>
              * Coloca y recibe mensajes y elimina colas.

              * Al recibir mensajes utilizando un `IBasicConsumer`, el `EventingBasicConsumer` es la única implementación instrumentada por el agente .NET.

              * `BasicGet` Está instrumentado, pero el agente no soporta [rastreo distribuido](/docs/distributed-tracing/concepts/introduction-distributed-tracing/) para `BasicGet`.

              * Se instrumentan los siguientes métodos:

                * `IModel.BasicGet`
                * `IModel.BasicPublish`
                * `IModel.BasicConsume`
                * `IModel.QueuePurge`
                * `EventingBasicConsumer.HandleBasicDeliver`

              * Versión mínima soportada: 3.5.2

              * Última versión compatible verificada: 6.8.1
            </td>
          </tr>

          <tr>
            <td>
              MassTransit (versiones del agente 10.19.0 y posteriores)
            </td>

            <td>
              * Publicar/enviar y consumir mensajes

              * Versión mínima soportada: 7.1.0

              * Última versión compatible verificada: 8.5.7
            </td>
          </tr>

          <tr>
            <td>
              AWSSDK.SQS (Amazon Simple Queue Service) (versiones del agente 10.27.0 y posteriores)
            </td>

            <td>
              * Enviar y recibir mensajes

              * Versión mínima compatible: 3.7.0

              * Última versión compatible verificada: 4.0.2.25
            </td>
          </tr>

          <tr>
            <td>
              AWSSDK.Kinesis (Amazon Kinesis Data Streams) (versiones del agente 10.40.0 y posteriores)
            </td>

            <td>
              * Las operaciones `PutRecord(s)Async` y `GetRecordsAsync` se instrumentan como operaciones de intermediario de mensajes. Otras operaciones de Kinesis se instrumentan como llamadas a métodos básicos.

              * Versión mínima compatible: 3.7.0

              * Última versión compatible verificada: 4.0.8.11
            </td>
          </tr>

          <tr>
            <td>
              AWSSDK.KinesisFirehose (Amazon Kinesis Firehose) (versiones del agente 10.40.0 y posteriores)
            </td>

            <td>
              * Todas las operaciones de Kinesis Firehose se instrumentan como llamadas a métodos básicos.

              * Versión mínima compatible: 3.7.0

              * Última versión compatible verificada: 4.0.3.24
            </td>
          </tr>

          <tr>
            <td>
              Azure Service Bus (Azure.Messaging.ServiceBus) (versiones del agente 10.42.0 y posteriores)
            </td>

            <td>
              * Enviar y recibir mensajes

              * Admite el modo Procesador.

              * Se instrumentan los siguientes métodos:

                * `Azure.Messaging.ServiceBus.ReceiverManager.ProcessOneMessageWithinScopeAsync`

                * `Azure.Messaging.ServiceBus.ServiceBusProcessor.OnProcessMessageAsync`

                * `Azure.Messaging.ServiceBus.ServiceBusSender`

                  * `SendMessagesAsync`
                  * `ScheduleMessagesAsync`
                  * `CancelScheduledMessagesAsync`

                * `Azure.Messaging.ServiceBus.ServiceBusReceiver`

                  * `ReceiveMessagesAsync`
                  * `ReceiveDeferredMessagesAsync`
                  * `PeekMessagesInternalAsync`
                  * `CompleteMessageAsync`
                  * `AbandonMessageAsync`
                  * `DeadLetterInternalAsync`
                  * `DeferMessageAsync`
                  * `RenewMessageLockAsync`

              * Versión mínima compatible: 7.11.0

              * Última versión compatible verificada: 7.18.2
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="background-jobs-workflows-framework" title="Trabajos en segundo plano y flujos de trabajo">
      El agente .NET instrumentó automáticamente el rendimiento de las llamadas de la aplicación .NET a estas bibliotecas de trabajos en segundo plano y flujos de trabajo:

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Frameworks
            </th>

            <th>
              Versión mínima framework
            </th>

            <th>
              Versión mínima del agente
            </th>

            <th>
              Última versión compatible verificada
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Hangfire
            </td>

            <td>
              1.7.0
            </td>

            <td>
              10.51.0
            </td>

            <td>
              1.8.23
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="technologies-framework" title="Lenguajes y tecnologías .NET compatibles para el dashboard">
      Los lenguajes y tecnologías .NET enumerados son compatibles con nuestro dashboard [de observabilidad instantánea](https://newrelic.com/instant-observability/) . Si utiliza alguno de estos lenguajes o tecnologías, puede ver sus datos en un dashboard de New Relic, listo para usar:

      <table>
        <thead>
          <tr>
            <th style={{ width: "200px" }}>
              Idioma/tecnología
            </th>

            <th>
              Configuración adicional
            </th>
          </tr>
        </thead>

        <tbody>
          <tr>
            <td>
              Aplicación c#
            </td>

            <td>
              New Relic puede instrumentar automáticamente servicios escritos en C#. Vaya a nuestra página de inicio rápido de C# para [instalar el dashboard de C#](https://newrelic.com/instant-observability/c-sharp).
            </td>
          </tr>

          <tr>
            <td>
              ADO.net
            </td>

            <td>
              Si su aplicación utiliza ADO.net, puede instalar una combinación de agente New Relic que genera un dashboard de ADO.net. Esto es lo que debes hacer:

              1. Instale el agente New Relic APM .NET y el agente de infraestructura siguiendo los pasos de nuestra [instalación guiada](https://one.newrelic.com/marketplace?state=bf68ca4b-b7cc-3227-fcc3-3349f5aa92f6).
              2. Instale la integración en el host de Microsoft Windows Perfmon/WMI para New Relic Infrastructure [siguiendo las instrucciones de nri-perfmon](https://github.com/newrelic/nri-perfmon#nri-perfmon---windows-perfmonwmi-on-host-integration-for-new-relic-infrastructure).
              3. Si instaló Perfmon manualmente, [reinicie su agente de infraestructura](/docs/infrastructure/install-infrastructure-agent/manage-your-agent/start-stop-restart-infrastructure-agent).
              4. Vaya a nuestra página de inicio rápido de ADO.NET para [instalar el dashboard de ADO.NET](https://newrelic.com/instant-observability/ado-dotnet).
            </td>
          </tr>

          <tr>
            <td>
              Servidor Blazor
            </td>

            <td>
              Realice un seguimiento de sus datos más importantes en nuestro dashboard de Blazor Server instrumentando su aplicación con New Relic:

              1. Instale el agente New Relic APM .NET y el agente de infraestructura siguiendo los pasos de nuestra [instalación guiada](https://one.newrelic.com/marketplace?state=bf68ca4b-b7cc-3227-fcc3-3349f5aa92f6). Si lo prefiere, puede [instalar el agente de infraestructura](/docs/infrastructure/install-infrastructure-agent/linux-installation/install-infrastructure-monitoring-agent-linux) a través de la línea de comando.

              2. Obtenga el dashboard prediseñado [instalando el inicio rápido de Blazor](https://newrelic.com/instant-observability/blazor-server)

              3. Desde <DNT>**[one.newrelic.com](https://one.newrelic.com/all-capabilities)**</DNT>, vaya a <DNT>**APM &amp; services**</DNT> y luego seleccione su aplicación. Para comprobar que su instalación es exitosa, consulte lo siguiente:

                 ```sql
                 FROM Transaction SELECT count(*) FACET request.uri
                 ```

              Si aparecen datos, ha instrumentado su aplicación correctamente.
            </td>
          </tr>
        </tbody>
      </table>
    </Collapser>

    <Collapser className="freq-link" id="unsupported-frameworks-framework" title="Marco no compatible">
      Estos marcos **no son totalmente compatibles:**

      * <DNT>**ASP.NET Web API v1:**</DNT> Consulte la [información sobre resolución de problemas](/docs/agents/net-agent/troubleshooting/web-api-transactions-are-missing) sobre el uso de ASP.NET Web API v1 con el agente .NET 5.0 o superior de New Relic para aplicaciones orientadas a .NET framework 4.0. (Esto no afecta a .NET framework 4.5 o superior).
      * <DNT>**Mono:**</DNT> New Relic no es compatible con [Mono](https://www.mono-project.com/), un framework .NET de código abierto que se ejecuta en Linux. Esto se debe a que no existe una API Profiler para inyectar en el agente .NET como generador de perfiles en la aplicación .NET basada en Mono. La API del generador de perfiles es una interfaz basada en el modelo de objetos componentes (COM) y no es compatible con Linux.
      * ASP clásico es <DNT>**not supported**</DNT>, porque el agente solo puede implementar aplicaciones basadas en .NET framework .
      * SharePoint es <DNT>**not supported**</DNT>.
    </Collapser>
  </CollapserGroup>

  ### Característica no disponible [#unavailable-features-framework]

  La compilación justo a tiempo (JIT) es un requisito para la funcionalidad del agente .NET, por lo que el agente .NET no admite las imágenes nativas creadas con [Native Image Generator (NGEN)](https://docs.microsoft.com/en-us/dotnet/framework/tools/ngen-exe-native-image-generator) .

  ### Conecte el agente a otros productos New Relic [#digital-intelligence-platform-framework]

  Además de [APM](/docs/apm/new-relic-apm/getting-started/introduction-apm/), el agente se integra con otros productos de New Relic para brindarle visibilidad de un extremo a otro:

  <table>
    <thead>
      <tr>
        <th style={{ width: "200px" }}>
          Producto
        </th>

        <th>
          integracion
        </th>
      </tr>
    </thead>

    <tbody>
      <tr>
        <td>
          [Monitoreo del navegador](/docs/browser/browser-monitoring/getting-started/introduction-browser-monitoring/)
        </td>

        <td>
          Para la aplicación web ASP.NET, el agente .NET inyecta automáticamente el agente JavaScript del navegador cuando [habilita la instrumentación automática](/docs/browser/browser-monitoring/installation/install-browser-monitoring-agent/#select-apm-app).

          Después de habilitar la inyección browser , puede ver los datos del navegador en la [página Resumen de APM](/docs/apm/apm-ui-pages/monitoring/apm-summary-page-view-transaction-apdex-usage-data/) y cambiar rápidamente entre los datos <InlinePopover type="apm" />y <InlinePopover type="browser" />de una aplicación en particular. Para opciones de configuración e instrumentación manual, consulte [monitoreo del navegador y el agente .NET](/docs/apm/agents/net-agent/other-features/browser-monitoring-net-agent/).
        </td>
      </tr>

      <tr>
        <td>
          [Monitoreo de infraestructura](/docs/infrastructure/infrastructure-monitoring/get-started/get-started-infrastructure-monitoring/)
        </td>

        <td>
          Cuando instalas la infraestructura y el agente APM en el mismo host, se detectan automáticamente entre sí. Luego puede ver una lista de hosts en la UI de APM y filtrar sus hosts por aplicación de APM en nuestra UI de infraestructura. Para obtener más información, consulte [Datos de APM en UI de infraestructura](/docs/infrastructure/manage-your-data/data-instrumentation/apm-data-infrastructure-monitoring/).
        </td>
      </tr>

      <tr>
        <td>
          [Dashboards](/docs/query-your-data/explore-query-data/dashboards/introduction-dashboards/)
        </td>

        <td>
          El agente .NET envía [un evento y atributo predeterminados](/docs/data-apis/understand-data/event-data/events-reported-apm/) para [la consulta NRQL](/docs/query-your-data/explore-query-data/query-builder/use-advanced-nrql-mode-query-data/). También puedes [grabar eventos personalizados](/docs/data-apis/custom-data/custom-events/apm-report-custom-events-attributes/) para análisis avanzado.
        </td>
      </tr>

      <tr>
        <td>
          [Monitoreo sintetico](/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/)
        </td>

        <td>
          [Sintético traza de la transacción](/docs/synthetics/synthetic-monitoring/using-monitors/collect-synthetic-transaction-traces/) conecta las solicitudes del monitor Sintético a la transacción APM subyacente.
        </td>
      </tr>
    </tbody>
  </table>
</TabsPageItem>