zoukankan      html  css  js  c++  java
  • 【转】Windows Dump文件获取

     dump文件是进程的内存镜像。可以把程序的执行状态,即当时程序内存空间数据通过调试器保存到dump文件中。

    1、利用WinDbg里的adplus来获取dump文件

    Adplus.vbs 是一个Visual Basic Script 文件,Adplus 主要用来生成内存转储文件 (dump file),内存转储文件适用于不能实时调试的情况下。在WinDbg安装目录里可以找到adplus.vbs,使用adplus.vbs生成dump文件,

    adplus -hang -o d:dump -p 1234

    其中hang表示附加到进程,如果是crash,则为目标进程崩溃的时候抓取,-o后面的参数表示dump文件存到位置,-p后面的数字为进程的PID,也可以是-pn后面跟进程名称,如:adplus.vbs -hang -pn ConsoleWindbg.exe -o D:dump

    2、使用Debug Diagnostic Tool(DebugDiag)工具获取dump文件

    下载Debug Diagnostic Tool然后进行安装,打开该工具,Debug Diagnostic Tool可以选择不同的规则来进行dump文件。可以根据程序崩溃时捕获dump文件,也可以根据性能指标来进行捕获,如CPU过高,死锁,HTTP响应时间过程等参数。如下图:

    也可以找到对应的进程,通过如下方法进行捕获。此种方式获取的dump文件放到C:Program FilesDebugDiagLogsMisc下。

    3、使用.dump命令

    1) 打开WinDBG—>File—>Attach to a Process,然后选择将之要进行捕获的进程。如我们这里要对ConsoleWindbg.exe进程产生dump文件。选择后如图:

    2)在上图红色区域的输入框内输入产生dump 文件的命令 .dump 。可以选择不同的参数来生成不同类型的dump文件。

    选项(1): /m

    命令行示例.dump /m D:/dump/myapp.dmp

    注解: 缺省选项,生成标准的minidump, 转储文件通常较小,便于在网络上通过邮件或其他方式传输。 这种文件的信息量较少,只包含系统信息、加载的模块(DLL)信息、 进程信息和线程信息。

    选项(2): /ma

    命令行示例.dump /ma D:/dump/myapp.dmp

    注解: 带有尽量多选项的minidump(包括完整的内存内容、句柄、未加载的模块,等等),文件很大,但如果条件允许(本机调试,局域网环境), 推荐使用这中dump。

     选项(3):/mFhutwd

    命令行示例.dump /mFhutwd D:/dump/myapp.dmp

    注解:带有数据段、非共享的读/写内存页和其他有用的信息的minidump。包含了通过minidump能够得到的最多的信息。是一种折中方案。

    4、使用ProcDump工具

    Procdump是一个轻量级的命令行工具, 它的主要目的是监控应用程序的CPU异常动向, 并在此异常时生成crash dump文件, 供研发人员和管理员确定问题发生的原因。你还可以把它作为生成dump的工具使用在其他的脚本中。有了它, 就完全不需要在同一台服务器上使用诸如32位系统上的Debug Diag 1.1或是64位系统上的ADPlus了。

    Procdump下载:http://technet.microsoft.com/en-us/sysinternals/dd996900

    procdump -ma -c 50% -s 3 -n 2 5844 (Process Name or PID) -o c:dumpfile

    -ma 生成full dump, 即包括进程的所有内存. 默认的dump格式包括线程和句柄信息。

    -c 在CPU使用率到达这个阀值的时候, 生成dump文件。

    -s CPU阀值必须持续多少秒才抓取dump文件。

    -n 在该工具退出之前要抓取多少个dump文件。

    -o dump文件保存目录。

  • 相关阅读:
    VTK 体绘制讨论_光照&阴影、VTKLODProp3D
    VTK 体绘制讨论_颜色传输函数
    VTK 体绘制讨论_梯度不透明度传输函数
    VTK 体绘制讨论_不透明度传输函数
    VTK 体绘制裁剪_Cripping技术
    VTK 体绘制裁剪_Cropping技术
    VTK 纹理映射体绘制_三维纹理映射
    VTK 纹理映射体绘制_二维纹理映射
    VTK 体绘制_固定点光线投影体绘制与GPU加速光线投影体绘制
    VTK 体绘制_光线投影+最大密度投影+等值面法
  • 原文地址:https://www.cnblogs.com/MakeView660/p/7845009.html
Copyright © 2011-2022 走看看