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.CosmosMicrosoft.Azure.DocumentDbMicrosoft.Azure.DocumentDb.Core 包的 Azure Cosmos DB 的跨度。
Elastic.Apm.Azure.ServiceBus
包含检测以捕获使用 Microsoft.Azure.ServiceBusAzure.Messaging.ServiceBus 包从 Azure 服务总线发送和接收的消息的事务和跨度。
Elastic.Apm.Azure.Storage
包含检测以捕获使用 Azure.Storage.QueuesAzure.Storage.BlobsAzure.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.SqlClientMicrosoft.Data.SqlClient 检测的包。

此功能现在从 1.24.0 版本开始默认包含在 Elastic.Apm 中。

Elastic.Apm.StackExchange.Redis
包含检测以捕获使用 StackExchange.Redis 包发送到 redis 的命令的跨度。