Windows:Windows Error Reportを使ってプロセスがクラッシュした際のダンプファイルを取得できるようにする設定方法

Windows7(Windows10は未確認)、Windows Server 2008以降のOSでプロセスがクラッシュした際にクラッシュしたプロセスのダンプファイルを採取することができます。

Windows Error Reportにちょっとしたレジストリ設定を追加するだけです。

Windows XP時代のUser Mode Process Dumper(userdump)と似たような機能を提供してくれます。

以下にWindows Error Reportの追加設定手順を覚書。
スポンサードリンク


Windows Error Reportでクラッシュしたプロセスのダンプを採取するための設定

設定には、Administrator権限でログインする必要があります。

設定手順は以下のとおりです。

  1. 設定したいクライアントもしくは、サーバーにログインします。

  2. [Windows]キー + [R]キーを押して[ファイル名を指定して実行]画面を表示し、[名前]ボックスに"regedit"と入力し[OK]をクリックします。

  3. レジストリエディタが起動するので、以下のキーを開きます。
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting

  4. 画面左の[Windows Error Reporting] キーを右クリックし、 [新規] > [キー]をクリックします。

  5. "新しいキー #1"という名前で新たにキーが作成されるので名前を"LocalDumps"に変更します。

  6. 作成した[LocalDumps]キーを右クリックし、[新規] > [展開可能な文字列]をクリックします。

  7. 値の名前に"DumpFolder"、"値"には、プロセスダンプを保存したいフォルダをフルパスで記載します。(例.c:\temp)
    ※ここで指定したディレクトリ配下にクラッシュした際にプロセスダンプが出力されます

  8. 同じく[LocalDumps]キーを右クリックし、[新規] > [DWORD(32ビット)値]をクリックします。

  9. [値の名前]に"DumpCount"、値にはプロセスダンプの保管回数を指定しますが、とりあえずここでは3(10進数)としておきます。
    ※プロセスダンプ保管回数は状況に合わせて任意に決定してください。

  10. 同じく[LocalDumps]キーを右クリックし、[新規] > [DWORD(32ビット)値]をクリックします。

  11. [値の名前]に"DumpType"、値にはプロセスダンプの種類を指定しますが、ここでは一番情報量の多いフルダンプを指定するので2(10進数)をしてします。

  12. 最終的なレジストリキーの構成は以下のとおりです。
    レジストリキー構成


以上で設定は終了です。

プロセスダンプの保存先(DumpFolder)について

プロセスダンプは、場合によってはかなりのファイルサイズとなるので、なるべく空きがあるドライブを指定したほうが良いです。

指定したフォルダが存在しない場合でも自動的にフォルダが作成されるので特にあらかじめ"DumpFolder"で指定したフォルダを作成しておく必要はありません。

プロセスダンプの保管回数(DumpCount)について

保管できるプロセスダンプの回数については任意です。

プロセスのクラッシュなどの障害発生状況、プロセスダンプの保管先の空き容量などを考慮して決定してください。

プロセスダンプの種類(DumpType)について

プロセスダンプの種類に指定できる値と内容について以下に記載しておきます。

特別な理由がない限り、基本的には最も情報量の多い2(フルダンプ)を指定するべきだと思います。

指定できる値とダンプの種類

0:カスタムダンプ
1:ミニダンプ
2:フルダンプ

Windows Error Report設定後の動作確認方法

クラッシュしたプロセスのダンプを採取できるようにWindows Error Reportを設定後、ちゃんと動くが動作テストをしましょう。

テストには、擬似的にプロセスのクラッシュを再現させることができる"BadApp.exe"というアプリケーションを使用します。
※他に同じようなアプリケーションやクラッシュを再現させることができる再現手順などあればどの方法を使っても構いません。

BadApp.exeを使用したクラッシュダンプ取得動作確認

以下に簡単にBadApp.exeを使用したクラッシュダンプ取得の動作確認手順を記載します。

  1. BadApp.exeをインターネットからダウンロードします。

  2. BadApp.exeを起動します。

  3. [Bad Application]画面が表示されるので[Crash process]ボタンをクリックします。
    [Crash process]ボタンをクリック

  4. 「BadApp.exe は動作を停止しました」と表示されるので[キャンセル]ボタンをクリックします。
    [キャンセル]ボタンをクリック

  5. 「問題が発生したため...」の画面が出たら[プログラムの終了]ボタンをクリックします。
    [プログラムの終了]ボタンをクリック

  6. レジストリの"DumpFolder"に指定したフォルダを開いてクラッシュダンプ(拡張子 dmp)が作成されているか確認します。
    クラッシュダンプが作成されているか確認


以上で確認手順は終了です。

特定のアプリケーションが頻繁にクラッシュする際など、クラッシュダンプが取得できるようにしておくとクラッシュダンプを解析してクラッシュの原因を特定できる場合がありますので有効に活用しましょう。
スポンサードリンク

  

関連記事