NuGet packages
editNuGet packages
editAgent instrumentations are released as a set of NuGet packages available on nuget.org. You can add the Agent and specific instrumentations to your .NET application by referencing one or more of these packages.
Get started
editPackages
editThe following NuGet packages are available:
- Elastic.Apm
-
The core agent package, containing the Public API of the agent. It also contains every tracing component to trace classes that are part of .NET Standard 2.0, which includes the monitoring part for
HttpClient
. Every other Elastic APM package references this package. - Elastic.Apm.NetCoreAll
-
A meta package that references all other Elastic APM .NET agent package that can automatically configure instrumentation.
If you plan to monitor a typical ASP.NET Core application that depends on the Microsoft.AspNetCore.All package, you should reference this package.
In order to avoid adding unnecessary dependencies in applications that aren’t dependent on the Microsoft.AspNetCore.All package, we also offer some other packages - those are all referenced by the
Elastic.Apm.NetCoreAll
package. - Elastic.Apm.Extensions.Hosting ( [1.6.0-beta] Added in 1.6.0-beta. )
-
A package for agent registration integration with
Microsoft.Extensions.Hosting.IHostBuilder
registration.
- Elastic.Apm.AspNetCore
-
A package for instrumenting ASP.NET Core applications. The main difference between this package and the
Elastic.Apm.NetCoreAll
package is that this package only instruments ASP.NET Core by default, whereasElastic.Apm.NetCoreAll
instruments all components that can be automatically configured, such as Entity Framework Core, HTTP calls withHttpClient
, database calls to SQL Server withSqlClient
, etc. Additional instrumentations can be added when usingElastic.Apm.AspNetCore
by referencing the respective NuGet packages and including their configuration code in agent setup. - Elastic.Apm.AspNetFullFramework
- A package containing ASP.NET .NET Framework instrumentation.
- Elastic.Apm.Azure.CosmosDb
- A package containing instrumentation to capture spans for Azure Cosmos DB with Microsoft.Azure.Cosmos, Microsoft.Azure.DocumentDb, and Microsoft.Azure.DocumentDb.Core packages.
- Elastic.Apm.Azure.ServiceBus
- A package containing instrumentation to capture transactions and spans for messages sent and received from Azure Service Bus with Microsoft.Azure.ServiceBus and Azure.Messaging.ServiceBus packages.
- Elastic.Apm.Azure.Storage
- A package containing instrumentation to capture spans for interaction with Azure Storage with Azure.Storage.Queues, Azure.Storage.Blobs and Azure.Storage.Files.Shares packages.
- Elastic.Apm.EntityFrameworkCore
- A package containing Entity Framework Core instrumentation.
- Elastic.Apm.EntityFramework6
- A package containing an interceptor to automatically create spans for database operations executed by Entity Framework 6 on behalf of the application.
- Elastic.Apm.MongoDb
- A package containing support for MongoDB.Driver.
- Elastic.Apm.SqlClient
- A package containing System.Data.SqlClient and Microsoft.Data.SqlClient instrumentation.
this functionality now included by default in Elastic.Apm
as of 1.24.0
- Elastic.Apm.StackExchange.Redis
- A package containing instrumentation to capture spans for commands sent to redis with StackExchange.Redis package.