---
title: .NET agent: compatibility and requirements
source: https://docs.newrelic.com/docs/apm/agents/net-agent/getting-started/net-agent-compatibility-requirements
---

New Relic's .NET agent supports both .NET Framework and .NET Core. This document describes compatibility and support for .NET runtimes, frameworks and libraries.

The agent includes built-in instrumentation for some of the most popular parts of the .NET ecosystem, including frameworks, databases, and message queuing systems. After you [download and install](/install/dotnet) the agent, it runs within the monitored process. The agent doesn't create a separate process or service.

For frameworks and libraries that aren't [automatically instrumented](#instrumented-features), you can extend the agent with [.NET custom instrumentation](https://docs.newrelic.com/docs/agents/net-agent/custom-instrumentation/introduction-net-custom-instrumentation).

Want to try out our .NET agent? [Create a New Relic account](https://newrelic.com/signup) for free! No credit card required.

## .NET Core

### Requirements [#requirements]

Before you install the New Relic .NET agent on Windows or Linux, make sure your system meets these requirements:

**.NET Core version**

The .NET agent is compatible with .NET Core version 3.1, and .NET 5.0, 6.0, 7.0, 8.0, 9.0, and 10.0.

> #### ⚠️ IMPORTANT
>
> The agent is only fully supported when instrumenting applications that target [.NET runtimes currently supported by Microsoft](https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core). The agent is likely to work with the EOL'ed runtimes listed below, but we do not test new versions of the agent with EOL'ed runtimes.

| .NET Core version   | Minimum required .NET agent version |
| ------------------- | ----------------------------------- |
| .NET Core 3.1 (EOL) | 8.21.34.0 and higher                |
| .NET 5.0 (EOL)      | 8.35.0 and higher                   |
| .NET 6.0 (EOL)      | 9.2.0 and higher                    |
| .NET 7.0 (EOL)      | 10.0.0 and higher                   |
| .NET 8.0            | 10.0.0 and higher                   |
| .NET 9.0            | 10.0.0 and higher                   |
| .NET 10.0           | 10.0.0 and higher                   |

> #### ⚠️ IMPORTANT
>
> On Linux ARM64 platforms, the .NET agent only supports versions of .NET 5.0 or higher.

**App/web servers**

Ensure you use one of these app/web servers:

-   Kestrel
-   Kestrel with IIS reverse proxy via AspNetCoreModule
-   Kestrel with IIS reverse proxy via AspNetCoreModuleV2
-   Kestrel with Nginx reverse proxy
-   Kestrel with Apache reverse proxy
-   In-process hosting

**AWS Elastic Beanstalk**

For [AWS Elastic Beanstalk](https://aws.amazon.com/elasticbeanstalk) installation instructions, see the [.NET installation guide](/install/dotnet/).

**Microsoft Azure**

For Azure-specific installation instructions, see the [.NET installation guide](/install/dotnet/).

**Network requirements**

The agent requires your firewall to allow outgoing connections to specific [networks and ports](https://docs.newrelic.com/docs/apm/new-relic-apm/getting-started/networks).

**Operating system**

The agent has been verified to work with the following operating systems:

| Operating system                                        | Supported versions                                                                                                                                                                                                                                                                                               |
| ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Windows (32- and 64-bit Intel compatible architectures) | - Windows Server 2008 R2 SP1 - Windows Server 2012 - Windows Server 2012 R2 - Windows Server 2016 - Windows Server 2019 - Windows Server 2022 - Windows Server 2025 - Windows 10 - Windows 11 Containerized versions of these operating systems are also supported, with the exception of `nanoserver`.          |
| Linux (64-bit Intel compatible only)                    | All x64 Linux distributions supported by the .NET Core 2.0+/.NET 5+ runtime are supported by the .NET agent (including containerized versions). For a full list, refer to [Microsoft's documentation](https://learn.microsoft.com/en-us/dotnet/core/install/linux) for the version of the runtime you are using. |
| Linux (ARM64/aarch64 architectures)                     | All ARM64 Linux distributions supported by the .NET 5+ runtime are supported by the .NET agent (including containerized versions), with the following known exceptions: - Alpine Linux                                                                                                                           |

**Permissions**

Installing and running the .NET agent requires these permissions:

| Component         | Necessary permissions                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Install the agent | The process or user that installs the agent must have sufficient permissions to set environment variables and write access to the directory where the agent is installed.                                                                                                                                                                                                                                                                                   |
| Run the agent     | The monitored process must have read/write access to the directory in which you installed the agent. The agent runs as a part of the monitored process and relies on those permissions to function. For applications using IIS via reverse proxy, the group [`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) is often used. |

**Processor architectures**

The agent is available in both 32-bit (x86) and 64-bit (x64) versions on Windows as well as both 64-bit (x64) and ARM64 (aarch64) versions on Linux.

> #### ⚠️ IMPORTANT
>
> On Linux ARM64 platforms, the .NET agent only supports versions of .NET 5.0 or higher.

**Security requirements**

As a standard [security measure for data collection](https://docs.newrelic.com/docs/accounts-partnerships/accounts/security/data-security), your app server must support SHA-2 (256-bit). SHA-1 is not supported.

**Target framework version**

The .NET agent is compatible with applications targeting .NET Core 3.1, and .NET 5.0, 6.0, 7.0, 8.0, 9.0, and 10.0. You can find the target framework in your `.csproj` file. Agent compatibility varies across different versions of .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">
On Linux ARM64 platforms, the .NET agent <DNT>**only**</DNT> supports target frameworks of `net5.0` or higher.
</Callout>

If you want to monitor an ASP.NET Core application targeting .NET Framework, ensure that you have enabled the .NET Framework support after installing the .NET agent.

````

### Automatic instrumentation [#instrumented-features]

If your application is hosted in ASP.NET Core, the agent automatically creates and instruments transactions. The .NET agent automatically instruments your application after install. If your app is not automatically instrumented, or if you want to add instrumentation, use [custom instrumentation](https://docs.newrelic.com/docs/agents/net-agent/custom-instrumentation/introduction-net-custom-instrumentation).

**App frameworks**

The .NET agent automatically instruments these application frameworks:

-   ASP.NET Core MVC 2.0, 2.1, 2.2, 3.0, 3.1, 5.0, 6.0, 7.0, 8.0, 9.0, and 10.0 (includes Web API)
-   ASP.NET Core Razor Pages 6.0, 7.0, 8.0, 9.0, and 10.0 (starting with .NET agent version 10.19.0)

**Datastores**

The .NET agent automatically instruments the performance of .NET application calls to these datastores:

| Datastore               | [Instance details](https://docs.newrelic.com/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues) | Notes                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Cosmos DB               | ✓                                                                                                                                    | The .NET agent `v9.2.0` or higher automatically instruments the [Microsoft.Azure.Cosmos](https://www.nuget.org/packages/Microsoft.Azure.Cosmos) library. - Minimum supported version: 3.17.0 - Latest verified compatible version: 3.63.0 - Versions 3.35.0 and higher are supported beginning with .NET agent v10.32.0                                                                                                                                                                                                                                                                                                                                                                      |
| Couchbase               |                                                                                                                                      | Use [CouchbaseNetClient](https://www.nuget.org/packages/CouchbaseNetClient/). - Minimum supported version: 3.2.0 - Latest verified compatible version: 3.6.6 - Minimum agent version required: 10.40.0                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| IBM DB2                 | ✓                                                                                                                                    | Use `IBM.Data.DB2`. - There are no specific minimum or maximum version requirements for the IBM DB2 driver or server. - Only synchronous methods (for example, `ExecuteReader`, `ExecuteNonQuery`) are automatically instrumented. Asynchronous methods (for example, `ExecuteReaderAsync`) are not supported by default. - The `.NET Core` specific package (`IBM.Data.DB2.Core`) is **not** automatically instrumented. You must use [custom instrumentation](https://docs.newrelic.com/docs/apm/agents/net-agent/custom-instrumentation/introduction-net-custom-instrumentation) to instrument this package.                                                                              |
| Microsoft SQL Server    | ✓                                                                                                                                    | Use SqlClient from [System.Data.SqlClient](https://www.nuget.org/packages/System.Data.SqlClient) NuGet package or [Microsoft.Data.SqlClient](https://www.nuget.org/packages/Microsoft.Data.SqlClient) NuGet package. **System.Data.SqlClient** - Minimum supported version: 4.4.0 - Latest verified compatible version: 4.8.6 **Microsoft.Data.SqlClient** - Minimum supported version: 1.0.19239.1 - Latest verified compatible version: 7.0.3                                                                                                                                                                                                                                              |
| Oracle                  | ✓                                                                                                                                    | Use [Oracle.ManagedDataAccess.Core](https://www.nuget.org/packages/Oracle.ManagedDataAccess.Core/) - Minimum supported version: 23.4.0 - Latest verified compatible version: 23.26.301 Older versions of `Oracle.ManagedDataAccess.Core` may be instrumented, but have not been tested and are not supported.                                                                                                                                                                                                                                                                                                                                                                                |
| PostgreSQL              | ✓                                                                                                                                    | Use [Npgsql](https://www.nuget.org/packages/Npgsql/) - Minimum supported version: 4.0.0 - Latest verified compatible version: 10.0.3 Prior versions of Npgsql may also be instrumented, but duplicate and/or missing metrics are possible.                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| MongoDB (modern driver) | ✓                                                                                                                                    | Minimum supported version: 2.3.0 Latest verified compatible version: 3.11.2 Versions 3.0.0 and higher are supported beginning with .NET agent v10.40.0. Beginning in agent version 10.12.0, the following methods added in or after driver version 2.7 are instrumented: - IMongoCollection.CountDocuments[Async] - IMongoCollection.EstimatedDocumentCount[Async] - IMongoCollection.AggregateToCollection[Async] - IMongoDatabase.ListCollectionNames[Async] - IMongoDatabase.Aggregate[Async] - IMongoDatabase.AggregateToCollection[Async] - IMongoDatabase.Watch[Async]                                                                                                                 |
| MySQL                   | ✓                                                                                                                                    | Use [MySql.Data](https://www.nuget.org/packages/MySql.Data/) or [MySQL Connector](https://github.com/mysql-net/MySqlConnector) **MySql.Data** - Minimum supported version: 6.10.7 - Latest verified compatible version: 26.7.0 - Versions 9.7.0 and higher are supported beginning with .NET agent v10.52.0 **MySqlConnector** - Minimum supported version: 1.0.1 - Latest verified compatible version: 2.6.2                                                                                                                                                                                                                                                                                |
| StackExchange.Redis     | ✓                                                                                                                                    | Minimum supported version: 1.0.488 Latest verified compatible version: 3.2.1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| Elasticsearch           | ✓                                                                                                                                    | Use [Elastic.Clients.Elasticsearch](https://www.nuget.org/packages/Elastic.Clients.Elasticsearch), [NEST](https://www.nuget.org/packages/NEST), or [Elasticsearch.Net](https://www.nuget.org/packages/Elasticsearch.Net). **Elastic.Clients.Elasticsearch** - Minimum supported version: 8.0.0 - Maximum supported version: 9.0.7 - Versions 8.10.0 and higher are supported beginning with .NET agent v10.20.1 - Versions 8.12.1 and higher are supported beginning with .NET agent v10.23.0 **NEST** - Minimum supported version: 7.0.0 - Latest verified compatible version: 7.17.5 **Elasticsearch.Net** - Minimum supported version: 7.0.0 - Latest verified compatible version: 7.17.5 |
| Memcached               | ✓                                                                                                                                    | Use [EnyimMemcachedCore](https://www.nuget.org/packages/EnyimMemcachedCore). - Minimum supported version: 2.0.0 - Latest verified compatible version: 3.5.1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| DynamoDB                | ✓                                                                                                                                    | Use [AWSSDK.DynamoDBv2](https://www.nuget.org/packages/AWSSDK.DynamoDBv2). - Minimum supported version: 3.5.0 - Latest verified compatible version: 4.0.103.8 - Minimum agent version required: 10.33.0                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| System.Data.ODBC        | ✓                                                                                                                                    | Use [System.Data.Odbc](https://www.nuget.org/packages/System.Data.Odbc/). - Minimum supported version: 8.0.0 - Latest verified compatible version: 10.0.12 - Minimum agent version required: 10.35.0 The following features supported for ODBC datastore calls in .NET Framework (using the built-in System.Data namespace) are not supported for .NET 8+: - Connection `Open/OpenAsync` calls - SqlDataReader `Read/NextResult` calls - Slow SQL traces                                                                                                                                                                                                                                     |

The .NET agent doesn't collect data about datastore server processes. It only collects data from datastore client library usage.  To directly monitor datastore server processes, use the New Relic infrastructure agent with [on-host integrations](https://docs.newrelic.com/docs/infrastructure/host-integrations/get-started/introduction-host-integrations/).

By default, the .NET agent doesn't capture SQL parameters for stored procedures or parameterized queries in a query trace. To see these SQL parameters, you must enable the collection feature in the [agent configuration](https://docs.newrelic.com/docs/apm/agents/net-agent/configuration/net-agent-configuration/#datastore-tracer-query-parameters).

Collecting [instance details](https://docs.newrelic.com/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues) for supported datastores is enabled by default. To request instance-level information from datastores not currently listed, get support at [support.newrelic.com](https://support.newrelic.com).

If your datastore isn't listed here, you can add custom instrumentation using the `RecordDatastoreSegment` method in the [.NET agent API](https://docs.newrelic.com/docs/apm/agents/net-agent/net-agent-api/net-agent-api/#ITransaction).

**External call libraries**

The .NET agent automatically instruments these external call libraries :

| Libraries  | **Supported methods**                                                                                                                                                             |
| ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| HttpClient | The agent instruments these HttpClient methods: - `SendAsync` - `GetAsync` - `PostAsync` - `PutAsync` - `DeleteAsync` - `GetStringAsync` - `GetStreamAsync` - `GetByteArrayAsync` |

**Large Language Model (LLM)**

The .NET agent [can be configured](https://docs.newrelic.com/docs/apm/agents/net-agent/configuration/net-agent-configuration/#ai_monitoring) to automatically instrument these LLM frameworks:

| Frameworks      | Minimium framework version | Minimium agent version                                                                | Latest verified compatible version |
| --------------- | -------------------------- | ------------------------------------------------------------------------------------- | ---------------------------------- |
| AWS Bedrock     | 3.7.200.0                  | 10.23.0 (`InvokeModelAsync`) 10.37.0 (`InvokeModelAsync`, `ConverseAsync`)            | 4.0.101.7                          |
| OpenAI          | 2.0.0                      | 10.37.0 (`CompleteChat`, `CompleteChatAsync` - only `Text` completions are supported) | 2.8.0                              |
| Azure.AI.OpenAI | 2.0.0                      | 10.37.0 (`CompleteChat`, `CompleteChatAsync` - only `Text` completions are supported) | 2.8.0-beta.1                       |

**Logging frameworks**

The .NET agent [can be configured](https://docs.newrelic.com/docs/apm/agents/net-agent/configuration/net-agent-configuration/#application_logging) to automatically instrument these logging frameworks for automatic logs-in-context with [agent forwarding](https://docs.newrelic.com/docs/logs/logs-context/net-configure-logs-context-all#1-agent) and [local log decoration](https://docs.newrelic.com/docs/logs/logs-context/net-configure-logs-context-all#2-decorate):

| Frameworks                   | Minimium framework version | Minimium agent version | Latest verified compatible version |
| ---------------------------- | -------------------------- | ---------------------- | ---------------------------------- |
| Log4Net                      | 2.0.10                     | 9.7.0                  | 3.4.0                              |
| Serilog                      | 2.5.0                      | 9.7.0                  | 4.4.0                              |
| NLog                         | 4.5.0                      | 9.7.0                  | 6.2.0                              |
| Microsoft.Extensions.Logging | 3.0.0                      | 10.0.0                 | 10.0.12                            |

**Messaging**

The agent automatically instruments these message systems:

| Libraries                                                                           | **Supported methods**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ----------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Confluent.Kafka                                                                     | - Produce and consume on topics. - The following methods are instrumented: - `IProducer.Produce` - `IProducer.ProduceAsync` - `IConsumer.Consume` - Minimum supported version: 1.4.0 - Latest verified compatible version: 2.15.1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| NServiceBus                                                                         | - Puts and takes on messages. - Minimum supported version: 5.0 - Latest verified compatible version: 10.2.9                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| RabbitMQ                                                                            | - Puts and takes on messages and queue purge. - When receiving messages using an `IBasicConsumer`, the `EventingBasicConsumer` is the only implementation that is instrumented by the .NET agent. - `BasicGet` is instrumented, but the agent does not support [distributed tracing](https://docs.newrelic.com/docs/apm/distributed-tracing/getting-started/introduction-distributed-tracing) for `BasicGet`. - The following methods are instrumented: - `IModel.BasicGet` - `IModel.BasicPublish` - `IModel.BasicConsume` - `IModel.QueuePurge` - `EventingBasicConsumer.HandleBasicDeliver` - Minimum supported version: 3.5.2 - Latest verified compatible version: 7.1.2                                                                      |
| MassTransit (agent versions 10.19.0 and newer)                                      | - Message publish/send and consume - Minimum supported version: 7.1.0 - Latest verified compatible version: 8.5.7                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| AWSSDK.SQS (Amazon Simple Queue Service) (agent versions 10.27.0 and newer)         | - Message send and receive - Minimum supported version: 3.7.0 - Latest verified compatible version: 4.0.100.14                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| AWSSDK.Kinesis (Amazon Kinesis Data Streams) (agent versions 10.40.0 and newer)     | - The operations `PutRecord(s)Async` and `GetRecordsAsync` are instrumented as message broker operations.  Other Kinesis operations are instrumented as basic method calls. - Minimum supported version: 3.7.0 - Latest verified compatible version: 4.0.103.3                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| AWSSDK.KinesisFirehose (Amazon Kinesis Firehose) (agent versions 10.40.0 and newer) | - All Kinesis Firehose operations are instrumented as basic method calls. - Minimum supported version: 3.7.0 - Latest verified compatible version: 4.0.100.14                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Azure Service Bus (Azure.Messaging.ServiceBus) (agent versions 10.42.0 and newer)   | - Message send and receive - Supports Processor mode. - The following methods are instrumented: - `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` - Minimum supported version: 7.11.0 - Latest verified compatible version: 7.18.2 |

**Background jobs and workflows**

The .NET agent automatically instruments the performance of .NET application calls to these background job and workflow library:

| Frameworks | Minimium framework version | Minimium agent version | Latest verified compatible version |
| ---------- | -------------------------- | ---------------------- | ---------------------------------- |
| Hangfire   | 1.7.0                      | 10.51.0                | 1.8.25                             |

### Unavailable features [#unavailable-core]

The following features are not available for the .NET agent:

-   The .NET agent does not support [trim self-contained deployments and executables](https://docs.microsoft.com/en-us/dotnet/core/deploying/trim-self-contained), because the compiler can potentially trim assemblies that the agent depends on.
-   [Infinite Tracing](https://docs.newrelic.com/docs/distributed-tracing/infinite-tracing/introduction-infinite-tracing) is not supported on Alpine Linux due to a [GRPC compatibility issue](https://github.com/grpc/grpc/issues/21446). See [this agent issue](https://github.com/newrelic/newrelic-dotnet-agent/issues/289) for more information.
-   The .NET agent doesn't support [Native Ahead of Time (AOT) deployment](https://learn.microsoft.com/en-us/dotnet/core/deploying/native-aot/?tabs=net8plus%2Cwindows) for .NET applications because just-in-time (JIT) compilation is required for the agent to function properly.

    ### Connect the agent to other New Relic products [#digital-intelligence-platform-core]

    In addition to [APM](https://docs.newrelic.com/docs/apm/new-relic-apm/getting-started/introduction-new-relic-apm), the .NET agent integrates with other New Relic products to give you end-to-end visibility:

    | Product                                                                                                                                                   | Integration                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
    | --------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | [Browser monitoring](https://docs.newrelic.com/docs/browser/new-relic-browser/getting-started/introduction-new-relic-browser)                             | For ASP.NET Core v6.0 and later web applications (MVC, Razor and Blazor), the .NET agent (starting with version 10.19.0) automatically injects the browser JavaScript agent when you [enable auto-instrumentation](https://docs.newrelic.com/docs/browser/browser-monitoring/installation/install-browser-monitoring-agent/#select-apm-app). For other types of web applications, you can inject the browser monitoring agent by using the [.NET agent API](https://docs.newrelic.com/docs/agents/net-agent/net-agent-api/get-browser-timing-header) or the [browser agent's copy/paste method](https://docs.newrelic.com/docs/browser/new-relic-browser/installation/install-new-relic-browser-agent#copy-paste-app). After enabling browser injection, you can view browser data in the [APM Summary page](https://docs.newrelic.com/docs/apm/apm-ui-pages/monitoring/apm-summary-page-view-transaction-apdex-usage-data/) and quickly switch between the APM and browser data for a particular app. For configuration options and manual instrumentation, see [Browser monitoring and the .NET agent](https://docs.newrelic.com/docs/apm/agents/net-agent/other-features/browser-monitoring-net-agent/). |
    | [Infrastructure monitoring](https://docs.newrelic.com/docs/infrastructure/new-relic-infrastructure/getting-started/introduction-new-relic-infrastructure) | When you install the infrastructure and APM agents on the same host, they automatically detect one another. You can then view a list of hosts in the APM UI, and filter your infrastructure hosts by APM app in our infrastructure UI. For more information, see [APM data in the infrastructure UI](https://docs.newrelic.com/docs/infrastructure/new-relic-infrastructure/data-instrumentation/new-relic-apm-data-infrastructure).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
    | [Dashboards](https://docs.newrelic.com/docs/query-your-data/explore-query-data/dashboards/introduction-new-relic-one-dashboards)                          | The .NET agent sends [default events and attributes](https://docs.newrelic.com/docs/insights/insights-data-sources/default-events-attributes/apm-default-event-attributes) for [NRQL queries](https://docs.newrelic.com/docs/query-your-data/explore-query-data/query-builder/use-advanced-nrql-mode-specify-data). You can also [record custom events](https://docs.newrelic.com/docs/insights/insights-data-sources/custom-data/insert-custom-events-new-relic-apm-agents) for advanced analysis.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |

## .NET Framework

### Requirements

Before you [install New Relic's .NET agent](https://docs.newrelic.com/docs/apm/agents/net-agent/getting-started/introduction-new-relic-net/#installation), make sure your system meets these requirements:

**.NET Framework version**

**.NET Framework 4.6.2 or higher**

To instrument applications running on .NET Framework 4.6.2 or higher, you must run the New Relic .NET agent 10.0 or higher. To instrument applications running on .NET Framework version 4.0 or lower, you must run a version of the New Relic .NET agent lower than 7.0. For more information and download procedures, see [Technical support for .NET frameworks 4.0 or lower](https://docs.newrelic.com/docs/agents/net-agent/troubleshooting/technical-support-net-frameworks-40-or-earlier).

**The .NET agent  doesn't support .NET Framework versions 4.5.1, 4.5.2, and 4.6.1**

**Application lifespan**

The .NET agent uploads data at the end of each [harvest cycle](https://docs.newrelic.com/docs/new-relic-solutions/get-started/glossary/#harvest-cycle) (once per minute). If your .NET app doesn't run that long, you can set the `service` element's `sendDataOnExit` attribute to `true` in the `newrelic.config` file.

**App/web servers**

You must use one of these app/web servers:

-   IIS
-   Self-hosted OWIN
-   Self-hosted WCF
-   Kestrel
-   Kestrel with IIS reverse proxy via AspNetCoreModule
-   Kestrel with IIS reverse proxy via AspNetCoreModuleV2

    The agent automatically creates transactions for apps hosted in IIS. If you self-host with WCF and OWIN version 3 or higher, the agent also automatically creates transactions. For other self-hosted services, you will need to [create transactions via custom instrumentation](https://docs.newrelic.com/docs/apm/agents/net-agent/custom-instrumentation/introduction-net-custom-instrumentation/#new-existing).

**AWS Elastic Beanstalk**

AWS [Elastic Beanstalk](https://aws.amazon.com/elasticbeanstalk) isn't a supported .NET environment.

**CLRs**

The agent requires CLR version 4.0. Legacy applications running on CLR 2.0 can be instrumented with agent versions lower than 7.0.

**Code Access Security**

The use of [Code Access Security](https://docs.microsoft.com/en-us/dotnet/framework/misc/code-access-security) is compatible with the .NET agent only when Full Trust is provided. The agent isn't compatible with more restrictive trust levels.

**Microsoft Azure**

For Azure-specific installation instructions, see the [.NET installation guide](/install/dotnet/).

**Network requirements**

The agent requires your firewall to allow outgoing connections to specific [networks and ports](https://docs.newrelic.com/docs/new-relic-solutions/get-started/networks/).

**Operating system**

The agent requires one of these operating systems:

-   Windows Server 2008
-   Windows Server 2008 R2
-   Windows Server 2012
-   Windows Server 2012 R2
-   Windows Server 2016
-   Windows Server 2019
-   Windows Server 2022
-   Windows 10
-   Windows 11
-   Windows Azure (OS Family 1, 2, and 3)

    The agent supports running in containerized versions of all supported Windows operating systems with the known exception of `nanoserver`.

**Permissions**

Installation requires elevated privileges (Administrator). For example, you can:

-   Be logged in as an administrator user.

-   Be a member of the Administrators group.

-   On newer operating systems, provide elevation credentials when prompted.

    The monitored process must have read/write access to the directory in which the agent is installed. The agent runs as a part of the monitored process and relies on those permissions to function.

    **Recommendation:**

-   Restrict permissions for the `newrelic.config` file and give read/write access only to the owner of the monitored process.

-   Review permissions for the logs created by the agent to minimize the number of users with access and their privileges.

**Processor architectures**

The agent is available in both 32-bit and 64-bit versions. On 64-bit systems, the 64-bit agent can instrument both 32-bit and 64-bit applications.

**Security requirements**

As a standard [security measure for data collection](https://docs.newrelic.com/docs/security/security-privacy/data-privacy/security-controls-privacy/), your app server must support SHA-2 (256-bit). SHA-1 isn't supported.

**Use of other monitoring software**

The .NET Common Language Runtime (CLR) only allows one profiler to access the profiling API of a process at any given time. Running our .NET agent alongside other monitoring software will result in a [profiler conflict](https://docs.newrelic.com/docs/apm/agents/net-agent/troubleshooting/profiler-conflicts/). For more information, see [Errors while using other APM software](https://docs.newrelic.com/docs/apm/new-relic-apm/troubleshooting/errors-while-using-other-apm-software).

### Automatic instrumentation [#instrumented-features-framework]

If your application is hosted in ASP.NET or another [fully supported framework](#app-frameworks-framework), the .NET agent will automatically instrument your application after install. If your app isn't automatically instrumented, or if you want to add instrumentation, use [custom instrumentation](https://docs.newrelic.com/docs/apm/agents/net-agent/custom-instrumentation/introduction-net-custom-instrumentation/).

**App frameworks**

The agent automatically instruments some application frameworks; we refer to these frameworks as **fully supported**, which are listed below:

-   ASP.NET MVC 2
-   ASP.NET MVC 3
-   ASP.NET MVC 4
-   ASP.NET MVC 5
-   ASP.NET Web API v2
-   ASP.NET Core MVC 2.0
-   ASP.NET Core 2.1
-   ASP.NET Core 2.2
-   ASP.NET Web Forms
-   Castle MonoRail v2 (No longer supported in the .NET Agent version 10.0 or higher)
-   OWIN-hosted web API applications on .NET framework using:
-   Microsoft.Owin.Host.HttpListener v2.x
-   Microsoft.Owin.Host.HttpListener v3.x
-   Microsoft.Owin.Host.HttpListener v4.x
-   SOAP-based web services
-   [WCF](https://docs.newrelic.com/docs/apm/agents/net-agent/other-installation/install-net-agent-windows-communication-foundation-wcf/)

**Binding types**

WCF Instrumentation has been tested for the following common [binding types](https://docs.microsoft.com/en-us/dotnet/framework/wcf/system-provided-bindings) (both client and service). Varying levels of support are available for distributed tracing (DT) and cross application tracing (CAT):

| Binding      | Distributed Tracing (DT) Support | Cross Application Tracing (CAT) Support (Deprecated) |
| ------------ | -------------------------------- | ---------------------------------------------------- |
| BasicHTTP    | supported                        | supported                                            |
| WebHTTP      | supported                        | supported                                            |
| WSHTTP       | supported                        | supported                                            |
| NetTCP       | supported                        | supported                                            |
| NetNamedPipe | not supported\*                  | not supported\*                                      |
| NetMSMQ      | not supported\*                  | not supported\*                                      |

\* Distributed tracing may be manually implemented using these [Distributed Tracing API](https://docs.newrelic.com/docs/understand-dependencies/distributed-tracing/enable-configure/enable-distributed-tracing#agent-apis) methods.

**Datastores**

Collecting [instance details](https://docs.newrelic.com/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues) for supported datastores requires .NET agent version 6.5.29.0 or higher and is enabled by default. To request instance-level information from datastores not currently listed, get support at [New Relic support center](https://support.newrelic.com).

In order to automatically instrument the performance of .NET Framework application calls to these datastores, make sure you've the [.NET agent version 8.14 or higher](https://docs.newrelic.com/docs/release-notes/agent-release-notes/net-release-notes):

| Datastore               | [Instance details](https://docs.newrelic.com/docs/apm/apm-ui-pages/features/analyze-database-instance-level-performance-issues/) | Other notes                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Cosmos DB               | ✓                                                                                                                                | The .NET agent `v9.2.0` or higher automatically instruments [Microsoft.Azure.Cosmos](https://www.nuget.org/packages/Microsoft.Azure.Cosmos) library. - Minimum supported version: 3.17.0 - Latest verified compatible version: 3.63.0 - Versions 3.35.0 and higher are supported beginning with .NET agent v10.32.0                                                                                                                                                                                                                                                                                                                                                                           |
| Couchbase               |                                                                                                                                  | Use [CouchbaseNetClient](https://www.nuget.org/packages/CouchbaseNetClient/). - Minimum supported version: 2.0.0 - Latest verified compatible version: 3.6.6 - Version 3.2.0 and later are supported beginning with .NET agent v10.40.0 - Known incompatible versions: 3.0.x, 3.1.x With CouchbaseNetClient 2.x, the following are not instrumented by default in favor of their multi-document counterparts: - `Get(string key)` - `GetDocument(string key)` - `Remove(string key)` - `Remove(string key, ulong cas)` - `Upsert<T>(string key, T value)`                                                                                                                                     |
| IBM DB2                 | ✓                                                                                                                                | Use `IBM.Data.DB2`. - There are no specific minimum or maximum version requirements for the IBM DB2 driver or server. - Only synchronous methods (for example, `ExecuteReader`, `ExecuteNonQuery`) are automatically instrumented. Asynchronous methods (for example, `ExecuteReaderAsync`) are not supported by default. - The `.NET Core` specific package (`IBM.Data.DB2.Core`) is **not** automatically instrumented.                                                                                                                                                                                                                                                                     |
| Microsoft SQL Server    | ✓                                                                                                                                | Use SqlClient from [System.Data.SqlClient](https://www.nuget.org/packages/System.Data.SqlClient) NuGet package or [Microsoft.Data.SqlClient](https://www.nuget.org/packages/Microsoft.Data.SqlClient) NuGet package or the Framework built-in System.Data assembly. **System.Data.SqlClient** - Minimum supported version: 4.4.0 - Latest verified compatible version: 4.8.6 **Microsoft.Data.SqlClient** - Minimum supported version: 1.0.19239.1 - Latest verified compatible version: 7.0.3 **System.Data** - Minimum supported version: .NET Framework 4.6.2 - Latest verified compatible version: 4.8                                                                                    |
| System.Data.ODBC        | ✓                                                                                                                                | Use the built-in `System.Data.ODBC` namespace from the .NET Framework. - Available in all currently supported .NET Framework agent versions. - All versions of the .NET Framework currently supported by Microsoft are verified to be compatible.                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| MongoDB (legacy driver) | ✓                                                                                                                                | Minimum supported version: 1.10.0 Latest verified compatible version: 1.10.0 Known incompatible versions: Instance details aren't available in lower version 2.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| MongoDB (modern driver) | ✓                                                                                                                                | Minimum supported version: 2.3.0 Latest verified compatible version: 3.11.2 Versions 3.0.0 and higher are supported beginning with .NET agent v10.40.0. Beginning in agent version 10.12.0, the following methods added in or after driver version 2.7 are instrumented: - `IMongoCollection.CountDocuments[Async]` - `IMongoCollection.EstimatedDocumentCount[Async]` - `IMongoCollection.AggregateToCollection[Async]` - `IMongoDatabase.ListCollectionNames[Async]` - `IMongoDatabase.Aggregate[Async]` - `IMongoDatabase.AggregateToCollection[Async]` - `IMongoDatabase.Watch[Async]`                                                                                                    |
| MySQL                   | ✓                                                                                                                                | Use [MySql.Data](https://www.nuget.org/packages/MySql.Data/) or [MySQL Connector](https://github.com/mysql-net/MySqlConnector) **MySql.Data** - Minimum supported version: 6.10.7 - Latest verified compatible version: 26.7.0 - Versions 9.7.0 and higher are supported beginning with .NET agent v10.52.0 **MySqlConnector** - Minimum supported version: 1.0.1 - Latest verified compatible version: 2.6.2                                                                                                                                                                                                                                                                                 |
| Oracle                  | ✓                                                                                                                                | Use [Oracle.ManagedDataAccess](https://www.nuget.org/packages/Oracle.ManagedDataAccess/) - Minimum supported version: 12.1.2400 - Latest verified compatible version: 23.26.301                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| PostgreSQL              | ✓                                                                                                                                | Use [Npgsql](https://www.nuget.org/packages/Npgsql/) - Minimum supported version: 4.0.0 - Latest verified compatible version: 8.0.9 Prior versions of Npgsql may also be instrumented, but duplicate and/or missing metrics are possible.                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| ServiceStack.Redis      | ✓                                                                                                                                | - Latest verified compatible version: 4.0.40 - Known incompatible versions: 4.0.44 or higher                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| StackExchange.Redis     | ✓                                                                                                                                | - Minimum supported version: 1.0.488 - Latest verified compatible version: 3.2.1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| Elasticsearch           | ✓                                                                                                                                | Use [Elastic.Clients.Elasticsearch](https://www.nuget.org/packages/Elastic.Clients.Elasticsearch), [NEST](https://www.nuget.org/packages/NEST), or [Elasticsearch.Net](https://www.nuget.org/packages/Elasticsearch.Net). **Elastic.Clients.Elasticsearch** - Minimum supported version: 8.0.0 - Maximum supported version: 8.18.3 - Versions 8.10.0 and higher are supported beginning with .NET agent v10.20.1 - Versions 8.12.1 and higher are supported beginning with .NET agent v10.23.0 **NEST** - Minimum supported version: 7.0.0 - Latest verified compatible version: 7.17.5 **Elasticsearch.Net** - Minimum supported version: 7.0.0 - Latest verified compatible version: 7.17.5 |
| Memcached               | ✓                                                                                                                                | Use [EnyimMemcachedCore](https://www.nuget.org/packages/EnyimMemcachedCore). - Minimum supported version: 2.0.0 - Latest verified compatible version: 3.4.6                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| DynamoDB                | ✓                                                                                                                                | Use [AWSSDK.DynamoDBv2](https://www.nuget.org/packages/AWSSDK.DynamoDBv2). - Minimum supported version: 3.5.0 - Latest verified compatible version: 4.0.103.8 - Minimum agent version required: 10.33.0                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

The .NET agent doesn't collect data about datastore server processes. It only collects data from datastore client library usage.  To directly monitor datastore server processes, use the New Relic infrastructure agent with [on-host integrations](https://docs.newrelic.com/docs/infrastructure/host-integrations/get-started/introduction-host-integrations/).

By default, the .NET agent doesn't capture SQL parameters for stored procedures or parameterized queries in a query trace. To see these SQL parameters, you must enable the collection feature in the [agent configuration](https://docs.newrelic.com/docs/apm/agents/net-agent/configuration/net-agent-configuration/#datastore-tracer-query-parameters).

By default, the agent collects [instance details](https://docs.newrelic.com/docs/apm/applications-menu/features/analyze-database-instance-level-performance-issues) for all supported datastores. To request support for other datastores, contact support at [support.newrelic.com](https://support.newrelic.com).

If your datastore isn't listed here, you can add custom instrumentation using the `RecordDatastoreSegment` method in the [.NET agent API](https://docs.newrelic.com/docs/apm/agents/net-agent/net-agent-api/net-agent-api/#ITransaction).

**CMS**

The agent automatically instruments the **EPiServer** content management system.

**External call libraries**

The agent automatically instruments these external call libraries:

| Libraries      | **Supported methods**                                                                                                                                                                                                                                                                                                                 |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| HttpClient     | The agent instruments these HttpClient methods: - `SendAsync` - `GetAsync` - `PostAsync` - `PutAsync` - `DeleteAsync` - `GetStringAsync` - `GetStreamAsync` - `GetByteArrayAsync`                                                                                                                                                     |
| RestSharp      | The agent instruments these RestSharp methods: - `ExecuteTaskAsync` - `ExecuteGetTaskAsync` - `ExecutePostTaskAsync` - `Execute` - `ExecuteAsGet` - `ExecuteAsPost` - `DownloadData` Minimum supported version: 105.2.3 Latest verified compatible version: 114.0.0 Known incompatible versions: 106.8.0, 106.9.0, 106.10.0, 106.10.1 |
| HttpWebRequest | The agent instruments these HttpWebRequest methods: - `GetResponse`                                                                                                                                                                                                                                                                   |

**Hosting Models**

The following hosting models are fully supported:

-   IIS Hosted (with and without ASP Compatibility)
-   Self Hosted

**Invocation models**

The following invocation methods (both client and service) are supported:

-   Synchronous
-   Asynchronous Processing Model (APM) Begin/End
-   Task Asynchronous Processing (TAP)
-   Event-based Asynchronous Processing (EAP, client support only)

**Large Language Model (LLM)**

The .NET agent [can be configured](https://docs.newrelic.com/docs/apm/agents/net-agent/configuration/net-agent-configuration/#ai_monitoring) to automatically instrument these LLM frameworks:

| Frameworks      | Minimium framework version | Minimium agent version                                                                | Latest verified compatible version |
| --------------- | -------------------------- | ------------------------------------------------------------------------------------- | ---------------------------------- |
| AWS Bedrock     | 3.7.200.0                  | 10.23.0 (`InvokeModelAsync`) 10.37.0 (`InvokeModelAsync`, `ConverseAsync`)            | 4.0.101.7                          |
| OpenAI          | 2.0.0                      | 10.37.0 (`CompleteChat`, `CompleteChatAsync` - only `Text` completions are supported) | 2.8.0                              |
| Azure.AI.OpenAI | 2.0.0                      | 10.37.0 (`CompleteChat`, `CompleteChatAsync` - only `Text` completions are supported) | 2.8.0-beta.1                       |

**Logging frameworks**

The .NET agent [can be configured](https://docs.newrelic.com/docs/apm/agents/net-agent/configuration/net-agent-configuration/#application_logging) to automatically instrument these logging frameworks for automatic logs-in-context with [agent forwarding](https://docs.newrelic.com/docs/logs/logs-context/net-configure-logs-context-all/#1-agent) and [local log decoration](https://docs.newrelic.com/docs/logs/logs-context/net-configure-logs-context-all/#2-decorate):

| Frameworks                   | Minimium framework version | Minimium agent version | Latest verified compatible version |
| ---------------------------- | -------------------------- | ---------------------- | ---------------------------------- |
| Log4Net                      | 1.2.10                     | 9.7.0                  | 3.4.0                              |
| Serilog                      | 2.0.0                      | 9.7.0                  | 4.4.0                              |
| NLog                         | 4.1.0                      | 9.7.0                  | 6.2.0                              |
| Microsoft.Extensions.Logging | 3.0.0                      | 9.7.0                  | 10.0.12                            |

**Messaging**

The agent automatically instruments these message systems:

| Libraries                                                                           | **Supported methods**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ----------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Confluent.Kafka                                                                     | - Produce and consume on topics. - The following methods are instrumented: - `IProducer.Produce` - `IProducer.ProduceAsync` - `IConsumer.Consume` - Minimum supported version: 1.4.0 - Latest verified compatible version: 2.13.1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| MSMQ                                                                                | - Message send and receive, queue peek and purge                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| NServiceBus                                                                         | - Puts and takes on messages. - Minimum supported version: 5.0 - Latest verified compatible version: 8.2.4                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| RabbitMQ                                                                            | - Puts and takes on messages and queue purge. - When receiving messages using an `IBasicConsumer`, the `EventingBasicConsumer` is the only implementation that is instrumented by the .NET agent. - `BasicGet` is instrumented, but the agent does not support [distributed tracing](https://docs.newrelic.com/docs/distributed-tracing/concepts/introduction-distributed-tracing/) for `BasicGet`. - The following methods are instrumented: - `IModel.BasicGet` - `IModel.BasicPublish` - `IModel.BasicConsume` - `IModel.QueuePurge` - `EventingBasicConsumer.HandleBasicDeliver` - Minimum supported version: 3.5.2 - Latest verified compatible version: 6.8.1                                                                                |
| MassTransit (agent versions 10.19.0 and newer)                                      | - Message publish/send and consume - Minimum supported version: 7.1.0 - Latest verified compatible version: 8.5.7                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| AWSSDK.SQS (Amazon Simple Queue Service) (agent versions 10.27.0 and newer)         | - Message send and receive - Minimum supported version: 3.7.0 - Latest verified compatible version: 4.0.100.14                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| AWSSDK.Kinesis (Amazon Kinesis Data Streams) (agent versions 10.40.0 and newer)     | - The operations `PutRecord(s)Async` and `GetRecordsAsync` are instrumented as message broker operations.  Other Kinesis operations are instrumented as basic method calls. - Minimum supported version: 3.7.0 - Latest verified compatible version: 4.0.103.3                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| AWSSDK.KinesisFirehose (Amazon Kinesis Firehose) (agent versions 10.40.0 and newer) | - All Kinesis Firehose operations are instrumented as basic method calls. - Minimum supported version: 3.7.0 - Latest verified compatible version: 4.0.100.14                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Azure Service Bus (Azure.Messaging.ServiceBus) (agent versions 10.42.0 and newer)   | - Message send and receive - Supports Processor mode. - The following methods are instrumented: - `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` - Minimum supported version: 7.11.0 - Latest verified compatible version: 7.18.2 |

**Background jobs and workflows**

The .NET agent automatically instruments the performance of .NET application calls to these background job and workflow library:

| Frameworks | Minimium framework version | Minimium agent version | Latest verified compatible version |
| ---------- | -------------------------- | ---------------------- | ---------------------------------- |
| Hangfire   | 1.7.0                      | 10.51.0                | 1.8.25                             |

**Supported .NET languages and technologies for dashboards**

The listed .NET languages and technologies are compatible with our [instant observability](https://newrelic.com/instant-observability/) dashboards. If you use any of these languages or technologies, you can view your data in a New Relic dashboard, right out of the box:

| Language/technology | Additional configuration                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| C# applications     | New Relic can automatically instrument services written in C#. Go to our C# quickstart page to [install the C# dashboards](https://newrelic.com/instant-observability/c-sharp).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ADO.net             | If your application uses ADO.net, you can install a combination of New Relic agents that generate an ADO.net dashboard. Here's what you need to do: - Install the New Relic APM .NET agent and the infrastructure agent by following the steps in our [guided installation](https://one.newrelic.com/marketplace?state=bf68ca4b-b7cc-3227-fcc3-3349f5aa92f6). - Install the Microsoft Windows Perfmon/WMI on-host integration for New Relic infrastructure by [following the nri-perfmon instructions](https://github.com/newrelic/nri-perfmon#nri-perfmon---windows-perfmonwmi-on-host-integration-for-new-relic-infrastructure). - If you installed Perfmon manually, [restart your infrastructure agent](https://docs.newrelic.com/docs/infrastructure/install-infrastructure-agent/manage-your-agent/start-stop-restart-infrastructure-agent). - Go to our ADO.NET quickstart page to [install the ADO.NET dashboards](https://newrelic.com/instant-observability/ado-dotnet).                             |
| Blazor Server       | Track your most important data in our Blazor Server dashboard by instrumenting your app with New Relic: - Install the New Relic APM .NET agent and the infrastructure agent by following the steps in our [guided installation](https://one.newrelic.com/marketplace?state=bf68ca4b-b7cc-3227-fcc3-3349f5aa92f6). If you prefer, you can [install the infrastructure agent](https://docs.newrelic.com/docs/infrastructure/install-infrastructure-agent/linux-installation/install-infrastructure-monitoring-agent-linux) via the command line. - Get the pre-built dashboard by [installing the Blazor quickstart](https://newrelic.com/instant-observability/blazor-server) - From **[one.newrelic.com](https://one.newrelic.com/all-capabilities)**, go to **APM & services**, then select your app. To check that your installation is successful, query the following: ````sql FROM Transaction SELECT count(*) FACET request.uri ```  If data appears, you've instrumented your app correctly.       ```` |

**Unsupported frameworks**

These frameworks are **not fully supported:**

-   **ASP.NET Web API v1:** See the [troubleshooting information](https://docs.newrelic.com/docs/agents/net-agent/troubleshooting/web-api-transactions-are-missing) about using ASP.NET Web API v1 with New Relic's .NET agent 5.0 or higher for apps targeting .NET Framework 4.0. (This doesn't affect .NET Framework 4.5 or higher.)
-   **Mono:** New Relic doesn't support [Mono](https://www.mono-project.com/), an open-source .NET framework that runs on Linux. This is because there is no Profiler API to inject into the .NET agent as a profiler into Mono-based .NET applications. The Profiler API is a Component Object Model (COM)-based interface and is not supported on Linux.
-   Classic ASP is **not supported**, because the agent can only instrument .NET Framework-based apps.
-   Sharepoint is **not supported**.

#### Unavailable features [#unavailable-features-framework]

Just-in-time (JIT) compilation is a requirement for .NET agent functionality, so native images created with [Native Image Generator (NGEN)](https://docs.microsoft.com/en-us/dotnet/framework/tools/ngen-exe-native-image-generator) aren't supported by the .NET agent.

#### Connect the agent to other New Relic products [#digital-intelligence-platform-framework]

In addition to [APM](https://docs.newrelic.com/docs/apm/new-relic-apm/getting-started/introduction-apm/), the agent integrates with other New Relic products to give you end-to-end visibility:

| Product                                                                                                                                                 | Integration                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Browser monitoring](https://docs.newrelic.com/docs/browser/browser-monitoring/getting-started/introduction-browser-monitoring/)                        | For ASP.NET web applications, the .NET agent automatically injects the browser JavaScript agent when you [enable auto-instrumentation](https://docs.newrelic.com/docs/browser/browser-monitoring/installation/install-browser-monitoring-agent/#select-apm-app). After enabling browser injection, you can view browser data in the [APM Summary page](https://docs.newrelic.com/docs/apm/apm-ui-pages/monitoring/apm-summary-page-view-transaction-apdex-usage-data/) and quickly switch between the APM and browser monitoring data for a particular app. For configuration options and manual instrumentation, see [Browser monitoring and the .NET agent](https://docs.newrelic.com/docs/apm/agents/net-agent/other-features/browser-monitoring-net-agent/). |
| [Infrastructure monitoring](https://docs.newrelic.com/docs/infrastructure/infrastructure-monitoring/get-started/get-started-infrastructure-monitoring/) | When you install the infrastructure and APM agents on the same host, they automatically detect one another. You can then view a list of hosts in the APM UI, and filter your hosts by APM app in our infrastructure UI. For more information, see [APM data in infrastructure UI](https://docs.newrelic.com/docs/infrastructure/manage-your-data/data-instrumentation/apm-data-infrastructure-monitoring/).                                                                                                                                                                                                                                                                                                                                                      |
| [Dashboards](https://docs.newrelic.com/docs/query-your-data/explore-query-data/dashboards/introduction-dashboards/)                                     | The .NET agent sends [default events and attributes](https://docs.newrelic.com/docs/data-apis/understand-data/event-data/events-reported-apm/) for [NRQL queries](https://docs.newrelic.com/docs/query-your-data/explore-query-data/query-builder/use-advanced-nrql-mode-query-data/). You can also [record custom events](https://docs.newrelic.com/docs/data-apis/custom-data/custom-events/apm-report-custom-events-attributes/) for advanced analysis.                                                                                                                                                                                                                                                                                                       |
| [Synthetic monitoring](https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/)                | [Synthetic transaction traces](https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/using-monitors/collect-synthetic-transaction-traces/) connect requests from synthetic monitors to the underlying APM transaction.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
