This is the .NET SDK for sending data to Azure Monitor & Application Insights.
- Built on OpenTelemetry: The SDK now uses OpenTelemetry as the underlying telemetry collection framework with the Azure Monitor Exporter for transmission.
- OpenTelemetry Extensibility: You can extend telemetry collection using standard OpenTelemetry patterns (Activity Processors, Resource Detectors, custom instrumentation).
- Unified Observability: Seamlessly integrates with the broader OpenTelemetry ecosystem, allowing you to send telemetry to multiple backends.
See breaking changes for more information on what has changed between versions 2.x and 3.x.
Select the option that best describes your situation:
- Building an ASP.NET Core web application? → Use the ASP.NET Core SDK for automatic instrumentation
- Building a Worker Service, console app, or background service? → Use the Worker Service SDK for simplified configuration
- Need the core TelemetryClient API for custom scenarios? → Use the base SDK
- Need compatibility with NLog? -> Use the Logging SDK
We've gathered a list of concepts here.
We strongly welcome and encourage contributions to this project. Please review our Contributing guide.
- main is the default branch for all development and releases.
- [2.x] (https://github.com/microsoft/ApplicationInsights-dotnet/tree/2.x) is the branch for the previous 2.x release.
The following packages are published from this repository:
| Latest Official Release | Latest Official Release (including pre-release) | |
|---|---|---|
| Base SDKs | ||
| - Microsoft.ApplicationInsights | ||
| Auto Collectors (ASP.NET) | ||
| - Microsoft.ApplicationInsights.Web | ||
| Auto Collectors (ASP.NET Core) | ||
| - Microsoft.ApplicationInsights.AspNetCore | ||
| Auto Collectors (WorkerService, Console Application, etc.) | ||
| - Microsoft.ApplicationInsights.WorkerService | ||
| Logging Adapters | ||
- For NLog: Microsoft.ApplicationInsights.NLogTarget |
Customers are encouraged to use the latest stable version as that is the version that will get fixes and updates. Beta packages are not recommended for use in production & support is limited. Upon release of the new stable version, the old Beta packages will be unlisted & the old minor version will be marked as deprecated. Application Insights follows the Azure SDK Lifecycle & support policy. (For example: When 2.20.0 is released, 2.20.0-beta1 will be unlisted and 2.19.0 will be deprecated.)
A guide on common troubleshooting topics is available here.
For immediate support relating to the Application Insights .NET SDK we encourage you to file an Azure Support Request with Microsoft Azure instead of filing a GitHub Issue in this repository. You can do so by going online to the Azure portal and submitting a support request. Access to subscription management and billing support is included with your Microsoft Azure subscription, and technical support is provided through one of the Azure Support Plans. For step-by-step guidance for the Azure portal, see How to create an Azure support request. Alternatively, you can create and manage your support tickets programmatically using the Azure Support ticket REST API.