概要
この記事では、デバッグ診断ツール v1.2 を使用して、MICROSOFT インターネット インフォメーション サービス (IIS) のプロセスによる高い CPU 使用率のトラブルシューティングを行う方法について説明します。
はじめに
IIS のプロセスによる高い CPU 使用率は、IIS プロセスが一定の時間間隔で使用可能な CPU サイクルの 80% 以上を使用する場合に発生します。 IIS プロセスの例として、Inetinfo.exe、Dllhost.exe、W3wp.exe。 IIS プロセスによる CPU 使用率が高い場合は、次の現象の 1 つ以上が発生します。
-
Web ページが正しく読み込めなくなります。 たとえば、Web ページが空白の場合や、応答しない場合などです。
-
IIS を実行しているサーバーでパフォーマンスが低下します。 たとえば、進行状況インジケーターは、Web ページを表示しようとして非常に遅く移動します。
この記事では、IIS プロセスによる高い CPU 使用率のトラブルシューティングを行うデバッグ診断ツールをインストールして構成する方法について説明します。
詳細情報
IIS プロセスで使用できる CPU サイクルの割合が高い場合は、IIS がクライアント要求を処理するときに、IIS プロセスの完全なメモリ ダンプ ファイルを作成することをお勧めします。 デバッグ診断ツールを使用して、IIS がクライアント要求を処理するときにメモリ ダンプ ファイルをキャプチャおよび分析できます。
手順 1: デバッグ診断ツール v1.2 をダウンロードしてインストールする
デバッグ診断ツールをダウンロードしてインストールするには、次の Microsoft Web サイトにアクセスしてください。
手順 2: パフォーマンス モニターのログ記録を構成する
パフォーマンス モニターのログ記録を構成するには、次の手順に従います。
-
[ スタート] をクリック し、[実行] をクリックし、デバッグ診断ツールのパスを入力して、[OK] をクリック します。
注意 既定では、デバッグ診断ツールは次のフォルダーにあります。C:\Program Files\DebugDiag
-
[ツール] メニューの [オプション] をクリックし、[設定。
-
[パフォーマンス ログ ] タブで 、[パフォーマンス カウンター データ ログの有効化] をクリックし、[OK] を クリックします。
注意 [データ サンプリング間隔 ] ボックスの値は、CPU 使用率の高い問題が発生した時間によって異なります。 データが収集されるにつれて、ログのサイズが大きくなる。 [データ サンプリング間隔] Professional値を構成する方法については、Microsoft サポート センターにお問い合わせください。
手順 3: デバッグ例外のキャッチを無効にする
注意 IIS 6.0 以上でツールを使用するためにデバッグ診断ツールを構成している場合は、「手順 4: ダンプ ファイルを作成する」に進みます。
IIS 5.1 または IIS 5.0 でツールを使用するためにデバッグ診断ツールを構成している場合は、[デバッグ例外キャッチ] を無効にします。 この場合、次の手順を実行します。
-
[ スタート] をクリックし 、[実行] をクリックしInetmgr.exe、[OK] を クリックします。
-
構成するコンピューターを右クリックし、[プロパティ] をクリック します。
-
[マスター プロパティ ] の一覧 で [ WWW サービス] をクリックし、[編集] を クリックします。
-
[ホーム ディレクトリ ] タブで、[ 構成] を クリックします。
-
[プロセス オプション] タブで、[デバッグ例外キャッチを有効にする] チェック ボックスをオフにし、[OK] をクリックします。
手順 4: ダンプ ファイルを作成する
ダンプ ファイルを作成するには、次のいずれかの方法を使用します。
方法 1: ハング ルールを作成する
ハング ルールを作成するには、次の手順に従います。
-
[ スタート] をクリック し、[実行] をクリックし、デバッグ診断ツールのパスを入力して、[OK] をクリック します。
注意 既定では、デバッグ診断ツールは次のフォルダーにあります。C:\Program Files\DebugDiag
-
[ルール] タブで 、[ルールの追加 ] をクリックします。
-
[パフォーマンス] をクリックし、[HTTP 応答時間] をクリックし、[次へ] を クリックします。
-
[ URL の追加] をクリックし、[ETW] または [Ping] オプションを選択し、問題が発生した Web サイトの URL を入力し、適切なタイムアウトと Ping 時間を設定して、[OK] をクリックします。 次に、[ はい] を クリックして URL をテストします。
-
[ OK] をクリックし、[次へ] を クリックします。
-
[ダンプ ターゲットの追加] をクリックします。
-
[ターゲットの 種類] ボックスの 一覧で、対象の種類をクリックし、[OK] を クリックして、[次へ] をクリック します。
-
ルールの名前を入力し、ユーザー ダンプ ファイルの場所のパスを入力して、[次へ] をクリック します。
-
[今 すぐルールをアクティブ化する] をクリックし、[完了] を クリックします。
[ルール ] タブ で、[状態] 列のルールが [アクティブ] であるのに注意してください。
方法 2: IIS ハング ダンプ ファイルを手動で作成する
IIS ハング ダンプ ファイルを手動で作成するには、次の手順に従います。
-
[ スタート] をクリック し、[実行] をクリックし、デバッグ診断ツールのパスを入力して、[OK] をクリック します。
注意 既定では、デバッグ診断ツールは次のフォルダーにあります。C:\Program Files\DebugDiag
-
[ツール] メニューの [ IIS/COM+ ハング ダンプの作成] をクリックします。
方法 3: デバッグ診断ツールでプロセスのユーザー ダンプ ファイルを作成する
プロセスのユーザー ダンプ ファイルを作成するには、次の手順に従います。
-
[ スタート] をクリック し、[実行] をクリックし、デバッグ診断ツールのパスを入力して、[OK] をクリック します。
注意 既定では、デバッグ診断ツールは次のフォルダーにあります。C:\Program Files\DebugDiag
-
[プロセス ] タブ で、トラブルシューティングを行うプロセスを右クリックし、[Create Full Userdump]をクリックします。
手順 5: パフォーマンス モニターのログ記録を無効にする
ユーザー ダンプ ファイル キャプチャ プロセスが完了した約 2 分後に、パフォーマンス モニターのログ記録を無効にします。 この場合、次の手順を実行します。
-
[ スタート] をクリック し、[実行] をクリックし、デバッグ診断ツールのパスを入力して、[OK] をクリック します。
注意 既定では、デバッグ診断ツールは次のフォルダーにあります。C:\Program Files\DebugDiag
-
[ツール] メニューの [オプション] をクリックし、[設定。
-
[パフォーマンス ログ ] タブで、[ パフォーマンス カウンターの データ ログを無効にする] をクリックします。
手順 6: ダンプ ファイルを分析する
ダンプ ファイルを分析するには、次の手順に従います。
-
[ スタート] をクリック し、[実行] をクリックし、デバッグ診断ツールのパスを入力して、[OK] をクリック します。
注意 既定では、デバッグ診断ツールは次のフォルダーにあります。C:\Program Files\DebugDiag
-
[高度な 分析] タブで 、[データ ファイルの 追加] をクリックします。
-
分析するダンプ ファイルを見つけてクリックします。 [開く] をクリックします。
-
[高度な 分析] タブ で、[クラッシュ/ハング アナライザー] をクリックし、[分析の開始] をクリックします。
-
Microsoft Internet Explorer に表示されるレポートを確認します。 このレポートのコピーは、次のフォルダーにも格納されます。
C:\Program Files\DebugDiag\Reports
注意 カスタム ファイルのトラブルシューティングを行う場合は.dll .pdb ファイルを含めます。 カスタム .pdb ファイルを含めるには、[ツール] をクリックし、[オプションと 設定] をクリックし、[フォルダーと検索パス] をクリックし、[デバッグ用のシンボル検索パス] ボックスにパスを入力して、[OK] をクリックします。
参照情報
IIS の使い方の詳細については、次の Microsoft Web サイトを参照してください。
http://www.iis.netIIS のMicrosoft Developer Network (MSDN) Web キャストを表示するには、次の MSDN Web サイトを参照してください。
IIS が応答しない状況をトラブルシューティングする方法 http://go.microsoft.com/fwlink/?LinkId=40968
IIS でメモリ リークを診断する方法 http://go.microsoft.com/fwlink/?LinkId=40969
IIS
が予期せず終了する状況を診断する方法 http://go.microsoft.com/fwlink/?LinkId=40967 デバッグ診断ツールを使用して IIS プロセスの問題をトラブルシューティングする方法の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
919792 デバッグ診断ツールを使用して、IIS での応答を停止したプロセスのトラブルシューティングを行う方法
919790 IIS デバッグ診断ツールを使用して IIS プロセスのメモリ リークをトラブルシューティングする方法
919789 デバッグ診断ツールを使用して、予期せず停止する IIS プロセスのトラブルシューティングを行う方法