【 ここから本文 】
Windows Server 2008
ソーシャルブックマークに登録 :
印刷用ページの表示
【解説】
システム管理者のための「IIS 7.0」概論
モジュール化を実現した新世代のWebサーバ
(2008年04月04日)
サーバ管理者/Web開発者
両者にウレシイ診断機能
Webアプリケーションにエラーが発生して停止した場合、その原因を調査するには、アクセスログやエラーログを解析したり、エラー状況を再現したりといった手順が必要になる。開発中のアプリケーションであれば、デバッグ用のコードを埋め込んでおいてトレースするのが一般的だ。
IIS 7.0では、Webアプリケーションのエラー原因を追跡するための診断機能が用意されており、管理者や開発者を強力に支援してくれる。
ローカルとリモートで異なるエラーページ
| 画面12:ローカルからアクセスした場合に返されるエラーページ。エラーの原因に役立つ詳細な情報が含まれる。この画面では、要求フィルタでアクセスを拒否しているフォルダを参照しようとしたため「404エラー」となったことがわかる |
Webアプリケーションのリクエストが失敗する場合、Webブラウザ側にはHTTPエラーコード(400番台や500番台)が返されるくらいだ。Webブラウザ上に詳細なエラー情報が表示されるのは、セキュリティ上、好ましくないので、通常はHTTPエラーコードだけで十分だが、管理者や開発者にとってはあまりにも情報が少ない。
IIS 7.0では、エラーページが診断機能の1つになっている。しかし、前述したとおり、一般の利用者のWebブラウザに詳細なエラー情報を返すのはセキュリティ上問題がある。そこでIIS 7.0では、ローカルとリモートで、それぞれ異なるエラーページを表示するようになっている。
リモートからアクセスした場合はデフォルトの標準的なエラーページが表示されるだけだが、ローカルからアクセスした場合は、エラーの発生時刻やリクエストURL、実行中のモジュール、エラーコード、可能性のある原因、対処方法を含む詳細な情報を得られる(画面12)。
| 画面13:失敗した要求トレースは、HTTPエラーをトリガにしてログを出力する。事前に、対象のエラーを条件にルールを作成しておくだけでよい |
失敗した要求トレース
「失敗した要求トレース」は、HTTPエラーコードや所要時間、エラーのレベルを条件にルールを定義しておくことで、エラー発生時に詳細情報をXML形式のログに出力してくれる機能である(画面13)。
エラー発生がトリガとなってログが蓄積されるので、エラー状況を再現するという手順を踏まなくても、エラー発生時の実際の情報を簡単に入手することができる。XML形式ではあるが、スタイルシート(freb.xsl)により整形されるため、レポート形式で参照することが可能だ(画面14)。
| 画面14:失敗した要求トレースで出力されたログの例。XMLファイルであるが、XSLスタイルシート(freb.xsl)で整形されるので、参照しやすい |
Windowsのイベントトレース機能との連携
| 画面15:IIS 7.0は、Event Tracing for Windows(ETW)用のイベントトレースプロバイダを提供する。「TraceModule」を有効化することにより、イベントトレースプロバイダはETLファイルにトレースログを出力するようになる |
Web開発者は、Windowsが備える汎用的なトレースメカニズム「Event Tracing for Windows(ETW)」を利用したトレース機能を利用することも可能だ。ユーザーモードのアプリケーションやカーネルモードのドライバで発生するイベントのログを記録する、カーネルレベルの効率的なトレース環境を提供する。
IIS 7.0は、ETWに対してIIS用のイベントトレースプロバイダを提供する(画面15)。このイベントトレースプロバイダが機能するには、「TracingModule」が必要だ。デフォルトでこのモジュールはインストールされるが、有効化されていないので注意しよう。
実行時ステータスと制御データの取得
| 画面16:AppCmd.exeやWMIスクリプトを利用すれば、IISマネージャよりもすばやく実行中の状況を確認できる。WMIでは、WebAdministrationオブジェクトに接続し、WorkerProcessクラスを参照すればよい |
「Run-time Status and Control(RSCA)」は、アプリケーションやワーカープロセス、サイトにおいて、実行中のリクエストの状態に関する情報をリアルタイムで提供するAPIになる。このAPIが出力する情報は、IISマネージャの「ワーカープロセス」でリアルタイムに監視できるほか、AppCmd.exe(APPCMD LIST WP)やWMIスクリプトを使用して取得することも可能だ(画面16)。
これにより、サーバ管理者はどのような管理環境(GUI、コマンドライン、リモートなど)を使用している場合でも、Webサーバのリアルタイムな状況をすばやく確認できる。例えば、CPUを100%消費しているリクエストの情報や、実行時間が長いリクエストの情報をすばやく取得したい場合などに利用する。
【解説】Windows Server 2008「NAP」大解剖


クライアント検疫機能「Network Access Protection」を検証する
サーバの仮想化はどう進化するのか!?
【Windows Server 2008 実践評価ガイド】Windows Server 2008が革新するITインフラストラクチャ

SOHOからデータセンターまで、すべてのシステムを支える!
Windows Server 2008 アップグレードに足る「9つの理由」


製品出荷の最終段階に入った次期サーバOSのベータ3を徹底検証
[国内]【Videoニュース】マイクロソフト、Windows Server 2008の新機能を国内イベントで披露

「システム管理者の負担を劇的に軽減する機能が満載」とアピール
[米国]マイクロソフト、Windows Server 2008のCTP版をリリース
目玉機能の「Server Core」に「IIS 7.0」を追加



























