Azure Application Insights 不跟踪 SQL 查询

Ken*_*enR 6 azure azure-application-insights asp.net-core-3.1

将 Web 应用程序升级到 .Net Core 3.1 后,我们无法再看到在 Application Insights 中执行的实际 SQL 查询。由于 EF Core 3.x 存在一些严重的性能问题,我们将 EF Core 保留在 2.2 版本,因此不确定这是否与此有关?我们现在看到的只是目标数据库的详细信息:

在此输入图像描述

在此之前,我们使用 AspNetCore 2.2 和 EF Core 2.2,一切都工作正常,Application Insights 向我们展示了正在执行的实际 SQL 语句。

我们尝试了Microsoft 的建议,建议将Microsoft.Data.SqlClient nuget 包添加到项目中,但这绝对没有任何作用。

我们还尝试在应用服务中打开“ Application Insights -> Sql Commands ”选项,但这也没有任何作用。

在此输入图像描述

有人对如何使其再次正常工作有任何建议吗?

谢谢

编辑:

我们引用的 Nuget 包:

在此输入图像描述

iko*_*ddn 9

我相信这是因为 SQL 命令收集从 2.14 版本开始默认关闭。可以通过以下方式启用它:

services.ConfigureTelemetryModule<DependencyTrackingTelemetryModule>((module, o) => { module. EnableSqlCommandTextInstrumentation = true; });
Run Code Online (Sandbox Code Playgroud)

更多信息请参见:https ://github.com/microsoft/ApplicationInsights-Announcements/issues/28


Iva*_*ang 5

看来是最新版本的问题Microsoft.ApplicationInsights.AspNetCore 2.14.0。我可以在2.14.0中重现该问题,但当我将其降级到2.12.0时它会起作用。

使用的测试结果Microsoft.ApplicationInsights.AspNetCore 2.12.0

在此输入图像描述