【发布时间】:2018-01-23 15:45:51
【问题描述】:
设置如下:
- Visual Studio 2017 (15.5.2) 解决方案,带有一个 Web API 项目和 4 个控制台项目。
- 都是.Net Core 2.0。
- 根据https://github.com/Microsoft/ApplicationInsights-aspnetcore/wiki/Getting-Started-for-a-ASP.NET-CORE2.0-WebApp 的 wiki,Application Insights 与所有这些集成在一起
- 它们都指向同一个 AI 资源。
- 为多个启动项目设置解决方案以启动所有 5 个项目。
问题: 在调试期间是观察:
- Visual Studio 调试遥测仅显示来自 API 项目的遥测。并且不显示其他 4 个控制台应用程序。
- 当我转到 Azure 门户并在 AI 资源中搜索时,我可以看到其他 4 个项目的遥测数据。看不到 API 项目。
我可能会错过什么?这两天一直在苦苦挣扎……
【问题讨论】:
-
在 Visual Studio 中观察到 Debug 输出。看到正在为所有项目生成遥测。 Web 与控制台项目是有区别的。 WebAPI 项目的遥测以“Application Insights Telemetry(未配置):”开头,对于控制台项目,它以“Application Insights Telemetry:”开头
-
看来 VS 不认为 AI 是为 web 项目配置的,并且仅在本地显示遥测。对于控制台项目,遥测被发送到 azure,并且不会在本地显示。我已严格按照github.com/Microsoft/ApplicationInsights-aspnetcore/wiki/… 的说明配置 WebAPI 和 Console 项目。
-
在 WebAPI AI 输出中找到“(未配置)”文本的原因。只是因为 appsettings.json 的位置错误。修复它,不再看到文本。但原来的问题仍然存在。
-
在进一步的故障排除中,只有当它是 WebAPI + 控制台项目的组合时才会出现原始问题。只是一起调试两个控制台项目不会导致问题。
-
WebAPI 项目输出遥测以 ""name":"Microsoft.ApplicationInsights.Dev.7eccb92b0d144a698703a36b70d05f65.Event"" 控制台应用程序将其输出为 ""name":"Microsoft.ApplicationInsights.7eccb92b0d144a698703a36b70d05f65.Event "" 注意 WebAPI 输出中的“.Dev”。 VS 仅显示这些消息而忽略其余消息。与托管环境有关的东西?
标签: visual-studio-2017 azure-application-insights .net-core-2.0