对于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/