我一直用Application Insights(AI)监视我的ASP.NET应用程序。最近,我还在我的Web服务器(带有IIS的Windows Server 2012 R2)上安装了AI Status Monitor,以获取有关我的应用程序的更详细统计信息。正如the documentation所述,AI Status Monitor报告依赖性诊断,即。调用数据库,REST API等。因此我想我会在我的应用程序中通过Entity Framework进行数据库调用的诊断。
但是,我的应用程序AI中没有出现数据库调用诊断信息。但是,AI状态监视器的工作原理是因为我开始接收有关其他依赖项的诊断信息,但是数据库(即阻止防火墙上的通信端口不太可能是一个问题)。
是否有人成功设置AI Status Monitor以使用Entity Framework报告数据库诊断?我是否缺少需要添加到应用程序代码或AI状态监视器的任何配置?
答案 0 :(得分:1)
一个可能的问题是您需要将IIS应用程序池的标识添加到“性能监视器用户”组,这可能是您的问题;如果您还没有收到任何性能计数器数据,那么这肯定是原因。
另一种可能是您的IIS站点上未启用“性能分析”。当你在网络服务器上启动AI SM时,如果已经为IIS禁用了COR配置文件,那么右上角会有一个按钮“更新配置”(你点击那个按钮,然后几秒钟后点击重启IIS按钮)。如果遇到这种情况,如果您的公司环境使用SCOM,则可能会发生冲突。它会工作几天,但最终SCOM会注意到它本身不再有效,它会覆盖它,你将再次丢失依赖数据。 AI SM和SCOM的MMA之间存在冲突,直到SCOM 2016才会解决。