我目前使用在WPF應用程序的應用見解。我手工處理幾乎所有的東西,所以在啓動時創建一個遙測客戶端和像數據庫版本,可用RAM,顯示器的數量等設置多個上下文屬性這是我們用它來細分和過濾我們的遙測數據信息。在Application Insights中,如何避免在每個請求中發送會話自定義數據?
我的問題是,所有這些信息的發送時間間隔時間每次調用遙測客戶端(trackPageview的,TrackEvent等)。有沒有辦法在每個會話中只發送一次信息,但仍然可以在門戶網站中過濾和分段信息?
這裏是我的代碼的摘錄:
private static TelemetryClient _telemetry;
public static void Initialize(DeviceInfo deviceInfo, ApplicationInfo appInfo) {
_telemetry = new TelemetryClient(TelemetryConfiguration.Active);
_telemetry.Context.Device.OperatingSystem = deviceInfo.OsVersion;
_telemetry.Context.Device.Id = deviceInfo.ProcessorId;
_telemetry.Context.Component.Version = appInfo.Version;
_telemetry.Context.Session.Id = Guid.NewGuid().ToString();
_telemetry.Context.User.Id = appInfo.UserId;
_telemetry.Context.Properties["Cpu"] = deviceInfo.Cpu;
_telemetry.Context.Properties["NumberOfMonitors"] = deviceInfo.NumberOfMonitors;
_telemetry.Context.Properties["TotalAvailableMemory"] = deviceInfo.TotalAvailableMemory;
}
public static void TrackPageView(string pageName) {
_telemetry.TrackPageView(pageName);
}
這就是我懷疑,但我不知道如果我失去了一些東西明顯。無論如何,很高興知道。 – Mike