对于Azure App Insights中的Flush()方法,我想知道它是否会影响项目的性能?

我尝试删除Flush(),所有自定义数据仍发送到App Insights。所以我的问题应该是为什么我们需要Flush()?我们可以删除它吗?

最佳答案

Flush()上的TelemetryClient将当前在缓冲区中拥有的所有数据推送到App Insights服务。
您可以在此处查看其源代码:https://github.com/Microsoft/ApplicationInsights-dotnet/blob/3115fe1cc866a15d09e9b5f1f7f596385406433d/src/Microsoft.ApplicationInsights/TelemetryClient.cs#L593

通常,Application Insights将在后台批量发送数据,以便更有效地利用网络。
如果启用了开发人员模式或手动调用Flush(),则立即发送数据。

通常,您不需要调用Flush()。
但是,如果您知道该过程将在那之后退出,则需要调用Flush()来确保所有数据都已发送。

关于azure - Azure App Insights中的Flush(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51954418/

10-12 22:44