Agent 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.
The following NuGet packages are available:
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.
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.Extensions.Hosting ( [1.6.0-beta] Added in 1.6.0-beta. )
A package for agent registration integration with
A package for instrumenting ASP.NET Core applications. The main difference between this package and the
Elastic.Apm.NetCoreAllpackage is that this package only instruments ASP.NET Core by default, whereas
Elastic.Apm.NetCoreAllinstruments all components that can be automatically configured, such as Entity Framework Core, HTTP calls with
HttpClient, database calls to SQL Server with
SqlClient, etc. Additional instrumentations can be added when using
Elastic.Apm.AspNetCoreby referencing the respective NuGet packages and including their configuration code in agent setup.
- A package containing ASP.NET .NET Framework instrumentation.
- A package containing instrumentation to capture spans for Azure Cosmos DB with Microsoft.Azure.Cosmos, Microsoft.Azure.DocumentDb, and Microsoft.Azure.DocumentDb.Core packages.
- 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.
- 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.
- A package containing Entity Framework Core instrumentation.
- A package containing an interceptor to automatically create spans for database operations executed by Entity Framework 6 on behalf of the application.
- A package containing support for MongoDB.Driver.
- A package containing System.Data.SqlClient and Microsoft.Data.SqlClient instrumentation.
- A package containing instrumentation to capture spans for commands sent to redis with StackExchange.Redis package.