针对部署到多个环境的Web App的VS Application Insights

Eoi*_*ell 6 c# asp.net-mvc configuration azure azure-application-insights

我正在试验部署到Azure的Web应用程序上的MS Application Insgihts.

似乎没有开箱即用的一件事是按部署环境隔离统计数据/分析.

只是想知道有没有人已经这样做了,以及如何实现它?

这就是我的想法.

  • 在AI中创建4个单独的"应用程序"(每个都有自己的应用程序名称和组件ID)

  • 将单个ApplicationInsights.config添加到Web应用程序项目

  • 手动将App.Config Transforms添加到应用程序,以便在构建时根据Configuratoin(QA,UAT或Prod)替换ComponentName和ComponentId

  • 将条件编译符号添加到Web应用程序构建配置(QA,UAT,PROD)

  • 将"#if QA"预处理器指令添加到razor _layout视图,以便在构建时将正确的ComponentId交换到javascript代码段中.

思考?

小智 6

这就是我们所做的.

  • 创建4个AI应用程序
  • 在我们的ApplicationInsights.config中,我们将其设置为我们的开发组件ID.
  • 对于Test,Stage和Prod,我们使用构建脚本根据我们所处的环境替换componentId和componentName.
  • 在布局javascript获取appId:

    appInsights.start("@ServerAnalytics.ApplicationInsightsId");
    
    Run Code Online (Sandbox Code Playgroud)