Log Parserを利用してIISのログからページごとのPVを取得する - Windows Server
Log Parserを利用してIISのログからページごとのPVを取得するクエリを紹介します。
概要
Log Parserを利用して、IISのログから、ページごとのPVを抽出する手順を紹介します。
事前準備
Log Parserをインストールします。インストール手順は
こちらの記事を参照して下さい。
クエリ
以下のクエリファイルを用意します。
Select
cs-uri-stem as [Request URI],
count(cs-uri-stem) as [PV]
From
(IISログファイルのパス)
Group by cs-uri-stem
Order by count(cs-uri-stem) desc
Select
cs-uri-stem as [Request URI],
count(cs-uri-stem) as [PV]
From
C:\inetpub\logs\LogFiles\W3SVC1\u_ex210906.log
Group by cs-uri-stem
Order by count(cs-uri-stem) desc
Select
cs-uri-stem as [Request URI],
count(cs-uri-stem) as [PV]
From
C:\inetpub\logs\LogFiles\*.log
Group by cs-uri-stem
Order by count(cs-uri-stem) desc
クエリ:特定の日のページごとのPVを取得する場合
特定の日のPVを取得する場合は
where
で条件指定します。
以下のクエリファイルを用意します。
Select
cs-uri-stem as [Request URI],
count(cs-uri-stem) as [PV]
From
(IISログファイルのパス)
where date="(取得する日付)'
Group by cs-uri-stem
Order by count(cs-uri-stem) desc
Select
cs-uri-stem as [Request URI],
count(cs-uri-stem) as [PV]
From
C:\inetpub\logs\LogFiles\*.log
where date='2020-10-01'
Group by cs-uri-stem
Order by count(cs-uri-stem) desc
ワイルドカードを利用すると検索するログサイズが膨大になるため、下記のクエリで検索するファイル数を絞る方法もあります。
Select
cs-uri-stem as [Request URI],
count(cs-uri-stem) as [PV]
From
C:\inetpub\logs\LogFiles\W3SVC2\u_ex200929.log,
C:\inetpub\logs\LogFiles\W3SVC2\u_ex200930.log,
C:\inetpub\logs\LogFiles\W3SVC2\u_ex201001.log,
C:\inetpub\logs\LogFiles\W3SVC2\u_ex201002.log
where date='2020-10-01'
Group by cs-uri-stem
Order by count(cs-uri-stem) desc
実行コマンド
コマンドプロンプト、またはPowerShellで次のコマンドを実行します。
.\LogParser.exe -i:IISW3C file:(クエリファイルのパス) -o:DataGrid -q:off
.\LogParser.exe -i:IISW3C file:query.sql -o:DataGrid -q:off
実行結果
ログを集計してPVが表示されます。
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。