IIS 6.0 上で動作する Web アプリケーションのダンプ ファイル取得方法

はじめに
この資料では、Microsoft Internet Information Services 6.0 (以下 IIS 6.0) ワーカー プロセス分離モード上で動作する Web アプリケーションのダンプ ファイルを取得する一般的な方法を説明します。現象や環境によっては、この資料で説明している一般的な方法では適切なダンプ ファイルを採取できない場合があります。その場合は、以下のアドバイザリー サービスをご利用いただくことで、状況にあったダンプ ファイルの採取方法からマイクロソフト技術サポートのエンジニアがご支援いたします。


: 発生している問題によっては、ダンプ ファイルを使った Web アプリケーションのデバッグが有効ではない場合があります。また、運用環境によりダンプ ファイルの取得方法が異なります。ダンプ ファイルが有効かどうか、ダンプ ファイルの取得方法が適切かどうかについては、以下の「サポート技術情報」 (Microsoft Knowledge Base) を確認してください。
929117 IIS 上で動作する Web アプリケーションの応答が停止する場合やエラーになる場合のトラブルシューティング
詳細
ここでは、Debugging Tools for Windows に含まれる ADPlus.vbs (もしくは、ADPlus_old.vbs) を使用してダンプ ファイルを取得する手順を説明します。あらかじめ、問題が発生する可能性のあるコンピュータに Debugging Tools for Windows をインストールしておきます。インストールについては、以下のサポート技術情報を確認してください。
929117 IIS 上で動作する Web アプリケーションの応答が停止する場合やエラーになる場合のトラブルシューティング


Web アプリケーションの応答が停止する、または、正常時に比べて遅延する問題が発生した場合のダンプ ファイルの取得手順 (ハング モード)

  1. 以下の手順に従って、アプリケーション プールの設定を変更します。

    : 以下の設定は必須ではありませんが、ここに示すアプリケーション プールの設定を有効にしていると、ダンプファイルの取得前に問題が発生しているワーカー プロセスがシャットダウンしてしまい、適切なタイミングでダンプ ファイルが取得できないことがあります。また、設定を変更するとそのタイミングでリサイクルが発生しますので、ご注意ください。
    1. インターネット サービス マネージャで問題が発生するアプリケーション プールのプロパティを開きます。
    2. [パフォーマンス] タブで以下のチェック ボックスを無効にします。

      [CPU 管理を有効にする]
    3. [状態] タブで以下のチェック ボックスを無効にします。

      [Ping を有効にする]
    4. [OK] をクリックして、アプリケーション プールのプロパティを閉じます。
  2. 問題が発生したら Web サーバーに管理者権限でログオンし、コマンド プロンプトを起動します。
  3. Debugging Tools for Windows インストール ディレクトリに移動します。
  4. 次のコマンドを実行します。この操作により cdb.exe が起動し、ダンプ ファイルを作成します。

    cscript.exe adplus.vbs -quiet -hang -pn w3wp.exe

    ダンプ ファイルは、Debugging Tools for Windows のインストール フォルダ内の以下のフォルダに作成されます。拡張子は .dmp です。

    Hang_Mode__Date_MM-DD-YYYY__Time_HH-MM-SSSS
  5. cdb.exe が終了したら、1 分程度時間をあけて、再度、手順 4 を実行します。この操作を 3 回繰り返し、合計 3 つのダンプ ファイルを取得します。
w3wp.exe の CPU 使用率が高い状況が続いている場合は、ハング モードのダンプ ファイルと併せて、ダンプファイルを採取した時間帯にパフォーマンス モニタで以下のカウンタのログを採取します。

サンプル間隔を 5 秒にし、現象発生前後のログを採取します。ただし、サンプル間隔はシステムの負荷状況に応じて、調整してください。
パフォーマンス オブジェクト : Process
カウンタ : % Processor Time
カウンタ : ID Process
インスタンス : w3wp

パフォーマンス オブジェクト : Thread
カウンタ : ID Thread
カウンタ : ID Process
カウンタ : % Processor Time
インスタンス : すべての w3wp

エラーが発生する場合のダンプ ファイルの取得手順 (クラッシュ モード)

  1. 以下の手順に従って、リサイクルの設定を無効にします。

    : 以下の設定は必須ではありませんが、ここに示すアプリケーション プールの設定を有効にしていると、ダンプファイルの取得前に問題が発生しているワーカー プロセスがシャットダウンしてしまい、適切なタイミングでダンプ ファイルが取得できないことがあります。また、設定を変更するとそのタイミングでリサイクルが発生しますので、ご注意ください。
    1. インターネット サービス マネージャで問題が発生するアプリケーション プールのプロパティを開きます。
    2. [リサイクル] タブで以下のチェック ボックスを無効にします。

      [ワーカー プロセスのリサイクル (分ごと)]
      [ワーカー プロセスのリサイクル (要求数)]
      [ワーカー プロセスのリサイクルを以下の時間に行う]
      メモリのリサイクル - [最大仮想メモリ]
      メモリのリサイクル - [最大使用メモリ]
    3. [パフォーマンス] タブで以下のチェック ボックスを無効にします。

      [アイドルなワーカー プロセスの解放までの待ち時間]
      [CPU 管理を有効にする]
    4. [状態] タブ以下のチェック ボックスを無効にします。

      [Ping を有効にする]
    5. [OK] をクリックして、アプリケーション プールのプロパティを閉じます。
  2. アプリケーションに HTTP リクエストを行います。
  3. Debugging Tools for Windows インストール ディレクトリに移動します。
  4. 次のコマンドを実行し、cdb.exe を起動します。

    cscript.exe adplus.vbs -quiet -crash -pn w3wp.exe -CTCF
  5. コンピュータをロックし、現象が発生するまで待機します。

    : 待機中にコンピュータからログオフしないでください。コンピュータをログオフしたり、IIS やコンピュータを再起動した場合は、手順 2 から 4 を再度実行しなおしてください。
  6. 問題が発生すると、自動的にダンプ ファイルが作成されます。ファイルは Debugging Tools for Windows インストール フォルダ内の以下のフォルダに作成されます。拡張子は .dmp です。

    Crash_Mode__Date_MM-DD-YYYY__Time_HH-MM-SSSS
エラーやプロセスが異常終了する問題が発生して、ダンプ ファイルが生成される前にアプリケーションの応答が停止する現象 (ハングアップ) が発生した場合は、cdb.exe 上で Ctrl + C キーを押すと手動でダンプ ファイルが作成できます。

なお、クラッシュ モードの場合、該当プロセスが正常終了した場合や、異なるエラーが発生した場合でも、ダンプファイルの生成が行われることがあります。
関連情報
関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
929117 IIS 上で動作する Web アプリケーションの応答が停止する場合やエラーになる場合のトラブルシューティング
プロパティ

文書番号:929119 - 最終更新日: 09/30/2016 09:13:00 - リビジョン: 5.0

Microsoft Internet Information Services 6.0

  • kbharmony kbexpertiseinter kbhowto KB929119
フィードバック