代码之家  ›  专栏  ›  技术社区  ›  whoami

Intellitrace是否有助于调查生产环境中不期望的内存/cpu使用问题

  •  1
  • whoami  · 技术社区  · 8 年前

    我听到很多关于使用VisualStudio2015和Intellitrace中的新诊断工具调查cpu和内存问题的新功能。假设我需要对生产环境中的高内存或cpu问题进行故障排除。我知道我可以从生产环境中收集iTrace文件,但这对确定高内存/cpu的原因是否有用?到目前为止,我看到的Intellitrace的所有用例都与异常等不期望的行为有关,但我希望看到任何使用Intellitace解决生产内存/cpu问题的教程。

    3 回复  |  直到 8 年前
        1
  •  1
  •   Michał Komorowski    8 年前

    你确实可以使用 独立收集器 记录 智能跟踪 在生产环境中登录。但是,这些日志将不包含任何关于CPU/内存使用情况的信息(实际上 iTrace公司 文件仅包含有关方法调用的信息)。

    这意味着如果你打开 iTrace公司 在VisualStudio中,您将只看到记录的诊断事件列表和调用树(如果IntelliTrace配置为收集调用信息)。 诊断工具 窗口将不可用。如果尝试打开它,将报告以下错误消息:

    “诊断工具”窗口不支持当前的调试配置。

    如果您想使用 Visual Studio 2015诊断工具 要分析您可能感兴趣的生产中的CPU/内存使用情况 Using the Profiling Tools from Command-line 然而,我还没有尝试过这种方法,所以我不知道它是否方便。第二个问题可能是许可。我不确定这些命令行工具是否可以在不安装VS的情况下使用。

        2
  •  0
  •   Community taleinat    7 年前

    我建议建立 remote debugging 针对具有生产环境的目标机器。您不需要在目标上安装Visual Studio,但需要安装 Remote Tools 。调试时,可以使用 CPU Usage Memory Usage 工具。

    除了 this answer 我想补充一下:1) Using the Profiling Tools from Command-line 指中性能向导工具的命令行界面 Performance and Diagnostics Hub CPU使用和内存使用工具目前没有命令行界面;2) 你 do not need 从命令行安装Visual Studio IDE以使用分析工具。

        3
  •  0
  •   Anonymous Coward    8 年前

    您可以在应用程序中构建一个诊断线程来监视异常行为,并在不停止操作的情况下进行有限的转储。

    可以创建一个伪方法,它不执行可疑代码中运行的任何操作,并为其提供一些字符串或int参数。这些将被捕获到IntelliTrace中,以便您可以在IntelliTrace日志中跟踪perf、cpu等值。