gpt4 book ai didi

azure - C#应用程序洞察失败: TrackEvent Does not send to Azure Application Insight

转载 作者:行者123 更新时间:2023-12-02 20:17:49 25 4
gpt4 key购买 nike

我对 Azure Application Insight 完全陌生,并尝试通过我的本地计算机发送 TrackEvent。但Azure Application Insight似乎没有收到任何东西。

这是我的要求。规范我安装了 application Insight sdk nuget 的示例 asp.net 框架控制台代码是使用遥测客户端和配置的 Instrumental Id 进行设置的。控制台运行后,Azure 应用程序洞察应按预期显示历史记录。但它没有显示任何东西。我错过了什么吗?

我的简单控制台代码

Microsoft.ApplicationInsights.Extensibility.TelemetryConfiguration.Active.InstrumentationKey = "c453fec7-ea68-4c06-83e4-2938eef1f124";
TelemetryClient telemetry = new TelemetryClient();
telemetry.Context.User.Id = "Test User Id.";
telemetry.Context.User.Id = "Test Device Id.";
telemetry.TrackEvent("Test TrackEvent");

InstrumentationKey 正确。Telemetry.TractEvent 方法不会公开异常。Azure Application Insight 搜索(针对自定义事件)不显示历史记录。

谢谢。

最佳答案

原因可能是以下原因之一:

  1. 对于 .net 控制台应用程序,在门户中创建 Application Insights 时,应为应用程序类型选择“常规”。请引用下面的屏幕截图。 enter image description here

2.在控制台代码中,您应该添加 Flush() 和 sleep() 方法。

        static void Main(string[] args)
{
TelemetryConfiguration.Active.InstrumentationKey = "your key";
var telemetryClient = new TelemetryClient();
telemetryClient.Context.User.Id = "uid1";
telemetryClient.Context.Device.Id = "did1";
telemetryClient.TrackEvent("AtestEvent7");
telemetryClient.Flush();

System.Threading.Thread.Sleep(5000);
}

然后稍等片刻,就可以在portal中看到自定义事件了: enter image description here

顺便说一句,我注意到您在代码中定义了两次 telemetry.Context.User.Id ,可能是一个拼写错误。

关于azure - C#应用程序洞察失败: TrackEvent Does not send to Azure Application Insight,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52035598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com