首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >试图使用TelemetryClient发送多个遥测的慢速

试图使用TelemetryClient发送多个遥测的慢速
EN

Stack Overflow用户
提问于 2022-08-08 14:22:56
回答 1查看 76关注 0票数 0

我正在使用ApplicationInsights NuGet in C#:

我的用例有点不同,因为我们的系统对性能敏感,所以我们将遥测记录在一个文件中,然后将其上传到应用程序的洞察力中。

我们的代码可能会产生100 k甚至数百万的遥测,然后我们有一段代码可以遍历这些文件,并使用TelemetryClient in C#将它们上传到应用程序洞察力中。

我们注意到上传300 K的唱片需要10米,这比我们预期的要多得多。

  1. 我们试图像这样增加缓冲区大小,但没有成功(仍然有10米): 变量配置= TelemetryConfiguration.CreateDefault();configuration.ConnectionString = connectionString;var信道=新InMemoryChannel { MaxTelemetryBufferCapacity = 10000 };configuration.TelemetryChannel =通道;_telemetryClient =新TelemetryClient(配置);_telemetryClient.Context.Session.Id = sessionId ??Guid.NewGuid().ToString();
  2. 我们尝试创建10个不同的TelemetryClient实例,将遥测设备分成几个批次,然后上传,仍然是-1000万个。

我们检查了代码,我们可以看到它缓冲了遥测,然后将它们分批发送到蔚蓝服务,但我们不知道为什么要花这么多时间。

如果有人能指点我就好了。

EN

回答 1

Stack Overflow用户

发布于 2022-08-09 06:04:18

为什么要花那么多时间?

如果您想将遥测数据发送到应用程序内部,则它具有延迟,在 5分钟下。如果我们是将大量的no数据文件发送到Application中,那么根据文件中可用的数据,这需要超过5分钟。

将遥测数据发送到应用程序内部的过程是由于聚合遥测客户端将数据发送到缓冲区,并分批发送。在整个过程中,它将您的遥测数据添加到应用程序中,这需要时间在Azure门户中显示。

聚合包含以下背景过程:

  • 吞食
  • 正在处理中
  • 索引
  • 将您的遥测数据存储到应用程序洞察中。

应用洞察中如何快速获取遥测响应

  1. 尝试在您的应用程序中启用Developer模式具有真正的,这样我们就可以在应用程序中看到我们的遥测数据,并且延迟小于2分钟()。 (,但使用这个开发人员Mode= true,它不能完成聚合过程,它只是将消息推送到Application 中)
代码语言:javascript
复制
TelemetryConfiguration.Active.TelemetryChannel.DeveloperMode = true;
  1. 使用活流在您的蔚蓝门户中的秒内获取遥测数据
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73279434

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档