2015-07-18 97 views
3

我創建了一個雲服務項目有以下作用:Azure應用程序洞察 - 在Worker角色過程CPU

  • 一個Web角色
  • 一個工人的作用

對於這兩個角色,我添加了Azure Application Insights SDK/Nuget pkg。我還將狀態監視器添加到他們兩個,啓動任務。兩個角色指向不同的AI資源。對於Worker角色,我還在csdef文件中添加了以下三個環境變量。

<Environment> 
     <Variable name="COR_ENABLE_PROFILING" value="1" /> 
     <Variable name="COR_PROFILER" value="{324F817A-7420-4E6D-B3C1-143FBED6D855}" /> 
     <Variable name="MicrosoftInstrumentationEngine_Host" value="{CA487940-57D2-10BF-11B2-A3AD5A13CBC0}" /> 
</Environment> 

的問題是不同的Web角色,輔助角色不填充在應用程序的見解CPU使用率/可用內存,如可以在下面所示。 Worker角色的

應用洞察資源:

enter image description here

什麼可以是問題,我可以在上面顯示的環境變量使用任何GUID?

此外,似乎對於工作者角色,我們需要將ApplicationInsights.config文件始終複製到輸出目錄。但是,當我這樣做時,worker角色會引發任務異常並繼續重新啓動,最終導致部署失敗。

+0

您是否可能需要在worker角色中開始分析?也許網絡角色自動執行它?當我搜索COR_PROFILER時,我一直在找人引用這個env變量:COR_PROFILER_PATH,你沒有定義 – Thraka

+0

然後,你是否開始根據這個工作角色的OnStart收集遙測數據? https://github.com/Microsoft/ApplicationInsights-Home/blob/master/Samples/AzureEmailService/WorkerRoleA/WorkerRoleA.cs#L232 – Thraka

+0

複製ApplicationInsights.config解決了我的問題。部署WR時會發生什麼錯誤? – cdiazal

回答

1

1)爲了收集性能計數器帳戶,您運行的工作角色進程(WaWorkerHost.exe)應該是Performance Monitor用戶組的一部分。

看看下面的線程:它解釋瞭如何修改啓動任務(InstallAgent.ps1)以提供正確的權限。它是爲Web角色完成的,因此您需要用您的案例中正確的帳戶替換$ user =「Network Service」。

add Azure Application insight Status Monitor from command line

2)不,你不能使用任何的GUID環境變量。它是AppInsights概要分析器的預定義COM對象GUID。

+0

我在Network Monitor Users和Performance Log Users組中添加了網絡服務用戶(在其下運行WaWorkerHost.exe),但我仍沒有在服務器刀片中填充任何數據。 –