.Net Core DebugDiag等效

bla*_*ist 7 .net linux debugdiag .net-core asp.net-core

对于.Net 4.6.x,我非常依赖DebugDiag 2

任何时候生产应用程序有高CPU问题,死锁等,我会使用该工具捕获w3svc的转储,并打印出一个很好的报告,说明所有线程正在做什么.他们可能正在等待第三方api,数据库等.

我想转移到asp.net核心,但如果我有一个生产服务器w/100%cpu或上面提到的问题,我无法找到你可以转储进程中的所有线程并看到他们的堆栈跟踪.

如何让人们无法获得这种可见性?我错过了什么吗?我正在寻找一种适用于Linux的解决方案.

mak*_*h81 0

我推荐 IDA,它是一个调试器和反汇编器。它在 Linux 上运行,可用于转储所有线程并执行堆栈跟踪。 这是它的链接。或者,Microsoft 现在允许您直接从 Visual Code Studio 进行调试并将线程转储到那里。有很多关于这方面的教程,快速的 Google 搜索可以提供帮助,或者查看 Microsoft 帮助中心。在这里检查一下

  • 这个问题要求与 DebugDiag 等效... DebugDiag 能够仅指向转储文件,它会生成一个突出显示问题的报告,并且会输出带有堆栈跟踪的简单线程列表。我尝试了 IDA 评估版,这并不等效 - 它似乎是像 WinDbg 这样的低级实用程序,这不是这个问题所寻找的。 (2认同)