移动到 Microsoft.Data.SqlClient 后没有 SQL 依赖遥测

Bob*_*ers 5 sql-server asp.net azure sqlclient azure-application-insights

我正在开发多个 ASP.NET Web 服务,这些服务使用 SQL Server 进行存储并使用 Azure Application Insights 进行遥测。在 IISExpress 下本地运行服务时,我没有在依赖遥测中获得完整的 SQL 命令文本(尽管在调用 SP 时我确实看到了存储过程名称),所以我遵循了文档中针对这种情况的建议,并从System.Data.SqlClient 到新的 Microsoft.Data.SqlClient 包。

现在我没有看到来自使用 Microsoft.Data.SqlClient 的任何组件的任何 SQL 依赖遥测。这不是我希望的结果。

在更改之前,依赖遥测中的 sdkVersion 是“rddf:2.11.2-28447”。文档说我应该在这里看到一个“rddp:”前缀,但由于不再有任何SQL 遥测,我没有任何东西要检查。

一项服务使用 Microsoft.AspNet.Identity.EntityFramework 中的一些代码,该代码继续使用 System.Data.SqlClient(不确定如何更改)。仍在为这些类生成 SQL 依赖遥测,但当然不包括完整的命令文本,并且仍然具有“rddf:”SDK 版本前缀。

我需要做什么才能获得包含完整命令文本的 SQL 依赖遥测?

一些细节:

  • .NET 框架 4.7.2
  • Microsoft.ApplicationInsights.Web 2.11.2
  • Microsoft.ApplicationInsights.DependencyCollector 2.11.2
  • Microsoft.Data.SqlClient 1.0.19269.1。较新的版本 (1.1.x) 需要更新到 Microsoft.IdentityModel.JsonWebTokens,我目前无法接受。

Iva*_*ang 2

如果您使用的是Microsoft.Data.SqlClient 1.0.19269.1 ,则它无法包含完整的 sql 命令文本。这有一个问题

在我的 .net 4.7.2 Web 项目中,我使用Microsoft.Data.SqlClient 1.1.0。可以包含完整的 sql 命令文本。截图如下:

在此输入图像描述

我正在使用的其他 nuget 软件包:

Microsoft.ApplicationInsights.Web 2.11.0

Microsoft.ApplicationInsights.DependencyCollector 2.11.0

Microsoft.ApplicationInsights 2.14.0