如何分析 [=10th=] 的内存泄漏 (PasS)
how to analyze memory leaks for "azure web apps" (PaaS)
我希望分析部署在 Azure 中的 Web 应用程序的内存泄漏。
参考以下网址
- https://blogs.msdn.microsoft.com/kaushal/2017/05/04/azure-app-service-manually-collect-memory-dumps/
- https://blogs.msdn.microsoft.com/kaushal/2017/05/04/azure-app-service-manually-collect-memory-dumps/
我们能够提取内存转储并对其进行分析。但由于我们无法在收集转储时注入 LeakTrack dll / 启用内存泄漏跟踪,我们收到消息称由于未在执行内存分析时注入 dll 而未执行泄漏分析。
请建议在这种情况下如何通过分析转储找出内存泄漏。
正如您所说,DebugDiag 目前无法创建反射进程转储,并且 ProcDump 无法注入 LeakTrack dll 来跟踪分配。因此,我们可以通过使用这两种工具来解决问题。
我们只需转到 DebugDiag 中的“进程”选项卡,右键单击该进程,然后选择“启动泄漏监控”。
我们可以通过编写 DebugDiag 和 ProcDump 脚本来执行我们为它们设置的单独任务来做到这一点。
一旦我们有了问题进程的 PID,我们就可以使用脚本将 LeakTrack dll 注入到进程中。已知 PID 并创建脚本后,我们可以从命令行启动 DebugDiag。
如:
C:\PROGRA~1\DEBUGD~1\DbgHost.exe -script "your LeakTrack dll path" -attach your PID
更多细节,你可以参考这个article。
这里也是参考.
我希望分析部署在 Azure 中的 Web 应用程序的内存泄漏。
参考以下网址
- https://blogs.msdn.microsoft.com/kaushal/2017/05/04/azure-app-service-manually-collect-memory-dumps/
- https://blogs.msdn.microsoft.com/kaushal/2017/05/04/azure-app-service-manually-collect-memory-dumps/
我们能够提取内存转储并对其进行分析。但由于我们无法在收集转储时注入 LeakTrack dll / 启用内存泄漏跟踪,我们收到消息称由于未在执行内存分析时注入 dll 而未执行泄漏分析。
请建议在这种情况下如何通过分析转储找出内存泄漏。
正如您所说,DebugDiag 目前无法创建反射进程转储,并且 ProcDump 无法注入 LeakTrack dll 来跟踪分配。因此,我们可以通过使用这两种工具来解决问题。
我们只需转到 DebugDiag 中的“进程”选项卡,右键单击该进程,然后选择“启动泄漏监控”。 我们可以通过编写 DebugDiag 和 ProcDump 脚本来执行我们为它们设置的单独任务来做到这一点。
一旦我们有了问题进程的 PID,我们就可以使用脚本将 LeakTrack dll 注入到进程中。已知 PID 并创建脚本后,我们可以从命令行启动 DebugDiag。 如:
C:\PROGRA~1\DEBUGD~1\DbgHost.exe -script "your LeakTrack dll path" -attach your PID
更多细节,你可以参考这个article。
这里也是参考