Procdump是一个轻量级的Sysinternal团队开发的命令行工具, 它的主要目的是监控应用程序的CPU异常动向, 并在此异常时生成crash dump文件, 供研发人员和管理员确定问题发生的原因. 你还可以把它作为生成dump的工具使用在其他的脚本中.

有了它, 就完全不需要在同一台服务器上使用诸如32位系统上的Debug Diag 1.1或是64位系统上的ADPlus了.

问题描述

===============

在任务管理器里发现w3wp.exe的CPU总在49%-60%左右, 间歇性地会下降一些. 我们需要在w3wp.exe的CPU在50%以上并能维持三秒钟的情形下抓取两组dump. 如果使用debug diag或adplus的话, 会比较困难, 因为这需要等待时机并手动抓取. 容易出现抓到的dump里不包含那些引发异常的动作的情况.

解决方案 - 救世主procdump

===============

Procdump可以很方便地帮助我们应付这种情况, 加速动作过程, 抓取正确数据集合. 它会指定的时间内监控目标进程的cpu, 并在那个点抓取一个内存快照(dump).

比如说:

procdump -ma -c 50 -s 3 -n 2 5844(Process Name or PID)
    -ma 生成full dump, 即包括进程的所有内存. 默认的dump格式包括线程和句柄信息.

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

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

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

上面的命令行会监控w3wp.exe的CPU, 在CPU使用率超过百分之五十超过3秒的时候, 生成dump文件, 重复该动作两次.

下面是该命令的一个实例记录:

C:\Users\jaskis\Downloads\procdump> procdump -ma -c 50 -s 3 -n 2 5844
ProcDump v1.1 - Writes process dump files
Copyright (C) 2009 Mark Russinovich
Sysinternals - www.sysinternals.com
Process:            w3wp.exe (5844)
CPU threshold:      50% of system
Duration threshold: 3s
Number of dumps:    2
Hung window check:  Disabled
Exception monitor:  Disabled
Dump file:          C:\Users\jaskis\Downloads\procdump\w3wp.dmp
Time        CPU  Duration
[23:48.35]  59%  1s
[23:48.36] CPU usage below threshold.
[23:48.37]  54%  1s
[23:48.38]  55%  2s
[23:48.39]  61%  3s
Process has hit spike threshold.
Writing dump file C:\Users\jaskis\Downloads\procdump\w3wp_080309_114839PM.dmp... Dump written.
[23:48.44]  61%  1s
[23:48.45]  59%  2s
[23:48.46]  57%  3s
Process has hit spike threshold.
Writing dump file C:\Users\jaskis\Downloads\procdump\w3wp_080309_114846PM.dmp...
Dump written.

下载路径:

ProcDump v3.01

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

译自:

Using ProcDump.exe to monitor w3wp.exe for CPU spikes

http://blogs.iis.net/webtopics/archive/2009/08/07/using-procdump-exe-to-monitor-w3wp-exe-for-cpu-spikes.aspx

介绍一个好用的抓取dump的工具-ProcDump相关推荐

  1. 抓取dump的工具ProcDump使用

    抓取dump的工具ProcDump使用 下载地址: https://docs.microsoft.com/en-us/sysinternals/downloads/procdump 抓取的代码: pr ...

  2. 你需要知道的 N 种抓取 dump 的工具

    原总结注册表debug调试dump转储文件windbgprocdump 前言 今天,向大家介绍几种可以抓取应用程序转储文件的工具及基本使用方法.更详细的用法,请参考每个工具对应的帮助文档.如果你还不清 ...

  3. 一个小型的网页抓取系统的架构设计

    一个小型的网页抓取系统的架构设计 网页抓取服务是互联网中的经常使用服务.在搜索引擎中spider(网页抓取爬虫)是必需的核心服务.搜索引擎的衡量指标"多.快.准.新"四个指标中,多 ...

  4. 如何手工抓取dump文件及分析

    在生产环境下进行故障诊断时,为了不终止正在运行的服务或应用程序,有两种方式可以对正在运行的服务或应用程序的进程进行分析和调试. 首先一种比较直观简洁的方式就是用WinDbg等调试器直接attach到需 ...

  5. python–爬虫–模拟登录全面介绍和简例–以抓取雅卓app为例

    转载请注明出处:python–爬虫–模拟登录全面介绍和简例–以抓取雅卓app为例 我们在前面的文章中已经学习了如果使用python进行数据抓取. 但我们常常会遇到一种场景,就是想要获取的页面内容或者接 ...

  6. 使用Adplus抓取Dump小结

    Adplus抓取Dump有三种方式: 一种是Hang模式 adplus -hang -pn Prs.exe -o c:/dump -quit /2/当进程进程运行时生成dump 二是Crash模式 a ...

  7. XP下软件崩溃,adplus抓取Dump方法

    我公司开发的软件在XP平台下屡次崩溃,最近更新了依然没有解决,故使用windows调试工具进行dump抓取分析原因 工具: dbg_x86_Tools_for_windows 微软说明文档 https ...

  8. IIS崩溃时自动抓取Dump

    原文:IIS崩溃时自动抓取Dump 背景:在客户现场,IIS有时会崩溃,开发环境没法重现这个bug,唯有抓取IIS的崩溃是的Dump文件分析. IIS崩溃时自动抓取Dump,需要满足下面几个条件 1. ...

  9. python3一个简单的网页抓取

    python3一个简单的网页抓取 都是学PYTHON.怎么学都是学,按照基础学也好,按照例子增加印象也好,反正都是学 import urllib import urllib.requestdata={ ...

最新文章

  1. Vue引用其他组件,但组件某些部分不需要时的简单处理
  2. iview日期选择器更改显示日期书_如何动态 设置 iview DatePicker 控件的 禁用日期(option)...
  3. hdu 4503 湫湫系列故事——植树节
  4. 【问链-Eos公开课】第四课 EOS 的钱包创建、导入私钥
  5. Linux服务部署常用命令--top、free、df、scp
  6. 设计模式初探之模板方法(Template Method)
  7. vuetify electron (开发环境及打包)
  8. Andorid之网络通信框架Volley使用和总结
  9. linux由众多微内核组成,什么是linux
  10. 7-2 错误处理概念
  11. 微信小程序使用腾讯地图
  12. swf导出html代码,将SWF轻松导出HTML5
  13. [windows] win10下的SysMain服务
  14. 蓝牙(Android使用)基本原理
  15. HMC5883L校准
  16. php+小程序调用微信支付常见步骤和注意点
  17. 讷于言而敏于行_百度百科
  18. centos 7 发送邮件
  19. EXSI封装网卡驱动
  20. 春节“恐归”,你怕的到底是什么?

热门文章

  1. 单片机向左,嵌入式向右
  2. 修改 Idea 终端 Terminal 为 GitBash 或 Cmder
  3. 将做好的py文件打包成模块,供别人安装调用
  4. ps-axure学习之感受
  5. 在Spring3中,配置DataSource的方法有五种
  6. JAVA的两个FTP包的比较
  7. 查询Sqlserver数据库死锁的一个存储过程
  8. base64编码的作用【转】
  9. nginx 添加自定义头部信息
  10. Java :BufferedWriter类和BufferedReader类的构造方法、主要方法