2015-10-23 46 views
0

我試圖讓應用洞察與我的WPF應用程序的工作,但每當我試圖調用任何跟蹤功能,我得到一個NullReferenceException這個堆棧跟蹤應用見解與WPF,NullReferenceException異常

微軟。 ApplicationInsights.TelemetryClient.Track(ITelemetry遙測)

在Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(TraceTelemetry遙測)

在Microsoft.ApplicationInsights.TelemetryClient.TrackTrace(字符串消息)

我在天青添加的應用程序,使得我得到一個instrumentationKey(隱藏在下面的代碼)中,添加的NuGet包和輸入的這樣的代碼:

var config = new TelemetryConfiguration(); 
client = new TelemetryClient(config); 
config.InstrumentationKey = "myKey"; 
client.InstrumentationKey = "myKey"; 
client.TrackTrace("testing testing"); 
client.Flush(); 

所述的碰撞發生在5:上述行和第無論使用哪個版本的nuget包,都會發生這種情況。

我聽說有人提到ApplicationInsights.config,但沒有爲我生成這樣的文件。

回答

0

剛剛遇到同樣的問題。我們得到了它的代碼的工作,如:

// setup the client 
TelemetryClient tc = new TelemetryClient(); 
tc.InstrumentationKey = "key copied from portal"; 

// Set session data: 
tc.Context.User.Id = Environment.UserName; 
tc.Context.Session.Id = Guid.NewGuid().ToString(); 
tc.Context.Device.OperatingSystem = Environment.OSVersion.ToString(); 

tc.TrackTrace("some data...."); 
tc.Flush(); // only for desktop apps 

你可以看到更多的細節在Application Insights on Windows Desktop apps, services and worker roles

+0

我得到了這個工作,但它工作,即使只是建設和跟蹤調用現在,所以不知道究竟是什麼使其工作。 –

0

使用TelemetryConfiguration.Active,而不是創建一個新的實例。

無需在客戶端實例上設置InstrumentationKey。當您設置活動配置時,它將爲每個新的客戶端實例使用該密鑰。只有在您將特定的遙測發送到自定義/不同於配置的按鍵時,才能在遙測客戶端上明確設置按鍵。

TelemetryConfiguration.Active.InstrumentationKey = "myKey"; 
client = new TelemetryClient(); 
client.TrackTrace("testing testing"); 
client.Flush(); 
相關問題