NuGet 包
编辑NuGet 包编辑
代理检测作为一组 NuGet 包发布,可在 nuget.org 上获取。您可以通过引用一个或多个这些包将代理和特定检测添加到您的 .NET 应用程序中。
入门编辑
包编辑
以下 NuGet 包可用
- Elastic.Apm
- 核心代理包,包含代理的 公共 API。它还包含用于跟踪 .NET Standard 2.0 中的类的所有跟踪组件,其中包括对
HttpClient
的监控部分。每个其他 Elastic APM 包都引用此包。 - Elastic.Apm.NetCoreAll
-
一个元包,引用所有其他 Elastic APM .NET 代理包,这些包可以自动配置检测。
如果您计划监控依赖于 Microsoft.AspNetCore.All 包的典型 ASP.NET Core 应用程序,则应引用此包。
为了避免在不依赖于 Microsoft.AspNetCore.All 包的应用程序中添加不必要的依赖项,我们还提供了一些其他包 - 这些包都被
Elastic.Apm.NetCoreAll
包引用。 - Elastic.Apm.Extensions.Hosting ( [1.6.0-beta] 在 1.6.0-beta 中添加。 )
- 用于代理注册与
Microsoft.Extensions.Hosting.IHostBuilder
注册集成的包。
- Elastic.Apm.AspNetCore
- 用于检测 ASP.NET Core 应用程序的包。此包与
Elastic.Apm.NetCoreAll
包之间的主要区别在于,此包默认情况下只检测 ASP.NET Core,而Elastic.Apm.NetCoreAll
检测所有可以自动配置的组件,例如 Entity Framework Core、使用HttpClient
的 HTTP 调用、使用SqlClient
对 SQL Server 的数据库调用等。使用Elastic.Apm.AspNetCore
时,可以通过引用相应的 NuGet 包并在代理设置中包含其配置代码来添加其他检测。 - Elastic.Apm.AspNetFullFramework
- 包含 ASP.NET .NET Framework 检测的包。
- Elastic.Apm.Azure.CosmosDb
- 包含检测以捕获使用 Microsoft.Azure.Cosmos、Microsoft.Azure.DocumentDb 和 Microsoft.Azure.DocumentDb.Core 包的 Azure Cosmos DB 的跨度。
- Elastic.Apm.Azure.ServiceBus
- 包含检测以捕获使用 Microsoft.Azure.ServiceBus 和 Azure.Messaging.ServiceBus 包从 Azure 服务总线发送和接收的消息的事务和跨度。
- Elastic.Apm.Azure.Storage
- 包含检测以捕获使用 Azure.Storage.Queues、Azure.Storage.Blobs 和 Azure.Storage.Files.Shares 包与 Azure 存储交互的跨度。
- Elastic.Apm.EntityFrameworkCore
- 包含 Entity Framework Core 检测的包。
- Elastic.Apm.EntityFramework6
- 包含一个拦截器,用于自动创建由 Entity Framework 6 代表应用程序执行的数据库操作的跨度。
- Elastic.Apm.MongoDb
- 包含对 MongoDB.Driver 的支持。
- Elastic.Apm.SqlClient
- 包含 System.Data.SqlClient 和 Microsoft.Data.SqlClient 检测的包。
此功能现在从 1.24.0 版本开始默认包含在 Elastic.Apm
中。
- Elastic.Apm.StackExchange.Redis
- 包含检测以捕获使用 StackExchange.Redis 包发送到 redis 的命令的跨度。