内存泄漏检测(预览)

注意

你可以将 Application Insights 资源迁移到基于警报的智能检测(预览版)。 迁移时会为各种智能检测模块创建警报规则。 创建规则后,可以像管理和配置任何其他 Azure Monitor 警报规则一样对其进行管理和配置。 你还可以为这些规则配置操作组,以启用多种方法对新的检测执行操作或触发通知。

有关详细信息,请参阅智能检测警报迁移

智能检测会自动分析你的应用程序中每个进程的内存消耗。 它可以警告你潜在的内存泄漏或内存消耗增加。

此功能需要配置性能计数器,除此之外,不需要其他特殊设置。 当应用生成的内存性能计数器遥测数据(例如,专用字节数)足够多时,它处于活动状态。

何时会收到此类型的智能检测通知?

典型的通知会在稳定增加后出现:

  • 长时间的内存消耗。
  • 在应用程序的一个或多个进程或计算机中。

机器学习算法用于检测与内存泄漏模式匹配的内存消耗增加。

我的应用真的有问题吗?

通知并不意味着应用肯定有问题。 即使内存泄漏模式可能会说明存在应用程序问题,这些模式可能对你的特定进程来说是典型的。 内存泄漏模式也可能具有自然的业务理由。 在这种情况下,可以忽略通知。

如何解决问题?

通知包括诊断信息,以在诊断分析进程中提供支持:

  1. 会审:通知显示增加的内存量(以 GB 为单位),以及内存增加的时间范围。 此信息可以帮助你对问题分配优先级。
  2. 范围:有多少台计算机表现出内存泄漏模式? 可能内存泄漏期间触发了多少个异常? 可以从通知中获取此信息。
  3. 诊断:检测包含内存泄漏模式,并显示随时间推移进程的内存消耗量。 还可以使用链接到支持信息的相关项和报告,以帮助进一步诊断问题。