应用洞察 - 没有'process cpu'的数据

Mar*_*tin 7 c# wcf azure azure-application-insights

我正在为WCF项目设置应用程序洞察.我遇到的问题是我似乎无法报告进程CPU,可用内存等.图表只是说没有数据.

我有

<Add Type="Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.PerformanceCollectorModule, Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector">
Run Code Online (Sandbox Code Playgroud)

包含在我的applicationinsights.config文件中,正如我在另一篇文章中看到的那样,这是必需的,但这似乎并没有对它进行排序.

有谁知道我是否需要在我的项目中添加任何其他内容才能使其工作?我假设默认会收集这些信息.

Amy*_*myG 13

我遇到了非常类似的问题.获取有关应用程序洞察的所有其他数据,但没有服务器数据,如平均进程CPU,可用内存,进程IO速率等.

我发现在服务器上,我在应用程序池下运行的应用程序没有足够的权限来收集性能数据.(您可以在Application Insights状态监视器预览中检查这一点,通常如果您有权限问题,则会出现警告消息关于它)

做这两个步骤:

  1. 在IIS管理器中,选择您的应用程序池,打开"高级设置",然后在"处理模型"下输入标识.
  2. 在"计算机管理"控制面板中,将此标识添加到"性能监视器用户"组.

应用程序池具有足够的权限来收集性能数据.服务器的所有数据都显示在洞察力上.

https://azure.microsoft.com/en-us/documentation/articles/app-insights-monitor-performance-live-website-now/


Ana*_*ack 2

因为您说您手动将性能计数器模块添加到配置文件中,所以我假设您没有使用Web SDK nuget包,该包应该自动添加此模块。如果是这样,您需要在代码中配置它,而不是创建配置文件。您需要在代码中创建此模块并设置检测密钥。

TelemetryConfiguration.Active.InstrumentationKey = "Foo";
this.perfCounterCollectorModule = new PerformanceCollectorModule();
Run Code Online (Sandbox Code Playgroud)

更多这里