Asp.net mvc 在没有Azure资源/存储的自定义仪表板上显示ApplicationInsights指标
我正在设计一个系统(堆栈:MVC5、EF6、SQL Server),它需要捕获大量有关用户与应用程序各个组件交互的信息 例如Asp.net mvc 在没有Azure资源/存储的自定义仪表板上显示ApplicationInsights指标,asp.net-mvc,analytics,azure-application-insights,Asp.net Mvc,Analytics,Azure Application Insights,我正在设计一个系统(堆栈:MVC5、EF6、SQL Server),它需要捕获大量有关用户与应用程序各个组件交互的信息 例如 用户在特定屏幕上花费的时间 用户执行什么操作:查看、编辑页面/表单 空闲时间 特定工作流中的进度 并在同一web应用程序的管理仪表板上显示所有这些信息。 执行此操作的传统方法是在发生特定操作时触发sql查询,并将此信息保存在应用程序数据库中。问题是,我不想用所有这些任务使主应用程序服务器过载,而且这种方法对我来说似乎不太健壮 我正在阅读有关应用程序洞察(遥测和自定义事件)
我真的很想得到一些指导。谢谢。您可以使用PowerBI仪表板,直接集成到Application Insights,特别是在这种情况下可能使用的分析查询
也可以考虑使用Apple Debug IsApple()直接实现这一点,包括与一些流行的仪表板集成。请注意,API现在处于早期预览阶段,因此我们可能会引入一些更改,但总体形状应该是稳定的
我也很好奇是什么阻止你使用Azure-我们想了解更多关于它的信息。请注意,Application Insights将it数据存储在Azure中 对于只想使用Application Insights SDK,同时在所选工具中“本地”存储和分析数据的特定情况,这也是可能的。(注意:在这种情况下,您只能从App Insights SDK和模式中受益,为将来使用完整的App Insights打开大门)。为了实现这一点,您可以考虑实现自定义遥测信道-请参阅这里的一些附加信息:在实施此方法时,您应该注意卷-我主张通过某种形式的队列机制将其解耦,使其更容易保护您的应用程序,平衡负载,并监控 谢谢你的信息,奥列格。您提到的两种解决方案都依赖于将Azure存储作为后端。不幸的是,该组织需要在本地拥有基础设施。理想情况下,我希望使用ApplicationInsights框架(更多用于自定义事件/操作),但使用不同的/可配置的数据源(SQL/NoSql,托管在组织的基础设施上)。在这种情况下,您只会受益于App Insights SDK和模式(并保留将来开始使用完整App Insights的选项)。您可以考虑实施自定义遥测频道-请参阅这里的一些附加信息:再次感谢奥列格,我阅读更多的定制遥测频道。在共享的链接中,它将数据存储在文件中。是否可以使用自定义通道将其直接存储到SQL表中?可能是的,但您应该注意卷…写入SQL可能会很慢。。。我主张通过某种形式的队列机制将其解耦,使其更容易保护您的应用程序,平衡负载并进行监控……太好了。谢谢你的提醒,奥列格。如果您愿意将其作为答案,我很乐意将其标记为答案:)