すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:IISアクセスログの分析

最終更新日:Aug 26, 2024

Log serviceを使用すると、インターネットインフォメーションサービス (IIS) アクセスログを収集および分析できます。 このトピックでは、IISアクセスログを使用してWebサイトへのアクセスを監視および分析する方法について説明します。 ページビュー (PV) 、ユニークビジター (UV) 、リクエスタの場所、エラーリクエスト、受信および送信トラフィックなどのデータを取得できます。

始める前に

IISログが収集されます。 詳細については、「IIS構成モードでログを収集する」をご参照ください。

説明

収集プロセス中、Log Serviceはログの内容に基づいてインデックスを自動的に生成します。 必要に応じてインデックスを変更できます。 詳細については、「インデックスの作成」をご参照ください。

このタスクについて

IISは、webサイトの構築とホストに使用できる安全なwebサーバーです。 IISを使用してWebサイトを構築すると、IISアクセスログを収集して分析できます。

次のIIS W3C拡張ログ形式を使用することを推奨します。

logExtFileFlags="Date, Time, ClientIP, UserName, SiteName, ComputerName, ServerIP, Method, UriStem, UriQuery, HttpStatus, Win32Status, BytesSent, BytesRecv, TimeTaken, ServerPort, UserAgent, Cookie, Referer, ProtocolVersion, Host, HttpSubStatus"

サンプルIISログの例を次に示します。

#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2020-09-08 09:30:26
#Fields: date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken
2009-11-26 06:14:21 W3SVC692644773 125.67.67.* GET /index.html - 80 - 10.10.10.10 Baiduspider+(+http://www.example.com)200 0 64 185173 296 0
  • フィールドの接頭辞

    接頭辞

    説明

    s-

    Indicatesサーバアクション。

    c-

    クライアントのアクションを示します。

    cs-

    クライアントからサーバーへのアクションを示します。

    sc-

    サーバー間アクションを示します。

  • フィールド

    フィールド

    説明

    date

    クライアントがリクエストを送信する日付。

    time

    クライアントがリクエストを送信する時点。

    s-sitename

    クライアントがアクセスしたサイトのインターネットサービス名とインスタンスID。

    s-computername

    ログが生成されるサーバーの名前。

    s-ip

    ログが生成されるサーバーのIPアドレス。

    cs-method

    クライアントが使用するリクエストメソッド (GETやPOSTなど) 。

    cs-uri-stem

    リクエスト内のURI。

    cs-uri-query

    HTTPリクエストの疑問符 (?) に続くクエリ文字列。

    s-port

    サーバーのポート番号。

    cs-username

    クライアントがサーバーにアクセスするために使用する認証済みドメイン名またはユーザー名。

    • 認証されたユーザーは、Domain\Username形式で表示されます。

    • 匿名ユーザーはハイフン(-)で表示されます。

    c-ip

    リクエストを送信するクライアントの実際のIPアドレス。

    cs-version

    HTTP 1.0やHTTP 1.1など、クライアントが使用するプロトコルのバージョン。

    cs(User-Agent)

    クライアントが使用するブラウザ。

    Cookie

    送信または受信されるcookieの内容。 Cookieが送受信されない場合は、ハイフン (-) が表示されます。

    referer

    クライアントが指示されたサイト。

    cs-host

    ホスト情報。

    sc-status

    サーバーから返されたHTTPステータスコード。

    sc-substatus

    The HTTP substatusコードによって返さサーバー。

    sc-win32-status

    The Windowsステータスコードによって返さサーバー。

    sc-bytes

    サーバーによって送信されたバイト数。

    cs-bytes

    The番号のバイト受信します。

    time-taken

    リクエストの処理に必要な時間。 単位:ミリ秒。

手順

  1. Log Serviceコンソールにログインします。

  2. [プロジェクト] セクションで、管理するプロジェクトをクリックします。

  3. [ログストレージ] > [ログストア] タブで、管理するログストアをクリックします。

  4. 検索ボックスにクエリステートメントを入力し、時間範囲を選択します。

    クエリステートメントは、searchステートメント | analyticステートメント形式の検索ステートメントと分析ステートメントで構成されます。 詳細については、「検索構文」と「集計関数」をご参照ください。

    • クライアントIPアドレスの分布に関する統計を収集するには、次のクエリステートメントを実行します。

      *| select ip_to_geo("c-ip") as country, count(1) as c group by ip_to_geo("c-ip") limit 100
    • PVおよびUVの数を計算するには、次のクエリステートメントを実行します。

      *| select approx_distinct("c-ip") as uv ,count(1) as pv , date_format(date_trunc('hour', __time__), '%m-%d %H:%i') as time group by date_format(date_trunc('hour', __time__), '%m-%d %H:%i') order by time limit 1000

      PVおよびUV

    • 返される各HTTPステータスコードの割合を計算するには、次のクエリステートメントを実行します。

      *| select count(1) as pv ,"sc-status" group by "sc-status"

      各HTTPステータスコードの割合

    • インバウンドトラフィックとアウトバウンドトラフィックの統計を収集するには、次のクエリ文を実行します。

      *| select sum("sc-bytes") as net_out, sum("cs-bytes") as net_in ,date_format(date_trunc('hour', time), '%m-%d %H:%i') as time group by date_format(date_trunc('hour', time), '%m-%d %H:%i') order by time limit 10000

      受信および送信トラフィック

    • 各リクエストメソッドの割合を計算するには、次のクエリステートメントを実行します。

      *| select count(1) as pv ,"cs-method" group by "cs-method"

      各リクエストメソッドの割合

    • 各ブラウザータイプの割合を計算するには、次のクエリ文を実行します。

      *| select count(1) as pv, case when "user-agent" like '%Chrome%' then 'Chrome' when "user-agent" like '%Firefox%' then 'Firefox' when "user-agent" like '%Safari%' then 'Safari' else 'unKnown' end as "user-agent" group by case when "user-agent" like '%Chrome%' then 'Chrome' when "user-agent" like '%Firefox%' then 'Firefox' when "user-agent" like '%Safari%' then 'Safari' else 'unKnown' end order by pv desc limit 10

      各ユーザーエージェント (UA) の割合

    • 最も頻繁にアクセスされる上位10ページを計算するには、次のクエリ文を実行します。

      *| select count(1) as pv, split_part("cs-uri-stem",'?',1) as path group by split_part("cs-uri-stem",'?',1) order by pv desc limit 10

      リクエスト数による上位10のURL