2015-05-25 96 views
5

我是新來的應用程序的見解,並已設置它使用沒有自定義事件,我使用所有的默認值。該應用程序建立在MVC 5上。在ApplicationInsights.config中有一條評論說:在應用程序洞察中設置用戶名

「在應用程序中實施自定義用戶跟蹤時,請移除此遙測初始值設定項,以確保將用戶數準確報告給Application Insights。 「

我們有一個頁面,您需要登錄,所以默認的用戶日誌記錄並不那麼多,我們更願意將用戶名作爲唯一標識符。根據評論,這似乎應該是某種常見的修改,因此很容易修改。當試圖谷歌「自定義用戶跟蹤」我沒有發現任何有趣的,這似乎有點奇怪...

那麼我如何鏈接用戶在應用程序見解我的用戶名,而不是去一些cookie似乎是默認行爲?

回答

9

要將用戶鏈接到自定義的用戶名,您可以創建以下遙測初始化:

public class RealUserIDTelemetryInitializer:ITelemetryInitializer 
{ 
    public void Initialize(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) 
    { 
     // Replace this with your custom logic 
     if (DateTime.Now.Ticks % 2 > 0) 
     { 
      telemetry.Context.User.Id = "Ron Weasley"; 
     } 
     else 
     { 
      telemetry.Context.User.Id = "Hermione Granger"; 
     } 
    } 
} 

然後註冊在AI.config這遙測初始化。

 <TelemetryInitializers> 
.... 
     <Add Type="MyApp.RealUserIDTelemetryInitializer, MyApp" /> 
     </TelemetryInitializers>