代码之家  ›  专栏  ›  技术社区  ›  A.Pet

回收时将调试器附加到应用程序池

  •  1
  • A.Pet  · 技术社区  · 6 年前

    我需要调试一个加载到特定应用程序池进程上的dll。我正在使用WinDbg,到目前为止,我已经成功地找到了正确的w3wp。exe进程。问题是,应用程序池会自我循环,有时在它达到我想要的结果之前(一个非常难以捉摸的第二次机会例外)。然后,我需要重新开始。
    如何配置WinDbg以自动连接到w3wp。每次启动时都连接到特定应用程序池的exe进程?
    另一个解决方案是获取崩溃转储—我尝试使用ADPlus。但它也需要在一个进程上启动,我没有找到一种方法,只在我需要的进程上自动重新运行它,每次它启动时。

    总之,我需要一种从w3wp获取崩溃转储的方法。连接到特定IIS应用程序池的exe进程,该进程在再次发生异常时崩溃,而该进程偶尔会重新启动一次(没有足够的时间让我每次手动运行调试工具)。

    1 回复  |  直到 6 年前
        1
  •  0
  •   A.Pet    6 年前

    最终,我发现了这个很棒的工具,叫做DebugDiag,它是微软的官方工具。它有一个很好的接口,允许收集特定事件(如异常)的转储,并创建非常有用的日志。
    最重要的是,它有一个专门用于IIS调试的特殊部分,允许我选择我感兴趣的应用程序池。
    下载可用 here .