C# 使用Application Insights Status Monitor监视ASP.NET应用程序中的实体框架性能

C# 使用Application Insights Status Monitor监视ASP.NET应用程序中的实体框架性能,c#,asp.net,.net,entity-framework,azure-application-insights,C#,Asp.net,.net,Entity Framework,Azure Application Insights,我一直在使用application Insights(AI)监控我的ASP.NET应用程序。最近,我还在我的web服务器(带IIS的Windows server 2012 R2)上安装了AI状态监视器,以获取有关我的应用程序的更详细的统计信息。如前所述,AI状态监视器报告依赖性诊断,即调用数据库、REST API等。因此,我认为我可以通过应用程序中的实体框架对数据库调用进行诊断 但是,应用程序的“我的AI”中没有显示数据库调用诊断。然而,AI状态监视器之所以能够工作,是因为我开始接收关于其他依赖

我一直在使用application Insights(AI)监控我的ASP.NET应用程序。最近,我还在我的web服务器(带IIS的Windows server 2012 R2)上安装了AI状态监视器,以获取有关我的应用程序的更详细的统计信息。如前所述,AI状态监视器报告依赖性诊断,即调用数据库、REST API等。因此,我认为我可以通过应用程序中的实体框架对数据库调用进行诊断

但是,应用程序的“我的AI”中没有显示数据库调用诊断。然而,AI状态监视器之所以能够工作,是因为我开始接收关于其他依赖项的诊断,而不是数据库(即,在防火墙上阻塞通信端口不太可能是一个问题)


是否有人成功地设置了AI状态监视器以使用实体框架报告数据库诊断?我是否缺少任何需要添加到应用程序代码或AI状态监视器的配置?

一个可能的问题是,您需要将IIS应用程序池的标识添加到“性能监视器用户”组,这可能是您的问题;如果您也没有收到任何发送的性能计数器数据,那么这肯定是造成这种情况的原因


另一种可能是IIS站点上未启用“分析”。在Web服务器上启动AI SM时,如果已为IIS禁用COR配置文件,则右上角的“更新配置”中将有一个按钮(您可以单击该按钮,然后几秒钟后单击“重新启动IIS”按钮)。如果遇到这种情况,如果您的公司环境使用SCOM,则可能会发生冲突。它会工作几天,但最终SCOM会注意到它自己的一部分不再工作,它会覆盖它,您将再次丢失依赖项数据。AI SM和SCOM的MMA之间存在冲突,直到2016年SCOM才会解决。

在applicationingsights.config的遥测模块中是否有DependencyTrackingTelemetry模块?是的,我在
遥测模块中有
。好的,我正在使用EF,我正在获取sql遥测,并且没有做任何特殊配置。。好吧,不管你是使用EF还是使用普通的ado.net,我都不知道。很抱歉,我不知道。谢谢@Eivind T,你确认你正在使用SQL遥测,没有任何特殊配置。这个问题解决了吗?谢谢你的提示,但是这两个问题都不是我的问题。我确保IIS应用程序池标识是“性能监视器用户”组的成员(如果不是,您还会在AI SM中收到警告)。我也没有看到“更新配置”按钮,我们也没有使用SCOM,因此我认为这不是我的问题的原因。。。