我正在开发几个 ASP.NET Web 服务,这些服务使用 SQL Server 进行存储,使用 Azure Application Insights 进行遥测。当在 IISExpress 下本地运行服务时,我没有在依赖性遥测中获得完整的 SQL 命令文本(尽管当 SP 被调用时,我确实看到了存储过程名称),因此,我遵循了 文档中的建议 为这个方案,并从System.Data.SqlClient迁移到新的Microsoft.Data.SqlClient包。
现在我 没有看到任何SQL依赖性遥测 从任何使用Microsoft.Data.SqlClient的组件。这不是我所希望的结果。
在改变之前,依赖关系遥测中的 sdkVersion 是 "rddf:2.11.2-28447"。文档中说我应该在这里看到 "rdp: "前缀,但由于不再有 任何 SQL遥测,我没有任何东西可以检查。
有一个服务使用了Microsoft.AspNet.Identity.EntityFramework的一些代码,它继续使用System.Data.SqlClient(不知道怎么改)。SQL依赖性遥测仍然在为这些类生成,当然不包括完整的命令文本,仍然有 "rddf: "SDK版本前缀。
我需要做什么才能获得包含完整命令文本的SQL依赖遥测?
一些细节。
如果你使用的是 Microsoft.Data.SqlClient 1.0.19269.1。. 有一个 发出 关于这一点。
在我的.net 4.7.2网站项目中,我使用了 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