Internet Information Services (IIS) は、Microsoftが開発したWebサーバーであり、Windows Serverサービスの一部として出荷されます。
IT運用チームとWebマスターは、WebアプリケーションのトラブルシューティングにIISログを使用します。ただし、IISログは必ずしも分かりやすいわけではありません。これは、多くの部分がある情報量の多いサイトに特に当てはまります。このWebサーバーは、毎日多数の詳細ログを生成できます。これらのログの情報を理解するには、データを理解する必要があります。有意義なインサイトを得るには、適切なツールを使用する必要があります。
この記事では、IISログを最大限に活用する方法を説明します。さまざまなログ形式、注目すべき重要なデータフィールド、および一元化されたロギングソリューションツールがIISログ分析にどのように役立つかについて説明します。
詳細を見てみましょう。
IISログとは
IISは、サービスを提供するWebサイトごとにログファイルを作成します。IISでホストされているWebサイトのログファイルの場所は、Webサイトの「ロギング」セクションで設定できます。IISをWindowsサーバーでサービスとして実行する場合、そのログファイルのデフォルトの場所は%SystemDrive%inetpublogsLogFilesです。%SystemDrive%は、通常、C:です。

各WebサイトにはサイトIDがあります。特定のサイトのログファイルサブフォルダーは、メインのLogFilesフォルダーの下にあり、W3SVCのような名前が付けられています。Windows Serverのイベントビューアーを使用して、IISログを表示することもできます。
Azureクラウドの場合、IISログは自動的に有効になり、Azureクラウドサービスに保存されますが、Azure App Serviceで設定する必要があります。どちらの場合も、ログファイルのパスは標準のWindows Serverパスとは異なります。
IISログは、ユーザーがWebサイトやアプリケーションとどのように対話するかに関する貴重なデータを提供します。IISログの有用なデータ要素には、次のようなものがあります。
- ソースIPアドレス
- アクセスされたWebページ
- URIクエリ
- HTTPメソッド
- 返されたHTTPステータスコード
さまざまなITチームがさまざまな目的でIISログを使用します。アプリケーション開発者は、IISログを使用して、Webアプリケーションのバグや重大なエラーに対処できます。SecOpsチームは、ログを使用して、通常とは異なる振る舞いや、DDoS攻撃などの悪意のある可能性のあるアクティビティを調査する場合があります。また、IT運用チームは、ログを使用してHTTP応答エラーや対応時間の遅延をトラブルシューティングできます。
IISログの形式
IISには柔軟なログ記録オプションが用意されており、さまざまなログ形式から選択できます。IISログ形式では、ログイベントフィールド、フィールド区切り文字、および時刻形式を指定できます。ログファイルの場所と同様に、IISでホストされているWebサイトのログファイルの形式は、Webサイトの「ロギング」設定で設定できます。選択した形式に関係なく、すべてのログはASCIIテキストで書き込まれます。次の表は、IISログ形式の概要を示しています。
| タイプ | デフォルト | カスタマイズ可能なフィールド | 区切り文字 | 時刻形式 | FTPに対応 |
|---|---|---|---|---|---|
| W3C | 有 | 有 | スペース | UTC | 有 |
| IIS | いいえ | いいえ | コンマ | ローカル時間 | 有 |
| NCSA | いいえ | いいえ | スペース | ローカル時間 | いいえ |
W3C形式
W3CはデフォルトのIISログ形式であり、含めるフィールドを選択できます。これは、ログサイズの縮小にも役立ちます。時刻はUTC形式で記録されます。次のスニペットは、W3C形式のIISログファイルを示しています。
#Software: Internet Information Services 6.0#Version: 1.0
#Date: 2001-05-02 17:42:15
#Fields: time c-ip cs-method cs-uri-stem sc-status cs-version
17:42:15 172.16.255.255 GET /default.htm 200 HTTP/1.0
IIS形式
IIS形式は、含めるフィールドをカスタマイズできないため、柔軟性が低くなります。ただし、ファイル形式はCSVであるため、解析が容易です。時刻はサーバーのローカル時間です。次のスニペットは、IIS形式の2つのログイベントを示しています。
192.168.114.201, -, 03/20/01, 7:55:20, W3SVC2, SALES1, 172.21.13.45, 4502, 163, 3223, 200, 0, GET, /DeptLogo.gif, -,172.16.255.255, anonymous, 03/20/01, 23:58:11, MSFTPSVC, SALES1, 172.16.255.255, 60, 275, 0, 0, 0, PASS, /Intro.htm, -,
NCSA共通ログファイル形式
NCSA形式も固定形式であり、イベントフィールドをカスタマイズすることはできません。IIS形式やW3C形式よりもシンプルで、ユーザー名、時間、リクエストの種類、HTTPステータスコードなどの基本的な情報のみが含まれます。時刻はサーバーのローカル時間として記録されます。次のスニペットは、例を示しています。
172.21.13.45 - Microsoftfred [08/Apr/2001:17:39:04 -0800] "GET /scripts/iisadmin/ism.dll?http/serv HTTP/1.0" 200 3401
IISログの内容
IISログファイルのエントリには、ログファイルの形式に基づいてさまざまなフィールドを含めることができます。次の表に、これらのフィールドの一部を示します。
| フィールド名 | 説明 | ユースケース例 |
|---|---|---|
| 日付と時刻(date and time) | クライアントリクエストの日時 | クライアントリクエストの日付と時刻が表示されます。これを他のログ(アプリケーションログなど)と関連付けて、問題のトラブルシューティング時に詳細を確認することができます。 |
| クライアントIPアドレス(c-ip) | WebサイトクライアントのIPアドレス | これを使用して、位置情報や特定のサーバーを追跡できます。また、疑わしいソースを特定することもできます。 |
| ユーザー名(cs-username) | リクエストを行っているユーザー(匿名ユーザーはハイフン「-」で表されます) | 特にイントラネットアプリケーションで、特定のユーザーに関するアプリケーション関連の問題を特定するのに役立ちます。 |
| メソッド(cs-method) | HTTPリクエスト(GET、POST、PUTなど) | ユーザーが行ったアクションを追跡します。 |
| 送受信されたバイト数(sc-bytes, cs-bytes) | サーバーが送受信したバイト数 | 通常よりも多くのバイトが送信された場合に、帯域幅のニーズを評価したり、疑わしい振る舞いを追跡したりするために使用されます。 |
| 所要時間(time-taken) | リクエストを完了するまでのミリ秒数 | Webサイトの遅延の問題のトラブルシューティングに役立ちます。 |
| ユーザーエージェント(cs(User-Agent)) | クライアントが使用するブラウザの種類 | 互換性の問題をトラブルシューティングする際に、ブラウザの種類を把握するために使用できます。 |
| プロトコルステータス(sc-status) | HTTPリクエストステータスコード | Webサイトのエラーのトラブルシューティングに役立ちます。 |
| 参照元(cs(Referrer)) | ユーザーをこのサイトに誘導したサイト | ユーザーの操作に応じてサイトのコンテンツをカスタマイズするのに役立ちます。 |
IISログにログ管理ソリューションを使用する理由
ビジー状態のIISサーバーは、それぞれに複数のログファイルを持つ数十のWebサイトをホストできます。各サイトからログファイルを手動でダウンロードし、読み取り、問題を特定することは現実的ではなく、実現可能でもないため、ログ管理ソリューションを使用するのが適切です。しかし、ログ管理ソリューションを使用する理由はそれだけではありません。
一元化
ログ管理ソリューションは、IISログファイルを自動的にキャプチャ、解析、インデックス作成、圧縮、および保存できます。これにより、Webサーバーのディスク領域を節約でき、各サーバーに手動でログインしてログを収集する手間を省くことができます。
コンテキスト
ログ管理システムは、データにコンテキストを追加することでデータを充実させます。例えば、ソースIPアドレスからログイベントに位置情報データを追加できます。その他のコンテキスト情報も、問題を迅速に特定するのに役立ちます。
検索と分析
ログ管理ソリューションを使用すると、ログイベントの検索、フィルタリング、順序付け、グループ化、分析が簡単になります。例えば、HTTPステータスコード4xxと5xxのみに関心があるとします。一部のツールでは、SQLなどの一般的なクエリ言語を使用します。その他に独自の言語を使用するツールもあります。ほとんどの場合、頻繁に使用する検索クエリを保存できます。
相関付け
すべてのログをまとめると、さまざまなシステムのイベントを関連付けることができます。例えば、IISログをネットワークログと関連付けて、ネットワーク遅延がWebサイトのパフォーマンスの問題を引き起こしているかどうかを調査できます。また、相関するIISと認証ログにAIを適用して、不審なユーザーの振る舞いを特定することもできます。
可視化
ほとんどのログ管理ソリューションでは、イベント、チャート、ウィジェット、ダッシュボードからトレンドを作成できるため、トラブルシューティングが簡単になります。例えば、グラフからユーザーリクエストの急増をすばやく特定し、それを位置ファイルマップと関連付けてトラフィックソースを特定できます。
アラート
ログ管理ソリューションでは、ログファイルで検知された異常に対してアラートを設定することもできます。例えば、1分以内に1,000件を超えるGETリクエストが発生した場合、DDoS攻撃の可能性について警告するアラートをトリガーできます。
次世代SIEMおよびログ管理のための世界をリードするAIネイティブプラットフォームをお試しください
SIEMとログ管理のための最高水準のAIネイティブプラットフォーム、CrowdStrike Falcon®プラットフォームでサイバーセキュリティを強化しましょう。ペタバイト規模でのセキュリティログを体験してみてください。クラウドネイティブ型または自己ホスト型での展開が可能です。ボトルネックの生じない、強力でインデックスフリーのアーキテクチャを利用してデータをロギングすれば、1日あたり1PB以上のデータを取り込んで脅威ハンティングに役立てることができます。リアルタイムの検索機能により攻撃者をしのぐスピードで対策を実施できます。複雑なクエリを実行しても、そのレイテンシーは1秒未満です。360度の可視性によりデータを統合してサイロ化を解消し、セキュリティ、IT、DevOpsチームがシームレスに脅威のハンティング、パフォーマンスのモニタリング、コンプライアンスの確保を行うことができます。30億件ものイベントにわたる作業でも1秒未満で実施できます。