Chr*_*ris 2 .net sqlclient azure-application-insights
我们在 .NET Framework 4.7.2 应用程序中使用Application Insights SDK (v2.14),并且能够成功跟踪 SQL 依赖项(尽管没有查询文本)。
我们现在正在从 System.Data.SqlClient 迁移到Microsoft.Data.SqlClient包,因此我们还可以进行高级 SQL 跟踪以查看遥测中的完整查询文本。我们更新了 ApplicationInsights.config 文件以将EnableSqlCommandTextInstrumentation设置为true。
但是,安装最新的 Microsoft.Data.SqlClient 包(撰写本文时为 2.01)后,我们不再使用客户端跟踪代码的任何 SQL 依赖项。
有什么问题吗?
问题是Application Insights SDK和Microsoft.Data.SqlClient版本的组合。
Microsoft.Data.SqlClient 2.0 版更改了 EventSource 跟踪的命名,从而有效地破坏了 AI SDK 2.15 及之前版本(在撰写本文时)对 SQL 依赖项跟踪的支持。
解决方法是将 Microsoft.Data.SqlClient 降级到版本 1.1.3,该版本具有旧的 EventSource 命名。这将恢复 SQL 依赖项跟踪(如果添加EnableSqlCommandTextInstrumentation标志,则显示 SQL 查询文本)。
据报道,AI SDK 存在一些问题来解决此问题(特别是2032 年),这有望意味着此问题在未来得到解决。
我希望这可以帮助那些像我一样拔头发的人:)
| 归档时间: |
|
| 查看次数: |
1356 次 |
| 最近记录: |