我正在尝试将Application Insights改造成现有应用,但无论我做什么,我似乎只能从前端获得遥测:
(注意“添加应用程序见解SDK ...”横幅,“无数据”警告,显然所有服务器响应和0服务器请求的0ms - 服务器响应时间的小蓝半圆只是当前选定的点)
我安装了以下nuget包的v2.1.0:
"Microsoft.ApplicationInsights"
"Microsoft.ApplicationInsights.Agent.Intercept"
"Microsoft.ApplicationInsights.DependencyCollector"
"Microsoft.ApplicationInsights.NLogTarget"
"Microsoft.ApplicationInsights.PerfCounterCollector"
"Microsoft.ApplicationInsights.Web"
"Microsoft.ApplicationInsights.WindowsServer"
"Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel"
并将我的检测密钥添加到ApplicationInsights.config文件中:
<InstrumentationKey>{my key here}</InstrumentationKey>
</ApplicationInsights>
我还监控了通过ETW的事件,我看到很多消息表明数据已经记录,尽管还有很多消息说:
WebTelemetryInitializerNotExecutedOnNullHttpContext
但不确定这是不是问题?
为了进一步混淆,某些服务器端数据确实似乎正在通过,因为应用程序映射如下所示:
我也尝试在盒子上安装Application Insights Agent,但这让我看不出任何差别!
似乎有很多类似的问题,但它们似乎都没有解析,解决方法是删除并重新添加nuget包(尝试过)或者有多个ApplicationInsights.config文件(已检查和没有)......
N.B。此应用程序通常在AWS EC2中的VM上运行,但没有阻止任何出站流量的防火墙规则,我也尝试在本地运行它...
答案 0 :(得分:0)
是的,问题是您找到的WebTelemetryInitializerNotExecutedOnNullHttpContext消息。查看source code,这意味着HttpContext.Current为null。
我不确定为什么会出现这种情况,所以请您详细说明您的网络应用结构?您是否在VM上运行IIS?
答案 1 :(得分:0)
搞定了,但无法解释。
从头开始,这次它起作用了,尽管我最初的尝试并且从头开始上次没有。
我注意到有一些新功能,例如与Code Lens的集成,所以我不知道Application Insights中是否有任何更改,或连续两次出错(尽管我不知道可能出错了,因为添加Application Insights并不是一个复杂的过程!)
答案 2 :(得分:0)
对于ASP.NET项目,也请考虑使用的天蓝色区域。 “德国西部中部”地区存在问题。它不会将所有数据同步到蔚蓝的应用程序见解。我们通过将应用程序洞察天蓝色实例切换到“欧洲西部”区域来解决了我们的问题(ASP.NET CORE项目没有问题)。
我不知道为什么MS不提这个事实,但是经过数小时的搜索,我们发现了以下github条目-> https://github.com/microsoft/ApplicationInsights-dotnet/issues/1931